Authentication for Databricks tools and APIs

When a tool makes an automation or API request, it includes credentials that authenticate an identity with Databricks. This article describes the credentials that Databricks needs to authenticate and authorize requests.

Note

Basic authentication using a Databricks username and password reached end of life on July 10, 2024. See End of life for Databricks-managed passwords.

Databricks authentication types

Databricks provides several ways to authenticate Databricks users and service principals. Select the authentication method that works best for your use case. Databricks tools and SDKs work with one or more supported Databricks authentication types. For details, see the tool or SDK documentation in Developer tools and guidance.

Method

Description

Use case

OAuth for service principals (OAuth M2M)

Short-lived OAuth tokens for service principals.

Unattended authentication scenarios, such as fully automated and CI/CD workflows.

OAuth for users (OAuth U2M)

Short-lived OAuth tokens for users.

Attended authentication scenario, where you use your web browser to authenticate with Databricks in real time, when prompted.

Personal access tokens (PAT)

Short-lived or long-lived tokens for users or service principals.

Scenarios where your target tool does not support OAuth.

Databricks client unified authentication

Databricks client unified authentication centralizes setting up and automating authentication to Databricks. It enables you to configure Databricks authentication once and then use that configuration across multiple Databricks tools and SDKs. Expired Databricks OAuth access tokens can be automatically refreshed by Databricks tools and SDKs that use Databricks client unified authentication. See Databricks client unified authentication.

Databricks configuration profiles

A Databricks configuration profile contains settings and other information that Databricks needs to authenticate. Databricks configuration profiles are stored in Databricks configuration profiles files for your tools, SDKs, scripts, and apps to use. For more information, see Databricks configuration profiles.