Authentication using Azure Databricks personal access tokens
To authenticate to and access Databricks REST APIs, you can use Azure Databricks personal access tokens or Azure Active Directory (Azure AD) tokens.
This article discusses how to use Azure Databricks personal access tokens. For Azure AD tokens, see Authenticate using Azure Active Directory tokens.
Tokens take the place of passwords in an authentication flow, and like passwords, they should always be treated with care. To protect tokens, Databricks recommends that you store tokens in:
Token-based authentication is enabled by default for all Azure Databricks accounts launched after January 2018. If it is disabled, your administrator must enable it before you can perform the tasks described in this article. See Manage personal access tokens.
This section describes how to generate a personal access token in the Azure Databricks UI. You can also generate and revoke tokens using the Token API.
The number of personal access tokens per user is limited to 600 per workspace.
Click the user profile icon in the upper right corner of your Azure Databricks workspace.
Click User Settings.
Go to the Access Tokens tab.
Click the Generate New Token button.
Optionally enter a description (comment) and expiration period.
Click the Generate button.
Copy the generated token and store in a secure location.
Revoke a personal access token
This section describes how to revoke personal access tokens using the Azure Databricks UI. You can also generate and revoke access tokens using the Token API.
- Click the user profile icon in the upper right corner of your Azure Databricks workspace.
- Click User Settings.
- Go to the Access Tokens tab.
- Click x for the token you want to revoke.
- On the Revoke Token dialog, click the Revoke Token button.
You can store a personal access token in
.netrc and use in
curl or pass it to the
Authorization: Bearer header.
Store token in
.netrc file and use in
Create a .netrc file with
machine <databricks-instance> login token password <personal-access-token>
<databricks-instance>is the workspace URL of your Azure Databricks deployment.
tokenis the literal string
<personal-access-token>is the value of your personal access token.
To invoke the
.netrc file, use
-n in your
curl -n -X GET https://<databricks-instance>/api/2.0/clusters/list
You can include the token in the header using
Bearer authentication. You can use this approach with
curl or any client that you build. For the latter, see Upload a big file into DBFS.
curl -X GET -H 'Authorization: Bearer <personal-access-token>' https://<databricks-instance>/api/2.0/clusters/list