Azure Databricks 自動化的驗證 - 概觀

在 Azure Databricks 中, 驗證 是指驗證 Azure Databricks 身分識別(例如 使用者、服務主體或群組),或 Azure 受控識別。 Azure Databricks 會使用 認證 (例如存取令牌)來驗證身分識別。

在 Azure Databricks 驗證呼叫端的身分識別之後,Azure Databricks 接著會使用稱為 授權 的程式來判斷已驗證的身分識別是否有足夠的訪問許可權,以在指定位置的資源上執行指定的動作。 本文僅包含有關驗證的詳細數據。 不包含授權或訪問許可權的詳細數據;請參閱 驗證和訪問控制

當工具提出自動化或 API 要求時,它包含向 Azure Databricks 驗證身分識別的認證。 本文說明建立、儲存及傳遞 Azure Databricks 驗證和授權要求所需的認證和相關信息的一般方式。 若要瞭解您的工具、SDK、腳本和應用程式支援哪些認證類型、相關信息和儲存機制,請參閱 Azure Databricks 工具或 SDK 或提供者的檔案支援的驗證類型。

Azure Databricks 驗證的常見工作

使用下列指示來完成 Azure Databricks 驗證的一般工作。

若要完成這項工作... 依照本文中的指示操作
建立可在 Azure Databricks 帳戶層級進行驗證的 Azure Databricks 使用者。 管理帳戶中的使用者
建立 Azure Databricks 使用者,您可以用來向特定的 Azure Databricks 工作區進行驗證。 管理工作區中的使用者
為 Azure Databricks 使用者建立 Azure Databricks 個人存取令牌。 (此 Azure Databricks 個人存取令牌只能用於驗證其相關聯的 Azure Databricks 工作區。 適用於工作區使用者的 Azure Databricks 個人存取令牌
建立 Azure Databricks 受控服務主體,然後將該 Azure Databricks 受控服務主體新增至 Azure Databricks 帳戶、特定的 Azure Databricks 工作區,或兩者。 接著,您可以使用此服務主體在 Azure Databricks 帳戶層級、使用特定的 Azure Databricks 工作區或兩者進行驗證。 管理服務主體
建立 Azure Databricks 組態配置檔。 Azure Databricks 組態配置檔
建立 Azure Databricks 群組,並將 Azure Databricks 使用者和 Azure 服務主體新增至該群組,以取得更健全的授權。 使用帳戶主控台管理帳戶群組、 使用工作區系統管理員設定頁面管理帳戶群組

支援的 Azure Databricks 驗證類型

Azure Databricks 提供數種方式來驗證 Azure Databricks 使用者、服務主體和 Azure 受控識別,如下所示:

驗證類型 詳細資料
Azure 受控識別驗證 * Azure 受控識別驗證會針對 Azure 資源使用受控識別進行驗證。 請參閱什麼是 Azure 資源受控識別?
* Azure 受控識別會使用 Microsoft Entra ID 令牌進行驗證認證。 這些令牌是在 Microsoft 系統內部管理。 您無法存取這些權杖。
* 必須從支援 Azure 受控識別的資源起始 Azure 受控識別驗證,例如 Azure 虛擬機(Azure VM)。
* 如需其他技術詳細數據,請參閱 Azure 受控識別驗證
OAuth 計算機對電腦 (M2M) 驗證 * OAuth M2M 驗證會使用服務主體進行驗證。 它可以與 Azure Databricks 受控服務主體或 Microsoft Entra ID 受控服務主體搭配使用。
* OAuth M2M 驗證使用短期(一小時)Azure Databricks OAuth 存取令牌進行驗證認證。
* 已過期的 Azure Databricks OAuth 存取令牌可以藉由參與 Azure Databricks 工具和 SDK 來自動重新整理。 請參閱 Azure Databricks 工具或 SDKDatabricks 用戶端整合驗證支援的驗證類型。
* Databricks 建議您針對 自動 驗證案例使用 OAuth M2M 驗證。 這些案例包括完全自動化和 CI/CD 工作流程,您無法使用網頁瀏覽器即時向 Azure Databricks 進行驗證。
* 如果目標 Azure Databricks 工具或 SDK 支援 Azure Databricks,而不是 OAuth M2M 驗證,則 Databricks 建議您使用 Azure 受控識別驗證。 這是因為 Azure 受控識別驗證不會公開認證。
* Databricks 建議您使用 Microsoft Entra ID 服務主體驗證,而不是 OAuth M2M 驗證,以防您必須使用 Microsoft Entra ID 令牌進行驗證認證。 例如,您可能需要同時向 Azure Databricks 和其他 Azure 資源進行驗證,這需要 Microsoft Entra ID 令牌。
* 如需其他技術詳細數據,請參閱 OAuth 計算機對計算機 (M2M) 驗證
OAuth 使用者對電腦 (U2M) 驗證 * OAuth U2M 驗證會使用 Azure Databricks 用戶進行驗證。
* OAuth U2M 驗證使用短期(一小時)Azure Databricks OAuth 存取令牌進行驗證認證。
* 參與的 Azure Databricks 工具和 SDK 可以自動重新整理過期的 OAuth 存取令牌。 請參閱 Azure Databricks 工具或 SDKDatabricks 用戶端整合驗證支援的驗證類型。
* OAuth U2M 驗證適用於 參與的 驗證案例。 這些案例包括手動和快速的開發工作流程,您可以在其中使用網頁瀏覽器在出現提示時即時向 Azure Databricks 進行驗證。
* 如果目標 Azure Databricks 工具或 SDK 支援 Azure Databricks,而不是 OAuth U2M 驗證,則 Databricks 建議您使用 Azure 受控識別驗證。 這是因為 Azure 受控識別驗證不會公開認證。
* 如需其他技術詳細數據,請參閱 OAuth 使用者對計算機 (U2M) 驗證
Microsoft Entra ID 服務主體驗證 * Microsoft Entra ID 服務主體驗證會使用 Microsoft Entra ID 服務主體進行驗證。 它無法與 Azure Databricks 受控服務主體搭配使用。
* Microsoft Entra ID 服務主體驗證會使用短期(通常是一小時)的 Microsoft Entra ID 令牌進行驗證認證。
* 已過期的 Microsoft Entra 識別符令牌可以藉由參與 Azure Databricks 工具和 SDK 來自動重新整理。 請參閱 Azure Databricks 工具或 SDKDatabricks 用戶端整合驗證支援的驗證類型。
* 如果目標 Azure Databricks 工具或 SDK 支援 Azure Databricks 工具,而不是 Microsoft Entra ID 服務主體驗證,則建議您使用 Azure 受控識別驗證。 這是因為 Azure 受控識別驗證不會公開認證。
* 如果您無法使用 Azure 受控識別驗證,Databricks 建議您使用 OAuth M2M 驗證 ,而不是 Microsoft Entra ID 服務主體驗證。
* Databricks 建議您在必須使用 Microsoft Entra ID 令牌進行驗證認證的情況下,使用 Microsoft Entra ID 服務主體驗證。 例如,您可能需要同時向 Azure Databricks 和其他 Azure 資源進行驗證,這需要 Microsoft Entra ID 令牌。
* 如需其他技術詳細數據,請參閱 Microsoft Entra ID 服務主體驗證
Azure CLI 驗證 * Azure CLI 驗證會使用 Azure CLI 以及 Azure Databricks 使用者或 Microsoft Entra ID 受控服務主體來進行驗證。
* Azure CLI 驗證會使用短期(通常是一小時)Microsoft Entra ID 令牌進行驗證認證。
* 參與 Azure Databricks 工具和 SDK 可以自動重新整理過期的 Microsoft Entra 標識符令牌。 Sdk。 請參閱 Azure Databricks 工具或 SDKDatabricks 用戶端整合驗證支援的驗證類型。
* 如果您的目標 Azure Databricks 工具或 SDK 支援 Azure CLI 驗證,Databricks 建議 Azure 受控識別驗證。 Azure 受控識別驗證會使用 Azure 受控識別,而不是 Azure Databricks 使用者或 Microsoft Entra ID 受控服務主體,而 Azure 受控識別比 Azure Databricks 使用者或 Microsoft Entra ID 受控服務主體更安全,因為 Azure 受控識別驗證不會公開認證。 請參閱什麼是 Azure 資源受控識別?
* Databricks 建議您在必須針對驗證認證使用 Microsoft Entra ID 令牌的情況下,使用 Azure CLI 驗證。 例如,您可能需要同時向 Azure Databricks 和其他 Azure 資源進行驗證,這需要 Microsoft Entra ID 令牌。
* Azure CLI 驗證驗證適用於 參與的 驗證案例。 這些案例包括手動和快速開發工作流程,您可以在其中使用 Azure CLI 即時向 Azure Databricks 進行驗證。
* 如需其他技術詳細數據,請參閱 Azure CLI 驗證
Azure Databricks 個人存取令牌驗證 * Azure Databricks 個人存取令牌驗證會使用 Azure Databricks 使用者進行驗證。
* Azure Databricks 個人存取令牌驗證會使用短期或長期字串進行驗證認證。 這些存取令牌可以設定為短於一天或更少,也可以設定為永不過期。
* 無法重新整理過期的 Azure Databricks 個人存取令牌。
* Databricks 不建議使用 Azure Databricks 個人存取令牌(特別是長期存取令牌)進行驗證認證,因為它們比 Microsoft Entra ID 或 Azure Databricks OAuth 存取令牌不安全。
* 如果您的目標 Azure Databrickstool 或 SDK 支援 Azure Databrickstool,而不是 Azure Databricks 個人存取令牌驗證,Databricks 會建議 Azure 受控識別驗證。 Azure 受控識別驗證會使用 Azure 受控識別,而不是 Azure Databricks 使用者,而 Azure 受控識別比 Azure Databricks 使用者更安全。 請參閱什麼是 Azure 資源受控識別?
* 如果您無法使用 Azure 受控識別驗證,Databricks 建議您使用 Azure CLI 驗證 ,而不是 Azure Databricks 個人存取令牌驗證。
* 如需其他技術詳細數據,請參閱 Azure Databricks 個人存取令牌驗證

Azure Databricks 工具或 SDK 支援的驗證類型

使用一或多個支援的 Azure Databricks 驗證類型的 Azure Databricks 工具和 SDK 包含下列各項:

工具或 SDK 支援的驗證類型
Databricks CLI * OAuth 計算機對電腦 (M2M) 驗證
* OAuth 使用者對電腦 (U2M) 驗證
* Azure 受控識別驗證
* Microsoft Entra ID 服務主體驗證
* Azure CLI 驗證
* Azure Databricks 個人存取令牌驗證

如需特定的 Databricks CLI 驗證檔,包括如何設定及使用 Azure Databricks 組態配置檔 來切換多個相關的驗證設定,請參閱:

* OAuth 計算機對電腦 (M2M) 驗證
* Azure 受控識別驗證
* Microsoft Entra ID 服務主體驗證
* Azure CLI 驗證
* Azure Databricks 個人存取令牌驗證

如需 Databricks CLI 的其他技術詳細數據,請參閱 什麼是 Databricks CLI?
Databricks Terraform 提供者 * OAuth 計算機對電腦 (M2M) 驗證
* Azure 受控識別驗證
* Microsoft Entra ID 服務主體驗證
* Azure CLI 驗證
* Azure Databricks 個人存取令牌驗證

尚不支援 OAuth 使用者對電腦 (U2M) 驗證

如需特定的 Databricks Terraform 提供者驗證檔,包括如何透過環境變數儲存和使用認證、Azure Databricks 組態配置檔.tfvars檔案或秘密存放區,例如 Hashicorp Vault 或 Azure 金鑰保存庫,請參閱驗證

如需 Databricks Terraform 提供者的其他技術詳細數據,請參閱 Databricks Terraform 提供者
Databricks Connect * OAuth 計算機對電腦 (M2M) 驗證
* OAuth 使用者對電腦 (U2M) 驗證
* Microsoft Entra ID 服務主體驗證
* Azure CLI 驗證
* Azure Databricks 個人存取令牌驗證

尚不支援 Azure 受控識別驗證

如需特定的 Databricks 連線 驗證檔,請參閱:

* 設定 Python 的用戶端
* 設定 Scala 的用戶端

如需 Databricks 連線 的其他技術詳細數據,請參閱什麼是 Databricks 連線?
適用於 Visual Studio Code 的 Databricks 擴充功能 * OAuth 計算機對電腦 (M2M) 驗證
* OAuth 使用者對電腦 (U2M) 驗證
* Microsoft Entra ID 服務主體驗證
* Azure CLI 驗證
* Azure Databricks 個人存取令牌驗證

尚不支援 Azure 受控識別驗證

如需適用於 Visual Studio Code 驗證的特定 Databricks 擴充功能檔,請參閱 Visual Studio Code 的 Databricks 延伸模組驗證設定。

如需 Visual Studio Code Databricks 延伸模組的其他技術詳細數據,請參閱 什麼是適用於 Visual Studio Code 的 Databricks 延伸模組?
適用於 Python 的 Databricks SDK * OAuth 計算機對電腦 (M2M) 驗證
* OAuth 使用者對電腦 (U2M) 驗證
* Microsoft Entra ID 服務主體驗證
* Azure CLI 驗證
* Azure Databricks 個人存取令牌驗證

尚不支援 Azure 受控識別驗證

如需適用於 Python 驗證的特定 Databricks SDK 檔,請參閱:

* 使用 Azure Databricks 帳戶或工作區驗證適用於 Python 的 Databricks SDK
* 驗證

如需適用於 Python 的 Databricks SDK 的其他技術詳細數據,請參閱 適用於 Python 的 Databricks SDK。
適用於 Java 的 Databricks SDK * OAuth 計算機對電腦 (M2M) 驗證
* OAuth 使用者對電腦 (U2M) 驗證
* Microsoft Entra ID 服務主體驗證
* Azure CLI 驗證
* Azure Databricks 個人存取令牌驗證

尚不支援 Azure 受控識別驗證

如需適用於 Java 驗證的特定 Databricks SDK 檔,請參閱:

* 使用 Azure Databricks 帳戶或工作區驗證適用於 Java 的 Databricks SDK
* 驗證

如需 Databricks SDK for Java 的其他技術詳細數據,請參閱 Databricks SDK for Java
Databricks SDK for Go * OAuth 計算機對電腦 (M2M) 驗證
* OAuth 使用者對電腦 (U2M) 驗證
* Azure 受控識別驗證
* Microsoft Entra ID 服務主體驗證
* Azure CLI 驗證
* Azure Databricks 個人存取令牌驗證

如需適用於 Java 驗證的特定 Databricks SDK 檔,請參閱:

* 使用 Azure Databricks 帳戶或工作區驗證 Databricks SDK for Go
* 驗證

如需 Databricks SDK for Go 的其他技術詳細數據,請參閱 Databricks SDK for Go
Databricks 資產套件組合 * OAuth 計算機對電腦 (M2M) 驗證
* OAuth 使用者對電腦 (U2M) 驗證
* Azure 受控識別驗證
* Microsoft Entra ID 服務主體驗證
* Azure Databricks 個人存取令牌驗證

尚不支援 Azure CLI 驗證

如需 Databricks 資產套件組合的其他技術詳細數據,請參閱 什麼是 Databricks 資產套件組合?
Databricks Driver for SQLTools for Visual Studio Code * OAuth 計算機對電腦 (M2M) 驗證
* OAuth 使用者對電腦 (U2M) 驗證
* Azure Databricks 個人存取令牌驗證

尚不支援下列驗證類型:

* Azure 受控識別驗證
* Microsoft Entra ID 服務主體驗證
* Azure CLI 驗證

如需 Databricks Driver for SQLTools for Visual Studio Code 的其他技術詳細數據,請參閱 Databricks Driver for SQLTools for Visual Studio Code
適用於 Python 的 Databricks SQL 連線 or * OAuth 計算機對電腦 (M2M) 驗證
* OAuth 使用者對電腦 (U2M) 驗證
* Azure Databricks 個人存取令牌驗證

尚不支援下列驗證類型:

* Azure 受控識別驗證
* Microsoft Entra ID 服務主體驗證
* Azure CLI 驗證

如需適用於 Python 之 Databricks SQL 連線 or 的其他技術詳細數據,請參閱適用於 Python 的 Databricks SQL 連線 or。
Databricks SQL Driver for Node.js * OAuth 計算機對電腦 (M2M) 驗證
* OAuth 使用者對電腦 (U2M) 驗證
* Azure Databricks 個人存取令牌驗證

尚不支援下列驗證類型:

* Azure 受控識別驗證
* Microsoft Entra ID 服務主體驗證
* Azure CLI 驗證

如需 Databricks SQL Driver for Node.js 的其他技術詳細數據,請參閱 Databricks SQL Driver for Node.js
Databricks SQL Driver for Go * OAuth 計算機對電腦 (M2M) 驗證
* OAuth 使用者對電腦 (U2M) 驗證
* Azure Databricks 個人存取令牌驗證

尚不支援下列驗證類型:

* Azure 受控識別驗證
* Microsoft Entra ID 服務主體驗證
* Azure CLI 驗證

如需 Databricks SQL Driver for Go 的其他技術詳細數據,請參閱 Databricks SQL Driver for Go
其他 Azure Databricks 工具和 SDK 請參閱工具或 SDK 的檔案:

* Databricks SDK for R
* Databricks SQL CLI

Azure Databricks 帳戶和工作區 REST API

Databricks 將其 Databricks REST API 組織成兩種 API 類別: 帳戶 API工作區 API。 每個類別都需要不同的資訊集來驗證目標 Azure Databricks 身分識別。 此外,每個支援的 Databricks 驗證類型都需要可唯一識別目標 Azure Databricks 身分識別的其他資訊。

例如,若要驗證 Azure Databricks 身分識別來呼叫 Azure Databricks 帳戶層級 API 作業,您必須提供:

  • 目標 Azure Databricks 帳戶主控台 URL,通常是 https://accounts.azuredatabricks.net
  • 目標 Azure Databricks 帳戶標識碼。 請參閱 尋找您的帳戶標識碼
  • 可唯一識別目標 Databricks 驗證類型之目標 Azure Databricks 身分識別的資訊。 如需要提供的特定資訊,請參閱本文稍後的該驗證類型一節。

若要驗證 Azure Databricks 身分識別來呼叫 Azure Databricks 工作區層級 API 作業,您必須提供:

  • 目標 Azure Databricks 個別工作區 URL,例如 https://adb-1234567890123456.7.azuredatabricks.net
  • 可唯一識別目標 Databricks 驗證類型之目標 Azure Databricks 身分識別的資訊。 如需要提供的特定資訊,請參閱本文稍後的該驗證類型一節。

Databricks 用戶端整合驗證

Databricks 提供整合且一致的架構和程序設計方法來進行驗證,稱為 Databricks 用戶端統一驗證。 這種方法可協助設定及自動化使用 Databricks 進行更集中且可預測的驗證。 它可讓您設定 Databricks 驗證一次,然後在多個 Databricks 工具和 SDK 之間使用該組態,而不需要進一步的驗證組態變更。

參與的 Databricks 工具和 SDK 包括:

所有參與的工具和 SDK 都接受特殊的 環境變數 和 Azure Databricks 組態配置檔 來進行驗證。 Databricks Terraform 提供者和適用於 Python、Java 和 Go 的 Databricks SDK 也接受程式碼內驗證設定的直接設定。 如需詳細資訊,請參閱 Azure Databricks 工具或 SDK 或工具或 SDK 的文件支援的驗證類型。

用戶端整合驗證方法和認證的預設評估順序

每當參與的工具或 SDK 需要向 Azure Databricks 進行驗證時,工具或 SDK 預設會依下列順序嘗試下列類型的驗證。 當工具或 SDK 以嘗試的驗證類型成功時,工具或 SDK 會停止嘗試向其餘的驗證類型進行驗證。 若要強制 SDK 以特定驗證類型進行驗證,請設定 Config API 的 Databricks 驗證類型欄位。

  1. Azure Databricks 個人存取令牌驗證
  2. OAuth 計算機對電腦 (M2M) 驗證
  3. OAuth 使用者對電腦 (U2M) 驗證
  4. Azure 受控識別驗證
  5. Microsoft Entra ID 服務主體驗證
  6. Azure CLI 驗證

針對參與工具或 SDK 嘗試的每個驗證類型,工具或 SDK 會依下列順序嘗試在下列位置尋找驗證認證。 當工具或 SDK 成功尋找可使用的驗證認證時,工具或 SDK 會停止嘗試在其餘位置尋找驗證認證。

  1. 認證相關的 Config API 欄位 (適用於 SDK)。 若要設定 Config 欄位,請參閱 Azure Databricks 工具或 SDK 或 SDK 參考檔支援的驗證類型。
  2. 認證相關的環境變數。 若要設定環境變數,請參閱 Azure Databricks 工具或 SDK 和作業系統檔支援的驗證類型。
  3. 檔案內.databrickscfg組態配置檔中的DEFAULT認證相關欄位。 若要設定組態配置檔欄位,請參閱 Azure Databricks 工具或 SDK 和 (#config 設定檔) 支援的驗證類型。
  4. Azure CLI 快取的任何相關驗證認證。 請參閱 Azure CLI

為了提供程式代碼的最大可移植性,Databricks 建議您在檔案內.databrickscfg建立自定義組態配置檔,將目標 Databricks 驗證類型所需的欄位新增至自定義組態設定檔,然後將環境變數設定DATABRICKS_CONFIG_PROFILE為自定義組態配置檔的名稱。 如需詳細資訊,請參閱 Azure Databricks 工具或 SDK 支援的驗證類型。

用戶端整合驗證的環境變數和欄位

下表列出 Databricks 用戶端統一驗證所支援環境變數和字段的名稱和描述。 在下表中:

一般主機、令牌和帳戶標識符環境變數和欄位

一般名稱 描述 環境變數 .databrickscfg field、Terraform 欄位 Config 欄位
Azure Databricks 主機 (字串)Azure Databricks 工作區端點或 Azure Databricks 帳戶端點的 Azure Databricks 主機 URL。 DATABRICKS_HOST host host (Python),
setHost (Java),
Host (Go)
Azure Databricks 令牌 (字串)Azure Databricks 個人存取令牌或 Microsoft Entra ID 令牌。 DATABRICKS_TOKEN token token (Python),
setToken (Java),
Token (Go)
Azure Databricks 帳戶標識碼 (字串)Azure Databricks 帳戶端點的 Azure Databricks 帳戶標識符。 只有在 Azure Databricks 主機也設定為 時才會生效
https://accounts.azuredatabricks.net.
DATABRICKS_ACCOUNT_ID account_id account_id (Python),
setAccountID (Java),
AccountID (Go)

Azure 特定的環境變數和欄位

一般名稱 描述 環境變數 .databrickscfg field、Terraform 欄位 Config 欄位
Azure 用戶端標識碼 (字串)Microsoft Entra ID 服務主體的應用程式識別碼。 搭配 Azure 受控識別驗證和 Microsoft Entra ID 服務主體驗證使用。 ARM_CLIENT_ID azure_client_id azure_client_id (Python),
setAzureClientID (Java),
AzureClientID (Go)
Azure 客戶端密碼 (字串)Microsoft Entra ID 服務主體的客戶端密碼。 搭配 Microsoft Entra ID 服務主體驗證使用。 ARM_CLIENT_SECRET azure_client_secret azure_client_secret (Python),
setAzureClientSecret (Java),
AzureClientSecret (Go)
用戶端識別碼 (字串)Azure Databricks 受控服務主體或 Microsoft Entra ID 受控服務主體的用戶端標識符。 搭配 OAuth M2M 驗證使用。 DATABRICKS_CLIENT_ID client_id client_id (Python),
setClientId (Java),
ClientId (Go)
用戶端密碼 (字串)Azure Databricks 受控服務主體或 Microsoft Entra ID 受控服務主體的客戶端密碼。 搭配 OAuth M2M 驗證使用。 DATABRICKS_CLIENT_SECRET client_secret client_secret (Python),
setClientSecret (Java),
ClientSecret (Go)
Azure 環境 (字串)Azure 環境類型。 預設為 PUBLIC ARM_ENVIRONMENT azure_environment azure_environment (Python),
setAzureEnvironment (Java),
AzureEnvironment (Go)
Azure 租用戶標識碼 (字串)Microsoft Entra ID 服務主體的租用戶標識碼。 ARM_TENANT_ID azure_tenant_id azure_tenant_id (Python),
setAzureTenantID (Java),
AzureTenantID (Go)
Azure 使用 MSI (布林值 )True 是表示 針對服務主體使用 Azure 受控服務識別無密碼驗證流程。 需要同時設定 Azure 資源識別碼。 ARM_USE_MSI azure_use_msi AzureUseMSI (Go)
Azure 資源標識碼 (字串)Azure Databricks 工作區的 Azure Resource Manager 標識符。 DATABRICKS_AZURE_RESOURCE_ID azure_workspace_resource_id azure_workspace_resource_id (Python),
setAzureResourceID (Java),
AzureResourceID (Go)

.databrickscfg 特定環境變數和欄位

使用這些環境變數或欄位來指定的非預設設定 .databrickscfg。 另 請參閱 Azure Databricks 組態配置檔

一般名稱 描述 環境變數 Terraform 欄位 Config 欄位
.databrickscfg 檔案路徑 (字串)的非預設路徑
.databrickscfg 檔案。
DATABRICKS_CONFIG_FILE config_file config_file (Python),
setConfigFile (Java),
ConfigFile (Go)
.databrickscfg 預設配置檔 (字串)要使用的預設具名設定檔,而非 DEFAULT DATABRICKS_CONFIG_PROFILE profile profile (Python),
setProfile (Java),
Profile (Go)

驗證類型欄位

使用此環境變數或字段來強制 SDK 使用特定類型的 Databricks 驗證。

一般名稱 描述 Terraform 欄位 Config 欄位
Databricks 驗證類型 (字串)當環境中有多個驗證屬性可用時,請使用這個自變數所指定的驗證類型。 auth_type auth_type (Python),
setAuthType (Java),
AuthType (Go)

支援的 Databricks 驗證類型網域值包括:

Azure Databricks 組態配置檔

Azure Databricks 組態配置檔(有時稱為組態配置檔組態配置檔或單純的 profile)包含 Azure Databricks 需要驗證的設定和其他資訊。 Azure Databricks 組態配置檔會儲存在 Azure Databricks 組態設定檔檔案 中,以供您使用的工具、SDK、腳本和應用程式使用。 若要瞭解您的工具、SDK、腳本和應用程式是否支援 Azure Databricks 組態設定檔,請參閱提供者的檔。 所有實 作 Databricks 用戶端整合驗證 的參與工具和 SDK 都支援 Azure Databricks 組態配置檔。 如需詳細資訊,請參閱 Azure Databricks 工具或 SDK 支援的驗證類型。

若要建立 Azure Databricks 組態配置文件檔案:

  1. 使用您慣用的文本編輯器,在 Unix、Linux 或 macOS 上的 [使用者首頁] 資料夾中建立名為 .databrickscfg~ 的檔案,如果您還沒有檔案,請在 Windows 上建立名為 的 %USERPROFILE% 檔案。 別忘了檔名開頭的點 (.)。 將下列內容新增至此檔案:

    [<some-unique-name-for-this-configuration-profile>]
    <field-name> = <field-value>
    
  2. 在上述內容中,取代下列值,然後儲存盤案:

    • <some-unique-name-for-this-configuration-profile> 具有組態配置檔的唯一名稱,例如 DEFAULTDEVELOPMENTPRODUCTION或類似名稱。 您可以在相同的 .databrickscfg 檔案中有多個組態配置檔,但每個組態配置檔在此檔案中都必須有唯一的名稱。
    • <field-name><field-value> 具有目標 Databricks 驗證類型其中一個必要欄位的名稱和值。 如需要提供的特定資訊,請參閱本文稍早的該驗證類型一節。
    • <field-name>為目標 Databricks 驗證類型的每個額外必要欄位新增和 <field-value> 配對。

例如,針對 Azure Databricks 個人存取令牌驗證, .databrickscfg 檔案看起來可能如下所示:

[DEFAULT]
host  = https://adb-1234567890123456.7.azuredatabricks.net
token = dapi123...

若要建立其他組態配置檔,請在相同的 .databrickscfg 檔案中指定不同的配置檔名稱。 例如,若要指定個別的 Azure Databricks 工作區,每個工作區都有自己的 Azure Databricks 個人存取令牌:

[DEFAULT]
host  = https://adb-1234567890123456.7.azuredatabricks.net
token = dapi123...

[DEVELOPMENT]
host  = https://adb-2345678901234567.8.azuredatabricks.net
token = dapi234...

您也可以針對 Azure Databricks 帳戶和不同的 Databricks 驗證類型,在檔案中 .databrickscfg 指定不同的配置檔名稱,例如:

[DEFAULT]
host  = https://adb-1234567890123456.7.azuredatabricks.net
token = dapi123...

[DEVELOPMENT]
azure_workspace_resource_id = /subscriptions/bc0cd1.../resourceGroups/my-resource-group/providers/Microsoft.Databricks/workspaces/my-workspace
azure_tenant_id             = bc0cd1...
azure_client_id             = fa0cd1...
azure_client_secret         = aBC1D~...

ODBC DSN

在 ODBC 中, 數據來源名稱 (DSN) 是符號名稱,工具、SDK、腳本和應用程式會用來要求與 ODBC 數據源的連線。 DSN 會儲存連線詳細數據,例如 ODBC 驅動程式的路徑、網路詳細數據、驗證認證和資料庫詳細數據。 若要瞭解您的工具、腳本和應用程式是否支援 ODBC DSN,請參閱提供者的檔。

若要安裝和設定 Databricks ODBC 驅動程式 ,並建立適用於 Azure Databricks 的 ODBC DSN,請參閱 Databricks ODBC Driver

JDBC 連線 URL

在 JDBC 中, 連線 URL 是符號 URL ,工具、SDK、腳本和應用程式會用來要求與 JDBC 數據源的連線。 線上 URL 會儲存連線詳細數據,例如網路詳細數據、驗證認證、資料庫詳細數據和 JDBC 驅動程式功能。 若要瞭解工具、SDK、腳本和應用程式是否支援 JDBC 連線 URL,請參閱提供者的檔。

若要安裝和設定 Databricks JDBC 驅動程式 ,並建立 Azure Databricks 的 JDBC 連線 URL,請參閱 Databricks JDBC 驅動程式

Microsoft Entra ID (先前稱為 Azure Active Directory) 令牌

Microsoft Entra ID (先前稱為 Azure Active Directory) 令牌是 Azure Databricks 最支援的認證類型之一,無論是在 Azure Databricks 工作區和帳戶層級。

注意

某些工具、SDK、腳本和應用程式僅支援 Azure Databricks 個人存取令牌驗證 ,而不是 Microsoft Entra ID 令牌。 若要瞭解您的工具、SDK、腳本和應用程式是否支援 Microsoft Entra ID 令牌,請參閱 Azure Databricks 工具或 SDK 或提供者的檔支援的驗證類型。

此外,除了 Azure Databricks 驗證的 Microsoft Entra 識別符令牌之外,某些工具、SDK、腳本和應用程式也支援 Azure Databricks OAuth 令牌。 若要瞭解您的工具、SDK、腳本和應用程式是否支援 Azure Databricks OAuth 令牌,請參閱 Azure Databricks 工具或 SDK 或提供者檔支援的驗證類型。

使用者的 Microsoft Entra ID 令牌驗證

Databricks 不建議手動為 Azure Databricks 使用者建立 Microsoft Entra ID 令牌。 這是因為每個 Microsoft Entra ID 令牌都是短期的,通常會在一小時內到期。 在這段時間之後,您必須手動產生取代的 Microsoft Entra ID 令牌。 請改用其中一個參與的工具或 SDK 來實作 Databricks 用戶端統一驗證標準。 這些工具和 SDK 會自動為您產生並取代過期的 Microsoft Entra ID 令牌,並利用 Azure CLI 驗證

如果您必須手動為 Azure Databricks 使用者建立 Microsoft Entra ID 令牌,請參閱:

服務主體的 Microsoft Entra ID 令牌驗證

Databricks 不建議手動為 Microsoft Entra ID 服務主體建立 Microsoft Entra ID 令牌。 這是因為每個 Microsoft Entra ID 令牌都是短期的,通常會在一小時內到期。 在這段時間之後,您必須手動產生取代的 Microsoft Entra ID 令牌。 請改用其中一個參與的工具或 SDK 來實作 Databricks 用戶端統一驗證標準。 這些工具和 SDK 會自動為您產生並取代過期的 Microsoft Entra ID 令牌,並利用下列 Databricks 驗證類型:

如果您必須手動為 Microsoft Entra ID 服務主體建立 Microsoft Entra 識別符令牌,請參閱:

Azure CLI

Azure CLI 可讓您透過 PowerShell、Linux 或 macOS 終端機,或透過適用於 Windows 的命令提示字元向 Azure Databricks 進行驗證。 若要瞭解您的工具、SDK、腳本和應用程式是否支援 Azure CLI,請參閱 Azure Databricks 工具或 SDK 或提供者的檔案支援的驗證類型。

若要使用 Azure CLI 手動向 Azure Databricks 進行驗證,請執行 az login 命令:

az login

若要使用 Microsoft Entra ID 服務主體進行驗證,請參閱 使用 Microsoft Entra ID 服務主體的 Azure CLI 登入。

若要使用 Azure 受控 Azure Databricks 使用者帳戶進行驗證,請參閱 使用 Azure Databricks 使用者帳戶登入 Azure CLI。