Ujednolicone uwierzytelnianie klienta usługi Databricks
Klient usługi Databricks centralizuje konfigurowanie i automatyzowanie uwierzytelniania w usłudze Azure Databricks. Umożliwia ona skonfigurowanie uwierzytelniania usługi Databricks raz, a następnie użycie tej konfiguracji w wielu narzędziach i zestawach SDK usługi Databricks bez dalszych zmian konfiguracji uwierzytelniania.
Uczestniczących narzędzi i zestawów SDK
Dostępne narzędzia i zestawy SDK usługi Databricks obejmują:
- Interfejs wiersza polecenia usługi Databricks
- Dostawca narzędzia Terraform usługi Databricks
- Databricks Connect
- Rozszerzenie usługi Databricks dla programu Visual Studio Code
- Zestaw SDK usługi Databricks dla języka Python
- Zestaw SDK usługi Databricks dla języka Java
- Zestaw SDK usługi Databricks dla języka Go
Wszystkie uczestniczące narzędzia i zestawy SDK akceptują specjalne zmienne środowiskowe i profile konfiguracji usługi Azure Databricks na potrzeby uwierzytelniania. Dostawca narzędzia Terraform usługi Databricks i zestawy SDK usługi Databricks dla języków Python, Java i Go akceptują również bezpośrednią konfigurację ustawień uwierzytelniania w kodzie. Aby uzyskać szczegółowe informacje, zobacz Narzędzia programistyczne dla dokumentacji narzędzia lub zestawu SDK.
Domyślne metody ujednoliconego uwierzytelniania klienta
Za każdym razem, gdy narzędzie lub zestaw SDK musi uwierzytelniać się w usłudze Azure Databricks, domyślnie próbuje wykonać następujące typy uwierzytelniania w następującej kolejności. Gdy narzędzie lub zestaw SDK zakończy się powodzeniem z typem uwierzytelniania, które próbuje wykonać, zatrzymuje próbę uwierzytelnienia przy użyciu pozostałych typów uwierzytelniania. Aby wymusić uwierzytelnianie zestawu SDK za pomocą określonego typu uwierzytelniania, set pole typu uwierzytelniania interfejsu API usługi Databricks Config
.
- Uwierzytelnianie osobistego tokenu dostępu usługi Azure Databricks
- Uwierzytelnianie dostępu do usługi Azure Databricks przy użyciu jednostki usługi przy użyciu protokołu OAuth (OAuth M2M)
- Uwierzytelnianie dostępu do usługi Azure Databricks przy użyciu konta użytkownika przy użyciu protokołu OAuth (OAuth U2M)
- Uwierzytelnianie tożsamości zarządzanych platformy Azure
- Uwierzytelnianie jednostki usługi MS Entra
- Uwierzytelnianie interfejsu wiersza polecenia platformy Azure
Dla każdego typu uwierzytelniania, którego używa narzędzie lub zestaw SDK, narzędzie lub zestaw SDK próbuje znaleźć uwierzytelnianie credentials w następujących lokalizacjach, w następującej kolejności. Gdy narzędzie lub zestaw SDK z powodzeniem znajdzie uwierzytelnianie credentials, którego można użyć, przestaje próbować znaleźć uwierzytelnianie credentials w pozostałych lokalizacjach.
- Pola interfejsu API związane z poświadczeniami
Config
(dla zestawów SDK). Aby uzyskać informacje o polach setConfig
, zobacz dokumentację referencyjną zestawu SDK. - Zmienne środowiskowe związane z poświadczeniami.
- Pola związane z poświadczeniami w
DEFAULT
profilu konfiguracji w.databrickscfg
pliku. Aby sprawdzić pola profilu konfiguracji set, zobacz (/dev-tools/auth/config-profiles.md). - Wszelkie powiązane dane uwierzytelniania, takie jak credentials, które są buforowane przez Azure CLI. Zobacz Uwierzytelnianie interfejsu wiersza polecenia platformy Azure.
Aby zapewnić maksymalną przenośność kodu, usługa Databricks zaleca utworzenie niestandardowego profilu konfiguracji w pliku .databrickscfg
, dodaj poniższe wymagane pola dla docelowego typu uwierzytelniania usługi Databricks do niestandardowego profilu konfiguracji, a następnie set zmiennej środowiskowej DATABRICKS_CONFIG_PROFILE
na nazwę niestandardowego profilu konfiguracji.
Zmienne środowiskowe i pola dla ujednoliconego uwierzytelniania klienta
Poniżej tableslist nazwy i opisy obsługiwanych zmiennych środowiskowych i pól dla ujednoliconego uwierzytelniania klienta usługi Databricks. W poniższym tables:
- zmiennej środowiskowej, where dotyczy, jest nazwą zmiennej środowiskowej.
-
.databrickscfg
pole, where dotyczy, jest nazwą pola w pliku konfiguracji profilów usługi Azure Databricks lub konfiguracji Terraform usługi Databricks. Aby zobaczyć pola set.databrickscfg
, zobacz profile konfiguracji usługi Azure Databricks. - pole Terraform, where applicable, jest nazwą pola w konfiguracji Terraform w Databricks. Aby set pola narzędzia Terraform usługi Databricks, zobacz Authentication w dokumentacji dostawcy narzędzia Terraform usługi Databricks.
-
Config
pole jest nazwą pola w interfejsieConfig
API dla określonego zestawu SDK.
Ogólne zmienne środowiskowe i pola hosta, tokenu i identyfikatora konta
Nazwa pospolita | opis | Zmienna środowiskowa |
.databrickscfg field, Terraform field |
Config pole |
---|---|---|---|---|
Host usługi Azure Databricks | (Ciąg) Adres URL hosta usługi Azure Databricks dla punktu końcowego obszaru roboczego usługi Azure Databricks lub punktu końcowego kont usługi Azure Databricks. | DATABRICKS_HOST |
host |
host (Python),setHost (Java),Host (Go) |
Token usługi Azure Databricks | (Ciąg) Osobisty token dostępu usługi Azure Databricks lub token identyfikatora entra firmy Microsoft. | DATABRICKS_TOKEN |
token |
token (Python),setToken (Java),Token (Go) |
Identyfikator konta usługi Azure Databricks | (Ciąg) Identyfikator konta usługi Azure Databricks dla punktu końcowego konta usługi Azure Databricks. Ma to wpływ tylko wtedy, gdy host usługi Azure Databricks jest również set dohttps://accounts.azuredatabricks.net . |
DATABRICKS_ACCOUNT_ID |
account_id |
account_id (Python),setAccountID (Java),AccountID (Go) |
Zmienne środowiskowe i pola specyficzne dla platformy Azure
Nazwa pospolita | opis | Zmienna środowiskowa |
.databrickscfg field, Terraform field |
Config pole |
---|---|---|---|---|
Identyfikator klienta platformy Azure | (Ciąg) Identyfikator aplikacji jednostki usługi Microsoft Entra ID. Używanie z uwierzytelnianiem tożsamości zarządzanych platformy Azure i uwierzytelnianiem jednostki usługi Microsoft Entra ID. | ARM_CLIENT_ID |
azure_client_id |
azure_client_id (Python),setAzureClientID (Java),AzureClientID (Go) |
Wpis tajny klienta platformy Azure | (Ciąg) Wpis tajny klienta jednostki usługi Microsoft Entra ID. Użyj z uwierzytelnianiem jednostki usługi Microsoft Entra ID. | ARM_CLIENT_SECRET |
azure_client_secret |
azure_client_secret (Python),setAzureClientSecret (Java),AzureClientSecret (Go) |
Client ID | (Ciąg) Identyfikator klienta jednostki usługi zarządzanej usługi Azure Databricks lub jednostki usługi zarządzanej microsoft Entra ID. Użyj z uwierzytelnianiem OAuth M2M. | DATABRICKS_CLIENT_ID |
client_id |
client_id (Python),setClientId (Java),ClientId (Go) |
Klucz tajny klienta | (Ciąg) Wpis tajny klienta jednostki usługi zarządzanej usługi Azure Databricks lub jednostki usługi zarządzanej microsoft Entra ID. Użyj z uwierzytelnianiem OAuth M2M. | DATABRICKS_CLIENT_SECRET |
client_secret |
client_secret (Python),setClientSecret (Java),ClientSecret (Go) |
Środowisko platformy Azure | (Ciąg) Typ środowiska platformy Azure. Wartość domyślna to PUBLIC . |
ARM_ENVIRONMENT |
azure_environment |
azure_environment (Python),setAzureEnvironment (Java),AzureEnvironment (Go) |
Identyfikator dzierżawy platformy Azure | (Ciąg) Identyfikator dzierżawy jednostki usługi Entra firmy Microsoft. | ARM_TENANT_ID |
azure_tenant_id |
azure_tenant_id (Python),setAzureTenantID (Java),AzureTenantID (Go) |
Korzystanie z tożsamości usługi zarządzanej na platformie Azure | (Wartość logiczna) Wartość True do korzystania z przepływu uwierzytelniania bez hasła tożsamości usługi zarządzanej platformy Azure dla jednostek usługi. Wymagany jest także identyfikator zasobu platformy Azure o numerze set. | ARM_USE_MSI |
azure_use_msi |
AzureUseMSI (Go) |
Identyfikator zasobu platformy Azure | (Ciąg) Identyfikator usługi Azure Resource Manager dla obszaru roboczego usługi Azure Databricks. | DATABRICKS_AZURE_RESOURCE_ID |
azure_workspace_resource_id |
azure_workspace_resource_id (Python),setAzureResourceID (Java),AzureResourceID (Go) |
zmienne środowiskowe i pola specyficzne dla .databrickscfg
Użyj tych zmiennych środowiskowych lub pól, aby określić ustawienia inne niż domyślne dla elementu .databrickscfg
. Zobacz również profile konfiguracji usługi Azure Databricks.
Nazwa pospolita | opis | Zmienna środowiskowa | Pole Terraform |
Config pole |
---|---|---|---|---|
.databrickscfg ścieżka pliku |
(Ciąg) Ścieżka innej niż domyślna do.databrickscfg plik. |
DATABRICKS_CONFIG_FILE |
config_file |
config_file (Python),setConfigFile (Java),ConfigFile (Go) |
.databrickscfg profil domyślny |
(Ciąg) Domyślny nazwany profil do użycia, inny niż DEFAULT . |
DATABRICKS_CONFIG_PROFILE |
profile |
profile (Python),setProfile (Java),Profile (Go) |
Pole Typ uwierzytelniania
Użyj tej zmiennej środowiskowej lub pola, aby wymusić użycie zestawu SDK do użycia określonego typu uwierzytelniania usługi Databricks.
Nazwa pospolita | opis | Pole Terraform |
Config pole |
---|---|---|---|
Typ uwierzytelniania usługi Databricks | (Ciąg) Jeśli w środowisku jest dostępnych wiele atrybutów uwierzytelniania, użyj typu uwierzytelniania określonego przez ten argument. | auth_type |
auth_type (Python),setAuthType (Java),AuthType (Go) |
Obsługiwane pole typu uwierzytelniania usługi Databricks values obejmują:
oauth-m2m
: Set tę wartość, jeśli używasz jednostki usługi Databricks do uwierzytelniania M2M z protokołem OAuth 2.0. Aby uzyskać więcej informacji, zobacz Uwierzytelnianie dostępu do usługi Azure Databricks przy użyciu jednostki usługi przy użyciu protokołu OAuth (OAuth M2M).pat
: Set tę wartość, jeśli używasz osobistych tokenów dostępu do usługi Databricks. Aby uzyskać więcej informacji, zobacz Uwierzytelnianie osobistego tokenu dostępu w usłudze Azure Databricks.databricks-cli
: Set tę wartość, jeśli używasz interfejsu wiersza polecenia usługi Databricks z uwierzytelnianiem OAuth 2.0. Aby uzyskać więcej informacji, zobacz Uwierzytelnianie dostępu do usługi Azure Databricks przy użyciu konta użytkownika przy użyciu protokołu OAuth (OAuth U2M).azure-msi
: Set tę wartość, jeśli używasz tożsamości usługi zarządzanej (MSI) platformy Microsoft Azure. Aby uzyskać więcej informacji, zobacz Uwierzytelnianie tożsamości zarządzanych platformy Azure.azure-client-secret
: Set tę wartość, jeśli używasz tożsamości usługi platformy Azure z tajnymi kluczami klienta. Aby uzyskać więcej informacji, zobacz Ms Entra service principal authentication (Uwierzytelnianie jednostki usługi MS Entra).