Azure CLI 驗證
Azure CLI 驗證會使用 Azure CLI 來驗證已登入的使用者或Microsoft Entra ID(先前稱為 Azure Active Directory) 服務主體。
注意
Azure Databricks 受控服務主體會直接在 Azure Databricks 中管理。 Microsoft Entra ID 受控服務主體是在 Microsoft Entra ID 中管理,這需要額外的許可權。 Databricks 建議您在大部分情況下,使用 OAuth 機器對機器 (M2M) 驗證與 Azure Databricks 受控服務主體,而不是使用 azure CLI 驗證搭配 Microsoft Entra ID 服務主體。 不過,Databricks 建議您在必須同時向 Azure Databricks 和其他 Azure 資源進行驗證的情況下,搭配 Microsoft Entra ID 服務主體使用 Azure CLI 驗證。
若要搭配 Azure Databricks 受控服務主體使用 OAuth M2M 驗證,而不是使用 azure CLI 驗證搭配 Microsoft Entra ID 服務主體,請略過本文,並參閱 使用服務主體向 Azure Databricks 進行驗證。
若要使用 Azure Databricks 進行設定,您必須執行下列動作:
- 在本機安裝 Azure CLI。
- 執行 命令,使用 Azure CLI 來登入 Azure Databricks
az login
。 請參閱: - 設定下列相關聯的環境變數、
.databrickscfg
欄位、Terraform 欄位或Config
字位:
若要使用 Azure Databricks 執行 Azure CLI 驗證,請根據您的參與工具或 SDK,在程式代碼中整合下列專案:
Environment
若要搭配工具或 SDK 使用特定 Azure Databricks 驗證類型的環境變數,請參閱 Azure Databricks 工具或 SDK 或工具或 SDK 的文件支援的驗證類型。 另請參閱用戶端統一驗證的環境變數和欄位,以及用戶端統一驗證方法和認證的預設評估順序。
針對 帳戶層級作業,請設定下列環境變數:
DATABRICKS_HOST
,設定為 Azure Databricks 帳戶主控台 URL 的值。https://accounts.azuredatabricks.net
DATABRICKS_ACCOUNT_ID
針對 工作區層級作業,請設定下列環境變數:
DATABRICKS_HOST
,設定為 Azure Databricks 每個工作區 URL 的值,例如https://adb-1234567890123456.7.azuredatabricks.net
。
設定檔
使用檔案.databrickscfg
中的下列欄位,建立或識別 Azure Databricks 組態配置檔。 如果您建立設定檔,請將佔位元取代為適當的值。 若要搭配工具或 SDK 使用設定檔,請參閱 Azure Databricks 工具或 SDK 或工具或 SDK 的檔支援的驗證類型。 另請參閱用戶端統一驗證的環境變數和欄位,以及用戶端統一驗證方法和認證的預設評估順序。
針對 帳戶層級作業,請在您的 .databrickscfg
檔案中設定下列值。 在此情況下,Azure Databricks 帳戶主控台 URL 為 https://accounts.azuredatabricks.net
:
[<some-unique-configuration-profile-name>]
host = <account-console-url>
account_id = <account-id>
針對 工作區層級作業,請在您的 .databrickscfg
檔案中設定下列值。 在此情況下,主機是 Azure Databricks 個別工作區 URL,例如 https://adb-1234567890123456.7.azuredatabricks.net
:
[<some-unique-configuration-profile-name>]
host = <workspace-url>
CLI
針對 Databricks CLI,請執行下列其中一項:
- 如本文的「環境」一節中所指定,設定環境變數。
- 如本文的「配置檔」一節所指定,設定檔案
.databrickscfg
中的值。
環境變數一律優先於檔案 .databrickscfg
中的值。
連線
注意
下列 Databricks Connect 版本支援 Azure CLI 驗證:
- 針對 Python,Databricks Connect for Databricks Runtime 13.1 和更新版本。
- 針對 Scala,Databricks Connect for Databricks Runtime 13.3 LTS 和更新版本。
針對 Databricks Connect,您可以執行下列其中一項作業:
- 如本文的「配置檔」一節中所指定,為 Azure Databricks 工作區層級作業設定檔案
.databrickscfg
中的值。 此外,cluster_id
將設定檔中的環境變數設定為每個 工作區URL,例如https://adb-1234567890123456.7.azuredatabricks.net
。 - 如本文的「環境」一節中所指定,設定 Azure Databricks 工作區層級作業 的環境變數。 此外,將
DATABRICKS_CLUSTER_ID
環境變數設定為每個 工作區 URL,例如https://adb-1234567890123456.7.azuredatabricks.net
。
檔案 .databrickscfg
中的值一律優先於環境變數。
若要使用檔案 .databrickscfg
中的這些環境變數或值來初始化 Databricks Connect 用戶端,請參閱下列其中一項:
VS Code
針對 Visual Studio Code 的 Databricks 擴充功能,請執行下列動作:
- 在 [ 設定 ] 窗格中,按兩下 [ 設定 Databricks]。
- 在 [命令選擇區] 的 Databricks Host 中,輸入每個工作區的 URL,例如
https://adb-1234567890123456.7.azuredatabricks.net
,然後按Enter
。 - 選取 [Azure CLI]。
如需詳細資訊,請參閱 設定 Azure CLI 驗證。
Terraform
provider "databricks" {
alias = "accounts"
}
針對直接設定(將 retrieve
佔位元取代為您自己的實作,以從控制台或其他一些組態存放區擷取值,例如 HashiCorp Vault。另 請參閱保存庫提供者)。 在此情況下,Azure Databricks 帳戶主控台 URL 為 https://accounts.azuredatabricks.net
:
provider "databricks" {
alias = "accounts"
host = <retrieve-account-console-url>
account_id = <retrieve-account-id>
}
provider "databricks" {
alias = "workspace"
}
針對直接設定(將 retrieve
佔位元取代為您自己的實作,以從控制台或其他一些組態存放區擷取值,例如 HashiCorp Vault。另 請參閱保存庫提供者)。 在此情況下,主機是 Azure Databricks 個別工作區 URL,例如 https://adb-1234567890123456.7.azuredatabricks.net
:
provider "databricks" {
alias = "workspace"
host = <retrieve-workspace-url>
}
如需使用 Databricks Terraform 提供者進行驗證的詳細資訊,請參閱 驗證。
Python
from databricks.sdk import AccountClient
a = AccountClient()
# ...
針對直接設定(將 retrieve
佔位元取代為您自己的實作,以從控制台或其他一些組態存放區擷取值,例如 Azure KeyVault)。 在此情況下,Azure Databricks 帳戶主控台 URL 為 https://accounts.azuredatabricks.net
:
from databricks.sdk import AccountClient
a = AccountClient(
host = retrieve_account_console_url(),
account_id = retrieve_account_id()
)
# ...
from databricks.sdk import WorkspaceClient
w = WorkspaceClient()
# ...
針對直接設定(將 retrieve
佔位元取代為您自己的實作,以從控制台或其他一些組態存放區擷取值,例如 Azure KeyVault)。 在此情況下,主機是 Azure Databricks 個別工作區 URL,例如 https://adb-1234567890123456.7.azuredatabricks.net
:
from databricks.sdk import WorkspaceClient
w = WorkspaceClient(host = retrieve_workspace_url())
# ...
如需使用 Python 和實 作 Databricks 用戶端整合驗證之 Databricks 工具和 SDK 進行驗證的詳細資訊,請參閱:
- 設定適用於 Python 的 Databricks Connect 用戶端
- VS Code Databricks 延伸模組的驗證設定
- 使用 Azure Databricks 帳戶或工作區驗證適用於 Python 的 Databricks SDK
Java
import com.databricks.sdk.AccountClient;
// ...
AccountClient a = new AccountClient();
// ...
針對直接設定(將 retrieve
佔位元取代為您自己的實作,以從控制台或其他一些組態存放區擷取值,例如 Azure KeyVault)。 在此情況下,Azure Databricks 帳戶主控台 URL 為 https://accounts.azuredatabricks.net
:
import com.databricks.sdk.AccountClient;
import com.databricks.sdk.core.DatabricksConfig;
// ...
DatabricksConfig cfg = new DatabricksConfig()
.setHost(retrieveAccountConsoleUrl())
.setAccountId(retrieveAccountId())
AccountClient a = new AccountClient(cfg);
// ...
import com.databricks.sdk.WorkspaceClient;
// ...
WorkspaceClient w = new WorkspaceClient();
// ...
針對直接設定(將 retrieve
佔位元取代為您自己的實作,以從控制台或其他一些組態存放區擷取值,例如 Azure KeyVault)。 在此情況下,主機是 Azure Databricks 個別工作區 URL,例如 https://adb-1234567890123456.7.azuredatabricks.net
:
import com.databricks.sdk.WorkspaceClient;
import com.databricks.sdk.core.DatabricksConfig;
// ...
DatabricksConfig cfg = new DatabricksConfig()
.setHost(retrieveWorkspaceUrl())
WorkspaceClient w = new WorkspaceClient(cfg);
// ...
如需使用 Java 和實 作 Databricks 用戶端整合驗證之 Databricks 工具和 SDK 進行驗證的詳細資訊,請參閱:
- 設定適用於 Scala 的 Databricks Connect 用戶端(適用於 Scala 的 Databricks Connect 用戶端會使用內含的 Databricks SDK 進行驗證)
- 使用 Azure Databricks 帳戶或工作區驗證適用於 Java 的 Databricks SDK
Go
import (
"github.com/databricks/databricks-sdk-go"
)
// ...
a := databricks.Must(databricks.NewAccountClient())
// ...
針對直接設定(將 retrieve
佔位元取代為您自己的實作,以從控制台或其他一些組態存放區擷取值,例如 Azure KeyVault)。 在此情況下,Azure Databricks 帳戶主控台 URL 為 https://accounts.azuredatabricks.net
:
import (
"github.com/databricks/databricks-sdk-go"
)
// ...
a := databricks.Must(databricks.NewAccountClient(&databricks.Config{
Host: retrieveAccountConsoleUrl(),
AccountId: retrieveAccountId(),
}))
// ...
import (
"github.com/databricks/databricks-sdk-go"
)
// ...
w := databricks.Must(databricks.NewWorkspaceClient())
// ...
針對直接設定(將 retrieve
佔位元取代為您自己的實作,以從控制台或其他一些組態存放區擷取值,例如 Azure KeyVault)。 在此情況下,主機是 Azure Databricks 個別工作區 URL,例如 https://adb-1234567890123456.7.azuredatabricks.net
:
import (
"github.com/databricks/databricks-sdk-go"
)
// ...
w := databricks.Must(databricks.NewWorkspaceClient(&databricks.Config{
Host: retrieveWorkspaceUrl(),
}))
// ...
如需使用 Go 和實 作 Databricks 用戶端整合驗證之 Databricks 工具和 SDK 進行驗證的詳細資訊,請參閱 使用 Azure Databricks 帳戶或工作區驗證 Databricks SDK for Go。
意見反映
https://aka.ms/ContentUserFeedback。
即將推出:我們會在 2024 年淘汰 GitHub 問題,並以全新的意見反應系統取代並作為內容意見反應的渠道。 如需更多資訊,請參閱:提交及檢視以下的意見反映: