Dela via


Enhetlig autentisering för Databricks-klienten

Databricks-klientens enhetliga autentisering centraliserar konfiguration och automatisering av autentisering till Azure Databricks som en del av OAuth-auktorisering. Det gör att du kan konfigurera Databricks-autentisering en gång och sedan använda den konfigurationen över flera Databricks-verktyg och SDK:er utan ytterligare autentiseringskonfigurationsändringar.

Deltagande verktyg och SDK:er

Deltagande Databricks-verktyg och SDK:er inkluderar:

Alla deltagande verktyg och SDK:er accepterar särskilda miljövariabler och Azure Databricks-konfigurationsprofiler för autentisering. Databricks Terraform-providern och Databricks SDK:erna för Python, Java och Go accepterar också direkt konfiguration av autentiseringsinställningar i kod. Mer information finns i Lokala utvecklingsverktyg för verktygets eller SDK:s dokumentation.

Standardmetoder för klientadenad autentisering

När ett verktyg eller SDK måste auktorisera åtkomst till Azure Databricks, provar det följande typer av autentisering i följande ordning som standard. När verktyget eller SDK:n lyckas med den typ av autentisering som det försöker, slutar det att försöka autentisera med de återstående autentiseringstyperna. Om du vill tvinga en SDK att autentisera med en specifik autentiseringstyp anger du fältet Config API:ets Databricks-autentiseringstyp.

  1. Autentisering av personliga Azure Databricks-åtkomsttoken
  2. Auktorisera obevakad åtkomst till Azure Databricks-resurser med ett tjänstehuvudnamn genom OAuth
  3. Auktorisera interaktiv åtkomst till Azure Databricks-resurser med ett användarkonto med OAuth-
  4. Azure-hanterad identitetsautentisering
  5. MS Entra-tjänstens huvudnamnsautentisering
  6. Azure CLI-autentisering

För varje autentiseringstyp som det deltagande verktyget eller SDK:t försöker försöker verktyget eller SDK:t hitta autentiseringsuppgifter på följande platser i följande ordning. När verktyget eller SDK:n lyckas hitta autentiseringsuppgifter som kan användas slutar verktyget eller SDK:n att försöka hitta autentiseringsuppgifter på de återstående platserna.

  1. Api-fält relaterade till Config autentiseringsuppgifter (för SDK:er). Information om hur du anger Config fält finns i SDK:s referensdokumentation.
  2. Miljövariabler relaterade till autentiseringsuppgifter.
  3. Autentiseringsrelaterade fält i konfigurationsprofilen DEFAULT i .databrickscfg filen. Information om hur du anger konfigurationsprofilfält finns i (/dev-tools/auth/config-profiles.md).
  4. Alla relaterade autentiseringsuppgifter som cachelagras av Azure CLI. Se Azure CLI-autentisering.

För att ge maximal portabilitet för din kod rekommenderar Databricks att du skapar en anpassad konfigurationsprofil i filen .databrickscfg, lägger till fälten nedan för din databricks-målautentiseringstyp i den anpassade konfigurationsprofilen och anger sedan miljövariabeln DATABRICKS_CONFIG_PROFILE till namnet på den anpassade konfigurationsprofilen.

Miljövariabler och fält för klientadenad autentisering

I följande tabeller visas namn och beskrivningar av miljövariabler och fält som stöds för enhetlig autentisering med Databricks-klienten. I följande tabeller:

  • Miljövariabeln, om tillämpligt, är namnet på miljövariabeln.
  • .databrickscfg fältet, där det är tillämpligt, är namnet på fältet i en Azure Databricks-konfigurationsprofilfil eller Databricks Terraform-konfiguration. För att ställa in .databrickscfg-fält, se Azure Databricks-konfigurationsprofiler.
  • Terraform-fältet, där det är tillämpligt, är namnet på fältet i en Databricks Terraform-konfiguration. Information om hur du anger Databricks Terraform-fält finns i Authentication i dokumentationen för Databricks Terraform-providern.
  • Config fältet är namnet på fältet i API:et Config för angivet SDK.

Allmänna miljövariabler och fält för värd-, token- och konto-ID

Allmänt namn beskrivning Miljövariabel .databrickscfg fält, Terraform-fält Config fält
Azure Databricks-värd (Sträng) Azure Databricks-värd-URL:en för antingen Slutpunkten för Azure Databricks-arbetsytan eller Slutpunkten för Azure Databricks-konton. DATABRICKS_HOST host host (Python),
setHost (Java),
Host (Gå)
Azure Databricks-token (Sträng) Personlig åtkomsttoken för Azure Databricks eller Microsoft Entra ID-token. DATABRICKS_TOKEN token token (Python),
setToken (Java),
Token (Gå)
Azure Databricks-konto-ID (Sträng) Azure Databricks-konto-ID för Azure Databricks-kontoslutpunkten. Har endast effekt när Azure Databricks-värdet också är inställt på
https://accounts.azuredatabricks.net.
DATABRICKS_ACCOUNT_ID account_id account_id (Python),
setAccountID (Java),
AccountID (Gå)

Azure-specifika miljövariabler och fält

Allmänt namn beskrivning Miljövariabel .databrickscfg fält, Terraform-fält Config fält
Azure-klient-ID (Sträng) Microsoft Entra ID-tjänstens huvudnamns program-ID. Använd med Azure-autentisering av hanterade identiteter och autentisering med Tjänstens huvudnamn för Microsoft Entra-ID. ARM_CLIENT_ID azure_client_id azure_client_id (Python),
setAzureClientID (Java),
AzureClientID (Gå)
Azure-klienthemlighet (Sträng) Microsoft Entra ID-tjänstens huvudnamns klienthemlighet. Använd med autentisering med tjänstens huvudnamn för Microsoft Entra-ID. ARM_CLIENT_SECRET azure_client_secret azure_client_secret (Python),
setAzureClientSecret (Java),
AzureClientSecret (Gå)
Client ID (Sträng) Klient-ID för tjänstens huvudnamn för Azure Databricks eller Microsoft Entra ID managed service principal. Använd med OAuth M2M-autentisering. DATABRICKS_CLIENT_ID client_id client_id (Python),
setClientId (Java),
ClientId (Gå)
Klienthemlighet (Sträng) Klienthemligheten för den hanterade Tjänstens huvudnamn för Azure Databricks eller Tjänstens huvudnamn för Microsoft Entra ID. Använd med OAuth M2M-autentisering. DATABRICKS_CLIENT_SECRET client_secret client_secret (Python),
setClientSecret (Java),
ClientSecret (Gå)
Azure-miljö (Sträng) Azure-miljötypen. Standardvärdet är PUBLIC. ARM_ENVIRONMENT azure_environment azure_environment (Python),
setAzureEnvironment (Java),
AzureEnvironment (Gå)
Azure-klientorganisations-ID (Sträng) Microsoft Entra ID-tjänstens huvudnamns klientorganisations-ID. ARM_TENANT_ID azure_tenant_id azure_tenant_id (Python),
setAzureTenantID (Java),
AzureTenantID (Gå)
Azure använder MSI (Booleskt) Sant att använda lösenordslöst autentiseringsflöde för Azure Managed Service Identity för tjänstens huvudnamn. Kräver att Azure-resurs-ID:t också anges. ARM_USE_MSI azure_use_msi AzureUseMSI (Gå)
Azure-resurs-ID (Sträng) Azure Resource Manager-ID för Azure Databricks-arbetsytan. DATABRICKS_AZURE_RESOURCE_ID azure_workspace_resource_id azure_workspace_resource_id (Python),
setAzureResourceID (Java),
AzureResourceID (Gå)

.databrickscfg-specifika miljövariabler och fält

Använd dessa miljövariabler eller fält för att ange icke-standardinställningar för .databrickscfg. Se även Konfigurationsprofiler för Azure Databricks.

Allmänt namn beskrivning Miljövariabel Terraform-fält Config fält
.databrickscfg filsökväg (Sträng) En icke-standardsökväg till
.databrickscfg fil.
DATABRICKS_CONFIG_FILE config_file config_file (Python),
setConfigFile (Java),
ConfigFile (Gå)
.databrickscfg standardprofil (Sträng) Standardprofilen som ska användas, förutom DEFAULT. DATABRICKS_CONFIG_PROFILE profile profile (Python),
setProfile (Java),
Profile (Gå)

Fält för autentiseringstyp

Använd den här miljövariabeln eller fältet för att tvinga en SDK att använda en viss typ av Databricks-autentisering.

Allmänt namn beskrivning Terraform-fält Config fält
Databricks-autentiseringstyp (Sträng) När flera autentiseringsattribut är tillgängliga i miljön använder du den autentiseringstyp som anges av det här argumentet. auth_type auth_type (Python),
setAuthType (Java),
AuthType (Gå)

Fältvärden för Databricks-autentiseringstyp som stöds är: