Condividi tramite


Autenticazione unificata del client Databricks

L'autenticazione unificata del client Databricks centralizza la configurazione e l'automazione dell'autenticazione in Azure Databricks come parte dell'autorizzazione OAuth. 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 locali per la documentazione dello strumento o dell'SDK.

Metodi predefiniti per l'autenticazione unificata client

Ogni volta che uno strumento o un SDK deve autorizzare l'accesso ad 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 Config campo tipo di autenticazione Databricks dell'API.

  1. Autenticazione con token di accesso personale di Azure Databricks
  2. Autorizzare l'accesso non presidiato alle risorse di Azure Databricks con un'entità servizio usando OAuth
  3. Autorizzare l'accesso interattivo alle risorse di Azure Databricks con un account utente usando OAuth
  4. Autenticazione delle identità gestite di Azure
  5. Autenticazione del principale del 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 Config i campi, vedere 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, vedere (/dev-tools/auth/config-profiles.md).
  4. Tutte le credenziali di autenticazione correlate memorizzate nella cache dalla CLI 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 .databrickscfg file, aggiungere i campi obbligatori seguenti per il tipo di autenticazione databricks di destinazione al profilo di configurazione personalizzato e quindi impostare la DATABRICKS_CONFIG_PROFILE variabile di ambiente sul nome del profilo di configurazione personalizzato.

Variabili di ambiente e campi per l'autenticazione client unificata

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:

  • 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. Per impostare i campi .databrickscfg, consultare i profili di configurazione di Azure Databricks .
  • campo Terraform, se applicabile, è il nome del campo nella configurazione di Databricks Terraform. Per impostare i campi Databricks Terraform, vedere Authentication nella documentazione del provider Databricks Terraform.
  • Config field è il nome del campo all'interno dell'API per l'SDK Config specificato.

Variabili di ambiente e campi di host generale, token e ID account

Nome comune Descrizione Variabile di ambiente .databrickscfg campo, campo Terraform Config Campo
Host di 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 (Vai)
Token di Azure Databricks (Stringa) Token di accesso personale di Azure Databricks o token ID Microsoft Entra. DATABRICKS_TOKEN token token (Python),
setToken (Java),
Token (Vai)
ID account di Azure Databricks (String) ID dell'account Azure Databricks per l'endpoint Azure Databricks. Ha effetto solo quando l'host di Azure Databricks è impostato anche su https://accounts.azuredatabricks.net. DATABRICKS_ACCOUNT_ID account_id account_id (Python),
setAccountID (Java),
AccountID (Vai)

Campi e variabili di ambiente specifici di Azure

Nome comune Descrizione Variabile di ambiente .databrickscfg campo, campo Terraform Config Campo
ID client di Azure (String) ID applicazione del principale di servizio Microsoft Entra ID. Usare con l'autenticazione delle identità gestite di Azure e l'autenticazione del principale servizio Microsoft Entra ID. ARM_CLIENT_ID azure_client_id azure_client_id (Python),
setAzureClientID (Java),
AzureClientID (Vai)
Segreto del client di Azure (String) Segreto del client principale del servizio Microsoft Entra ID. Usare con un'autenticazione principale del servizio di Microsoft Entra ID. ARM_CLIENT_SECRET azure_client_secret azure_client_secret (Python),
setAzureClientSecret (Java),
AzureClientSecret (Vai)
ID cliente (Stringa) L'ID cliente dell'entità servizio gestita di Azure Databricks o dell'entità servizio gestita di Microsoft Entra ID. Utilizzare con autenticazione OAuth M2M. DATABRICKS_CLIENT_ID client_id client_id (Python),
setClientId (Java),
ClientId (Vai)
Segreto applicativo client (Stringa) Il segreto d'applicazione del principale del servizio gestito di Azure Databricks o del principale del servizio gestito di Microsoft Entra ID. Utilizzare con autenticazione OAuth M2M. DATABRICKS_CLIENT_SECRET client_secret client_secret (Python),
setClientSecret (Java),
ClientSecret (Vai)
Ambiente di Azure Tipo dell'ambiente Azure. Il valore predefinito è PUBLIC. ARM_ENVIRONMENT azure_environment azure_environment (Python),
setAzureEnvironment (Java),
AzureEnvironment (Vai)
ID tenant di Azure (String) ID del tenant del principale del servizio di Microsoft Entra ID. ARM_TENANT_ID azure_tenant_id azure_tenant_id (Python),
setAzureTenantID (Java),
AzureTenantID (Vai)
Uso di MSI in Azure (Boolean) True per usare il flusso di autenticazione senza password di Azure Managed Service Identity per i principali di servizio. Richiede che sia impostato anche l'ID risorsa di Azure. ARM_USE_MSI azure_use_msi AzureUseMSI (Vai)
ID risorsa di Azure (Stringa) ID dell'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 (Vai)

variabili di ambiente e campi 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 Config Campo
Percorso del file .databrickscfg (String) Un percorso non predefinito per il
File .databrickscfg.
DATABRICKS_CONFIG_FILE config_file config_file (Python),
setConfigFile (Java),
ConfigFile (Vai)
Profilo predefinito .databrickscfg (Stringa) Il profilo predefinito da utilizzare, diverso da DEFAULT. DATABRICKS_CONFIG_PROFILE profile profile (Python),
setProfile (Java),
Profile (Vai)

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 Variabile di ambiente Campo Terraform Config Campo
Tipo di autenticazione di Databricks (Stringa) Quando nell'ambiente sono disponibili più attributi di autenticazione, usare il tipo di autenticazione specificato da questo argomento. DATABRICKS_AUTH_TYPE auth_type auth_type (Python)
setAuthType (Java)
AuthType (Vai)

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

  • azure-msi: Impostare questo valore quando si utilizza un'identità del servizio gestito di Azure. Per altri dettagli, vedere Autenticazione delle identità gestite di Azure.
  • azure-client-secret: impostare questo valore se si usa un principal del servizio Azure con segreti del client. Per ulteriori dettagli, vedere Autenticazione del principale del servizio MS Entra.