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 przy użyciu określonego typu uwierzytelniania, ustaw pole Typu uwierzytelniania usługi Databricks interfejsu Config
API.
- 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óry próbuje uczestniczyć narzędzie lub zestaw SDK, narzędzie lub zestaw SDK próbuje znaleźć poświadczenia uwierzytelniania w następujących lokalizacjach, w następującej kolejności. Gdy narzędzie lub zestaw SDK zakończy się powodzeniem w znalezieniu poświadczeń uwierzytelniania, które mogą być używane, narzędzie lub zestaw SDK przestaje próbować znaleźć poświadczenia uwierzytelniania w pozostałych lokalizacjach.
- Pola interfejsu API związane z poświadczeniami
Config
(dla zestawów SDK). Aby ustawićConfig
pola, 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 ustawić pola profilu konfiguracji, zobacz (/dev-tools/auth/config-profiles.md). - Wszelkie powiązane poświadczenia uwierzytelniania buforowane przez interfejs wiersza polecenia platformy Azure. Zobacz Uwierzytelnianie interfejsu wiersza polecenia platformy Azure.
Aby zapewnić maksymalną przenośność kodu, usługa Databricks zaleca utworzenie niestandardowego profilu konfiguracji w .databrickscfg
pliku, dodaj poniższe wymagane pola dla docelowego typu uwierzytelniania usługi Databricks do niestandardowego profilu konfiguracji, a następnie ustaw DATABRICKS_CONFIG_PROFILE
zmienną środowiskową na nazwę niestandardowego profilu konfiguracji.
Zmienne środowiskowe i pola dla ujednoliconego uwierzytelniania klienta
W poniższych tabelach wymieniono nazwy i opisy obsługiwanych zmiennych środowiskowych i pól dla ujednoliconego uwierzytelniania klienta usługi Databricks. W poniższych tabelach:
- Zmienna środowiskowa, jeśli ma zastosowanie, to nazwa zmiennej środowiskowej.
.databrickscfg
pole, jeśli ma zastosowanie, to nazwa pola w pliku profilów konfiguracji usługi Azure Databricks lub konfiguracja narzędzia Terraform usługi Databricks. Aby ustawić.databrickscfg
pola, zobacz Profile konfiguracji usługi Azure Databricks.- Pole Terraform, jeśli ma zastosowanie, to nazwa pola w konfiguracji narzędzia Terraform usługi Databricks. Aby ustawić pola narzędzia Terraform usługi Databricks, zobacz Uwierzytelnianie 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 wpływ tylko wtedy, gdy host usługi Azure Databricks jest również ustawiony na wartośćhttps://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. Wymaga również ustawienia identyfikatora zasobu platformy Azure. | 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) |
.databrickscfg specyficzne dla zmiennych środowiskowych i pól
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 wartości pól typu uwierzytelniania usługi Databricks obejmują:
pat
: Uwierzytelnianie osobistego tokenu dostępu w usłudze Azure Databricksdatabricks-cli
: (/dev-tools/auth/oauth-u2m.md)azure-msi
: Uwierzytelnianie tożsamości zarządzanych platformy Azureazure-client-secret
: Uwierzytelnianie jednostki usługi MS Entraazure-cli
: Uwierzytelnianie interfejsu wiersza polecenia platformy Azure