Autenticazione unificata del client Databricks

L'autenticazione unificata del client Databricks centralizza la configurazione e l'automazione dell'autenticazione in Azure Databricks. Consente di configurare l'autenticazione di Databricks una sola volta e quindi di usarla tra più strumenti e SDK di Databricks senza ulteriori modifiche alla configurazione dell'autenticazione.

Strumenti e SDK partecipanti

I partecipanti agli strumenti e agli SDK di Databricks includono:

Tutti gli strumenti e gli SDK partecipanti accettano variabili di ambiente speciali e profili di configurazione di Azure Databricks per l'autenticazione. Il provider Databricks Terraform e gli SDK di Databricks per Python, Java e Go accettano anche la configurazione diretta delle impostazioni di autenticazione all'interno del codice. Per informazioni dettagliate, vedere Strumenti di sviluppo per la documentazione dello strumento o dell'SDK.

Metodi predefiniti per l'autenticazione unificata client

Ogni volta che uno strumento o un SDK deve eseguire l'autenticazione in Azure Databricks, prova i tipi di autenticazione seguenti nell'ordine seguente per impostazione predefinita. Quando lo strumento o l'SDK ha esito positivo con il tipo di autenticazione che prova, interrompe il tentativo di autenticazione con i tipi di autenticazione rimanenti. Per forzare l'autenticazione di un SDK con un tipo di autenticazione specifico, impostare il campo tipo di autenticazione Databricks dell'API Config.

  1. Autenticazione con token di accesso personale di Azure Databricks
  2. Autenticare l'accesso ad Azure Databricks con un'entità servizio usando OAuth (OAuth M2M)
  3. Autenticare l'accesso ad Azure Databricks con un account utente usando OAuth (OAuth U2M)
  4. Autenticazione delle identità gestite di Azure
  5. Autenticazione dell’entità servizio di MS Entra
  6. Autenticazione con interfaccia della riga di comando di Azure

Per ogni tipo di autenticazione che tenta lo strumento o l'SDK partecipante, lo strumento o l'SDK tenta di trovare le credenziali di autenticazione nei percorsi seguenti, nell'ordine seguente. Quando lo strumento o l'SDK riesce a trovare le credenziali di autenticazione che è possibile usare, lo strumento o l'SDK smette di cercare le credenziali di autenticazione nelle posizioni rimanenti.

  1. Campi API correlati alle credenziali Config (per SDK). Per impostare i campi Config, consultare la documentazione di riferimento dell'SDK.
  2. Variabili di ambiente per le credenziali.
  3. Campi correlati alle credenziali nel profilo di configurazione DEFAULT all'interno del file .databrickscfg. Per impostare i campi del profilo di configurazione, consultare (/dev-tools/auth/config-profiles.md).
  4. Tutte le credenziali di autenticazione correlate memorizzate nella cache dall'interfaccia della riga di comando di Azure. Vedere Autenticazione con interfaccia della riga di comando di Azure.

Per garantire la massima portabilità per il codice, Databricks consiglia di creare un profilo di configurazione personalizzato all'interno del file .databrickscfg, aggiungere i campi seguenti per il tipo di autenticazione di Databricks di destinazione al profilo di configurazione personalizzato e quindi impostare la variabile di ambiente DATABRICKS_CONFIG_PROFILE sul nome del profilo di configurazione personalizzato.

Variabili di ambiente e campi per l'autenticazione unificata client

Le tabelle seguenti elencano i nomi e le descrizioni delle variabili di ambiente e dei campi supportati per l'autenticazione unificata del client Databricks. Nelle tabelle seguenti:

  • La variabile di ambiente, se applicabile, è il nome della variabile di ambiente.
  • .databrickscfg campo, se applicabile, è il nome del campo all'interno di un file di profili di configurazione di Azure Databricks o configurazione di Databricks Terraform. Per impostare i campi .databrickscfg, consultare Profili di configurazione di Azure Databricks.
  • Il campo Terraform, se applicabile, è il nome del campo all'interno di una configurazione di Databricks Terraform. Per impostare i campi Databricks Terraform, consultare Autenticazione nella documentazione del provider Databricks Terraform.
  • Config field è il nome del campo all'interno dell'API per l'SDK Config specificato.

Campi e variabili di ambiente host generale, token e ID account

Nome comune Descrizione Variabile di ambiente .databrickscfg campo, campo Terraform Campo diConfig
Host Azure Databricks (Stringa) URL host di Azure Databricks per l'endpoint dell'area di lavoro di Azure Databricks o l'endpoint degli account Azure Databricks. DATABRICKS_HOST host host (Python),
setHost (Java),
Host (Go)
Token Azure Databricks (Stringa) Token di accesso personale di Azure Databricks o token ID Microsoft Entra. DATABRICKS_TOKEN token token (Python),
setToken (Java),
Token (Go)
Azure Databricks account ID (String) ID dell'account Azure Databricks per l'endpoint dell'account Azure Databricks. Ha effetto solo quando l'host di Azure Databricks è impostato su
https://accounts.azuredatabricks.net.
DATABRICKS_ACCOUNT_ID account_id account_id (Python),
setAccountID (Java),
AccountID (Go)

Campi e variabili di ambiente specifici di Azure

Nome comune Descrizione Variabile di ambiente .databrickscfg campo, campo Terraform Campo diConfig
ID client di Azure (Stringa) Entità servizio o applicazione ID in Microsoft Entra ID. Usare con l'autenticazione delle identità gestite di Azure e l'autenticazione dell'entità servizio Microsoft Entra ID. ARM_CLIENT_ID azure_client_id azure_client_id (Python),
setAzureClientID (Java),
AzureClientID (Go)
Segreto client di Azure (Stringa) Segreto client dell'entità servizio Microsoft Entra ID. Usare con un’autenticazione entità servizio di Microsoft Entra ID. ARM_CLIENT_SECRET azure_client_secret azure_client_secret (Python),
setAzureClientSecret (Java),
AzureClientSecret (Go)
ID client (Stringa) L’ID cliente delle entità servizio gestite di Azure Databricks o entità servizio gestite di Microsoft Entra ID. Usare con l'autenticazione M2M OAuth. DATABRICKS_CLIENT_ID client_id client_id (Python),
setClientId (Java),
ClientId (Go)
Segreto client (Stringa) Il segreto cliente delle entità servizio gestite di Azure Databricks o entità servizio gestite di Microsoft Entra ID. Usare con l'autenticazione M2M OAuth. DATABRICKS_CLIENT_SECRET client_secret client_secret (Python),
setClientSecret (Java),
ClientSecret (Go)
Ambiente di Azure (Stringa) Tipo di ambiente Azure. Il valore predefinito è PUBLIC. ARM_ENVIRONMENT azure_environment azure_environment (Python),
setAzureEnvironment (Java),
AzureEnvironment (Go)
ID tenant di Azure (Stringa) Entità servizio o tenant ID in Microsoft Entra ID. ARM_TENANT_ID azure_tenant_id azure_tenant_id (Python),
setAzureTenantID (Java),
AzureTenantID (Go)
Usare l’identità del servizio gestita di Azure (Boolean) True per usare il flusso di autenticazione senza password dell'identità del servizio gestito di Azure per le entità servizio. Richiede che sia impostato anche l'ID risorsa di Azure. ARM_USE_MSI azure_use_msi AzureUseMSI (Go)
ID risorsa di Azure (Stringa) ID di Azure Resource Manager per l'area di lavoro di Azure Databricks. DATABRICKS_AZURE_RESOURCE_ID azure_workspace_resource_id azure_workspace_resource_id (Python),
setAzureResourceID (Java),
AzureResourceID (Go)

Campi e variabili di ambiente specifici di .databrickscfg

Usare queste variabili di ambiente o i campi per specificare le impostazioni non predefinite per .databrickscfg. Consultare anche Profili di configurazione di Azure Databricks.

Nome comune Descrizione Variabile di ambiente Campo Terraform Campo diConfig
Percorso file .databrickscfg (String) Percorso non predefinito del
File .databrickscfg.
DATABRICKS_CONFIG_FILE config_file config_file (Python),
setConfigFile (Java),
ConfigFile (Go)
Profilo predefinito .databrickscfg (Stringa) Il profilo denominato predefinito da usare, diverso da DEFAULT. DATABRICKS_CONFIG_PROFILE profile profile (Python),
setProfile (Java),
Profile (Go)

Campo Tipo di autenticazione

Usare questa variabile o campo di ambiente per forzare un SDK a usare un tipo specifico di autenticazione di Databricks.

Nome comune Descrizione Campo Terraform Campo diConfig
Tipo di autenticazione di Databricks (Stringa) Quando nell'ambiente sono disponibili più attributi di autenticazione, usare il tipo di autenticazione specificato da questo argomento. auth_type auth_type (Python),
setAuthType (Java),
AuthType (Go)

I valori dei campi del tipo di autenticazione di Databricks supportati includono: