Condividi tramite


Autenticazione con token di accesso personale di Azure Databricks

I token di accesso personale (PAT) di Azure Databricks vengono usati per autenticare l'accesso alle risorse e alle API a livello di area di lavoro di Azure Databricks. Molti meccanismi di archiviazione per le credenziali e le informazioni correlate, ad esempio variabili di ambiente e profili di configurazione di Azure Databricks, offrono il supporto dei token di accesso personale di Azure Databricks. Anche se gli utenti possono avere più token di accesso personale in un'area di lavoro di Azure Databricks, ogni token di accesso personale funziona per una sola area di lavoro di Azure Databricks. Il numero di token di accesso personale per utente è limitato a 600 per area di lavoro.

Importante

Databricks consiglia l'uso di OAuth invece delle connessioni PAT per l'autenticazione e l'autorizzazione client dell'account utente a causa della maggiore sicurezza di OAuth. Per informazioni su come usare OAuth per eseguire l'autenticazione client con un account utente di Databricks, consultare Autenticare l'accesso ad Azure Databricks con un account utente usando OAuth (OAuth U2M) (per l'autenticazione dell'account utente).

L'autenticazione di base (non basata su token) con un nome utente e una password di Azure Databricks ha raggiunto la fine del ciclo di vita il 10 luglio 2024.

Nota: per automatizzare le funzionalità a livello di account di Azure Databricks, non è possibile usare i token di accesso personale di Azure Databricks. È invece necessario usare i token Microsoft Entra degli amministratori dell'account Azure Databricks. Gli amministratori dell'account Azure Databricks possono essere utenti o entità servizio. Per altre informazioni, vedi:

Token di accesso personale di Azure Databricks per gli utenti dell’area di lavoro

Per creare un token di accesso personale Azure Databricks, eseguire le attività seguenti:

  1. Nell'area di lavoro di Azure Databricks, fare clic sul nome utente di Azure Databricks nella barra superiore, quindi selezionare Impostazioni nell'elenco a discesa.
  2. Fare clic su Sviluppatore.
  3. Accanto a Token di accesso fare clic su Gestisci.
  4. Fare clic su Generare nuovi token.
  5. (Facoltativo) Immettere un commento che consente di identificare questo token in futuro e modificare la durata predefinita del token di 90 giorni. Per creare un token senza durata (scelta non consigliata), lasciare vuota la casella Durata (giorni).
  6. Fare clic su Genera.
  7. Copiare il token visualizzato in un percorso sicuro e quindi fare clic su Fine.

Nota

Assicurarsi di salvare il token copiato in un percorso sicuro. Non condividere il token copiato con altri utenti. Se si perde il token copiato, non è possibile rigenerare lo stesso esatto token. È invece necessario ripetere questa procedura per creare un nuovo token. Se si perde il token copiato o si ritiene che il token sia stato compromesso, Databricks consiglia vivamente di eliminare immediatamente il token dall'area di lavoro facendo clic sull'icona del cestino (Revoca) accanto al token nella pagina Token di accesso.

Se non è possibile creare o usare un token di accesso personale nell'area di lavoro, questo potrebbe essere dovuto al fatto che l'amministratore dell'area di lavoro ha disabilitato i token o non ha concesso l'autorizzazione per creare o usare token. Consultare l'amministratore dell'area di lavoro o i seguenti argomenti:

Token di accesso personale di Azure Databricks per le entità servizio

Un'entità servizio può creare token di accesso personali di Databricks per se stessi, come indicato di seguito:

Nota

Non è possibile usare l'interfaccia utente di Azure Databricks per generare token di accesso personali di Azure Databricks per le entità servizio. Questo processo usa l'interfaccia della riga di comando di Databricks versione 0.205 o successiva per generare un token di accesso per un'entità servizio. Se l'interfaccia della riga di comando di Databricks non è già installata, consultare Installare o aggiornare l'interfaccia della riga di comando di Databricks.

Questa procedura presuppone che si usi l'autenticazione da computer a computer (M2M) OAuth o l'autenticazione dell'entità servizio Microsoft Entra ID per configurare l'interfaccia della riga di comando di Databricks per autenticare l'entità servizio per generare token di accesso personali di Azure Databricks. Consultare Autenticazione da computer a computer (M2M) OAuth o autenticazione dell'entità servizio Microsoft Entra ID.

  1. Usare l'interfaccia della riga di comando di Databricks per eseguire il comando seguente che genera un altro token di accesso per l'entità servizio.

    Esegui questo comando:

    databricks tokens create --comment <comment> --lifetime-seconds <lifetime-seconds> -p <profile-name>
    
    • --comment: sostituire <comment> con un commento significativo sullo scopo del token di accesso. Se l'opzione --comment non è specificata, non viene generato alcun commento.
    • --lifetime-seconds: sostituire <lifetime-seconds> con il numero di secondi in cui il token di accesso è valido. Ad esempio, 1 giorno equivale a 86400 secondi. Se l'opzione --lifetime-seconds non è specificata, il token di accesso viene impostato per non scadere (non consigliato).
    • --profile-name: sostituire <profile-name> con il nome di un profilo di configurazione di Azure Databricks che contiene informazioni di autenticazione per l'entità servizio e l'area di lavoro di destinazione. Se l'opzione -p non è specificata, l'interfaccia della riga di comando di Databricks tenterà di trovare e usare un profilo di configurazione denominato DEFAULT.
  2. Nella risposta copiare il valore di token_value, ovvero il token di accesso per l'entità servizio.

    Assicurarsi di salvare il token copiato in un percorso sicuro. Non condividere il token copiato con altri utenti. Se si perde il token copiato, non è possibile rigenerare lo stesso esatto token. È invece necessario ripetere questa procedura per creare un nuovo token.

    Se non è possibile creare o usare un token di accesso personale nell'area di lavoro, questo potrebbe essere dovuto al fatto che l'amministratore dell'area di lavoro ha disabilitato i token o non ha concesso l'autorizzazione per creare o usare token. Vedere l'amministratore dell'area di lavoro o quanto segue:

Eseguire l'autenticazione con token di accesso personale di Azure Databricks

Per configurare l'autenticazione del token di accesso personale di Azure Databricks, è necessario impostare le variabili di ambiente, .databrickscfg i campi, i campi Terraform o i campi Config:

  • L'host di Azure Databricks, specificato come obiettivo di Azure Databricks URL per area di lavoro, ad esempio https://adb-1234567890123456.7.azuredatabricks.net.
  • Creare un token di accesso personale di Azure Databricks per un account utente di Azure Databricks.

Per eseguire l'autenticazione del token di accesso personale di Azure Databricks, integrare quanto segue all'interno del codice, in base allo strumento o all'SDK partecipante:

Ambiente

Per usare le variabili di ambiente per un tipo di autenticazione di Azure Databricks specifico con uno strumento o un SDK, consultare Autenticare l'accesso alle risorse di Azure Databricks o alla documentazione dello strumento o dell'SDK. Consultare anche Variabili di ambiente e campi per l'autenticazione unificata client e i metodi predefiniti per l'autenticazione unificata client.

Impostare le seguenti variabili di ambiente:

Profilo

Creare o identificare un profilo di configurazione di Azure Databricks con i seguenti campi nel .databrickscfg file. Se si crea il profilo, sostituire i segnaposto con i valori appropriati. Per usare il profilo con uno strumento o un SDK, consultare Autenticare l'accesso alle risorse di Azure Databricks o alla documentazione dello strumento o dell'SDK. Consultare anche Variabili di ambiente e campi per l'autenticazione unificata client e i metodi predefiniti per l'autenticazione unificata client.

Aggiungere i valori seguenti nel file .databrickscfg. In questo caso, l'host è l'URL per area di lavoro di Azure Databricks, ad esempio https://adb-1234567890123456.7.azuredatabricks.net:

[<some-unique-configuration-profile-name>]
host  = <workspace-url>
token = <token>

Anziché impostare manualmente i valori precedenti nel file .databrickscfg, è possibile usare l'interfaccia della riga di comando di Databricks per impostare questi valori, come indicato di seguito:

Nota

La procedura seguente usa l'interfaccia della riga di comando di Databricks per creare un profilo di configurazione di Azure Databricks con il nome DEFAULT. Se si dispone già di un DEFAULT profilo di configurazione, questa procedura sovrascrive il profilo di configurazione DEFAULT esistente.

Per verificare se si dispone già di un DEFAULT profilo di configurazione e per visualizzare le impostazioni di questo profilo, usare l'interfaccia della riga di comando di Databricks per eseguire il comando databricks auth env --profile DEFAULT.

Per creare un profilo di configurazione con un nome diverso da DEFAULT, sostituire la parte DEFAULT di --profile DEFAULT nel comando seguente databricks configure, come illustrato nel passaggio seguente, con un nome diverso per il profilo di configurazione.

  1. Usare l'interfaccia della riga di comando di Databricks per creare un profilo di configurazione di Azure Databricks denominato DEFAULT che usa l'autenticazione del token di accesso personale di Azure Databricks. A tale scopo, usare il comando seguente:

    databricks configure --profile DEFAULT
    
  2. Per il prompt dell'host Databricks immettere l'URL di Azure Databricks per area di lavoro, ad esempio https://adb-1234567890123456.7.azuredatabricks.net.

  3. Per il prompt del token di accesso personale immettere il token di accesso personale di Azure Databricks per l'area di lavoro.

CLI

Per l'interfaccia della riga di comando di Databricks, eseguire il databricks configure comando. Immettere i valori seguenti al prompt:

  • L'host di Azure Databricks, specificato come obiettivo di Azure Databricks URL per area di lavoro, ad esempio https://adb-1234567890123456.7.azuredatabricks.net.
  • Creare un token di accesso personale di Azure Databricks per un account utente di Azure Databricks.

Per ulteriori dettagli, consultare Autenticazione del token di accesso personale di Azure Databricks.

Connessione

Nota

L'autenticazione del token di accesso personale di Azure Databricks è supportata nelle versioni seguenti di Databricks Connect:

  • Per Python, Databricks Connect per Databricks Runtime 13.3 LTS e versioni successive.
  • Per Scala, Databricks Connect per Databricks Runtime 13.3 LTS e versioni successive.

Per Databricks Connect, è possibile usare l'interfaccia della riga di comando di Databricks per impostare i valori nel .databrickscfg file, per le operazioni a livello di area di lavoro di Azure Databricks come specificato nella sezione “Profilo” di questo articolo, come indicato di seguito:

Nota

La procedura seguente usa l'interfaccia della riga di comando di Databricks per creare un profilo di configurazione di Azure Databricks con il nome DEFAULT. Se si dispone già di un DEFAULT profilo di configurazione, questa procedura sovrascrive il profilo di configurazione DEFAULT esistente.

Per verificare se si dispone già di un DEFAULT profilo di configurazione e per visualizzare le impostazioni di questo profilo, usare l'interfaccia della riga di comando di Databricks per eseguire il comando databricks auth env --profile DEFAULT.

Per creare un profilo di configurazione con un nome diverso da DEFAULT, sostituire la DEFAULT parte di --profile DEFAULT nel databricks configure comando come illustrato nel passaggio seguente con un nome diverso per il profilo di configurazione.

  1. Usare l'interfaccia della riga di comando di Databricks per creare un profilo di configurazione di Azure Databricks denominato DEFAULT che usa l'autenticazione del token di accesso personale di Azure Databricks. A tale scopo, usare il comando seguente:

    databricks configure --configure-cluster --profile DEFAULT
    
  2. Per il prompt dell'host Databricks immettere l'URL di Azure Databricks per area di lavoro, ad esempio https://adb-1234567890123456.7.azuredatabricks.net.

  3. Per il prompt del token di accesso personale immettere il token di accesso personale di Azure Databricks per l'area di lavoro.

  4. Nell'elenco dei cluster disponibili visualizzati, usare i tasti freccia su e freccia giù per selezionare il cluster di Azure Databricks di destinazione nell'area di lavoro e quindi premere Enter. È anche possibile digitare qualsiasi parte del nome visualizzato del cluster per filtrare l'elenco dei cluster disponibili.

Altri approcci supportati per Databricks Connect includono quanto segue:

I valori nel file .databrickscfg hanno sempre la precedenza sulle variabili di ambiente.

Per inizializzare il client Databricks Connect con queste variabili di ambiente o valori nel .databrickscfg file, consultare una delle opzioni seguenti:

VS Code

Per l’estensione Databricks per Visual Studio Code, eseguire le operazioni seguenti:

  1. Impostare i valori nel file .databrickscfg per le operazioni a livello di area di lavoro di Azure Databricks come specificato nella sezione “Profilo” di questo articolo.
  2. Nel riquadro Configurazione dell'estensione Databricks per Visual Studio Code fare clic su Configura Databricks.
  3. Nel Riquadro Comandi, per Host Databricks, immettere l'URL per area di lavoro, ad esempio https://adb-1234567890123456.7.azuredatabricks.net e poi cliccare Enter.
  4. Nel Riquadro Comandi selezionare il nome del profilo di destinazione nell'elenco per l'URL.

Per ulteriori dettagli, consultare Configurazione dell'autenticazione per l'estensione Databricks per Visual Studio Code.

Terraform

Per autenticazione predefinita:

provider "databricks" {
  alias = "workspace"
}

Per la configurazione diretta (sostituire i segnaposto retrieve con la propria implementazione per recuperare i valori dalla console o da un altro archivio di configurazione, ad esempio HashiCorp Vault. Consultare anche Provider di insiemi di credenziali). In questo caso, l'host è l'URL per area di lavoro di Azure Databricks, ad esempio https://adb-1234567890123456.7.azuredatabricks.net:

provider "databricks" {
  alias = "workspace"
  host  = <retrieve-workspace-url>
  token = <retrieve-token>
}

Per altre informazioni sull'autenticazione con il provider Databricks Terraform, consultare Autenticazione.

Python

Per autenticazione predefinita:

from databricks.sdk import WorkspaceClient

w = WorkspaceClient()
# ...

Per la configurazione diretta (sostituire i segnaposto retrieve con la propria implementazione per recuperare i valori dalla console o da un altro archivio di configurazione, ad esempio Azure KeyVault). In questo caso, l'host è l'URL per area di lavoro di Azure Databricks, ad esempio https://adb-1234567890123456.7.azuredatabricks.net:

from databricks.sdk import WorkspaceClient

w = WorkspaceClient(
  host  = retrieve_workspace_url(),
  token = retrieve_token()
)
# ...

Per altre informazioni sull'autenticazione con gli strumenti e gli SDK di Databricks che usano Python e che implementano l'autenticazione unificata del client Databricks, consultare:

Java

Per autenticazione predefinita:

import com.databricks.sdk.WorkspaceClient;
// ...
WorkspaceClient w = new WorkspaceClient();
// ...

Per la configurazione diretta (sostituire i segnaposto retrieve con la propria implementazione per recuperare i valori dalla console o da un altro archivio di configurazione, ad esempio Azure KeyVault). In questo caso, l'host è l'URL per area di lavoro di Azure Databricks, ad esempio https://adb-1234567890123456.7.azuredatabricks.net:

import com.databricks.sdk.WorkspaceClient;
import com.databricks.sdk.core.DatabricksConfig;
// ...
DatabricksConfig cfg = new DatabricksConfig()
  .setHost(retrieveWorkspaceUrl())
  .setToken(retrieveToken());
WorkspaceClient w = new WorkspaceClient(cfg);
// ...

Per altre informazioni sull'autenticazione con gli strumenti e gli SDK di Databricks che usano Java e che implementano l’autenticazione unificata del client Databricks, consultare:

Go

Per autenticazione predefinita:

import (
  "github.com/databricks/databricks-sdk-go"
)
// ...
w := databricks.Must(databricks.NewWorkspaceClient())
// ...

Per la configurazione diretta (sostituire i segnaposto retrieve con la propria implementazione per recuperare i valori dalla console o da un altro archivio di configurazione, ad esempio Azure KeyVault). In questo caso, l'host è l'URL per area di lavoro di Azure Databricks, ad esempio https://adb-1234567890123456.7.azuredatabricks.net:

import (
  "github.com/databricks/databricks-sdk-go"
)
// ...
w := databricks.Must(databricks.NewWorkspaceClient(&databricks.Config{
  Host:  retrieveWorkspaceUrl(),
  Token: retrieveToken(),
}))
// ...

Per altre informazioni sull'autenticazione con gli strumenti e gli SDK di Databricks che usano Go e che implementano l'autenticazione unificata del client Databricks, consultare Autenticare Databricks SDK for Go con l'account o l'area di lavoro di Azure Databricks.