Condividi tramite


auth gruppo di comandi

Nota

Queste informazioni si applicano all'interfaccia della riga di comando di Databricks versione 0.205 e successive. L'interfaccia della riga di comando di Databricks è disponibile in anteprima pubblica.

L'uso dell'interfaccia della riga di comando di Databricks è soggetto all'Informativa sulla privacy di Databricks e databricks, incluse eventuali disposizioni sui dati di utilizzo.

Il gruppo auth di comandi all'interno Databricks CLI consente di:

  • Elencare i profili di configurazione di autenticazione disponibili.
  • Ottenere informazioni su un singolo profilo di configurazione di autenticazione.
  • Usare l'autenticazione da utente a computer (U2M) OAuth per autenticare il Databricks CLI con gli account e le aree di lavoro di Azure Databricks.
  • Ottenere informazioni sui token di accesso OAuth che l'interfaccia riga di comando di Databricks potrebbe avere memorizzato nella cache.
  • Ottenere informazioni dettagliate sulla configurazione usata dall'interfaccia della riga di comando di Databricks per l'autenticazione.

I comandi auth vengono eseguiti aggiungendoli a databricks auth. Per visualizzare il supporto per il comando auth, esegui databricks auth -h.

Elencare i profili di configurazione

Per ottenere un elenco di tutti i profili di configurazione disponibili e per verificare se sono validi, eseguire il comando auth profiles, come indicato di seguito:

databricks auth profiles

Output (i puntini di sospensione rappresentano il contenuto omesso, per brevità):

Name            Host                Valid
DEFAULT         https://<host-url>  YES
<profile-name>  https://<host-url>  NO

Per determinare se ogni profilo è valido, il CLI di Databricks esegue un comando list workspaces per ogni profilo a livello di account ed esegue un comando get current user per ogni profilo a livello di area di lavoro. Se il comando ha esito positivo, viene visualizzato un oggetto YES; in caso contrario, viene visualizzato un oggetto NO.

L'output del comando auth profiles non visualizza token di accesso. Per visualizzare un token di accesso, vedere Ottenere informazioni su un profilo di configurazione.

I profili di configurazione vengono archiviati nel file ~/.databrickscfg in Linux o macOS o %USERPROFILE%\.databrickscfg in Windows per impostazione predefinita. Puoi cambiare il percorso predefinito di questo file impostando la variabile d'ambiente K. DATABRICKS_CONFIG_FILE. Per informazioni su come impostare le variabili di ambiente, vedere la documentazione del sistema operativo.

Per creare profili di configurazione, consultare il gruppo di comandi configure.

Ottenere informazioni su un profilo di configurazione

Per ottenere informazioni su un profilo di configurazione esistente, eseguire il comando auth env, dove <profile-name> rappresenta il nome del profilo e <account-or-workspace-url> rappresenta l'URL della console dell'account Azure Databricks o l'URL dell'area di lavoro di Azure Databricks, come indicato di seguito:

databricks auth env --profile <profile-name>

# Or:
databricks auth env --host <account-or-workspace-url>

Suggerimento

È possibile premere Tab dopo --profile o -p per visualizzare un elenco di profili di configurazione disponibili esistenti tra cui scegliere, anziché immettere manualmente il nome del profilo di configurazione.

Ecco ad esempio l'output di un profilo configurato con l'autenticazione del token di accesso di Azure Databricks:

{
  "env": {
    "DATABRICKS_AUTH_TYPE": "pat",
    "DATABRICKS_CONFIG_PROFILE": "<profile-name>",
    "DATABRICKS_HOST": "<workspace-url>",
    "DATABRICKS_TOKEN": "<token-value>"
  }
}

Nota

Se più profili corrispondono al valore --host, viene visualizzato un errore che indica che non è possibile trovare un singolo profilo corrispondente. Ad esempio, si potrebbe avere un profilo con solo un valore host e un altro profilo con lo stesso valore host, ma anche un valore del token. In questo caso, il Databricks CLI non sceglie un profilo e si arresta. Per aiutare il Databricks CLI a scegliere il profilo desiderato, provare a specificare un valore --host diverso . Per valori --host che sono URL della console dell'account, provare a specificare un valore --account-id anziché un valore --host.

Per creare profili di configurazione, consulta il gruppo di comandi configure.

Eseguire l'autenticazione con OAuth

Anziché eseguire l'autenticazione con Azure Databricks usando i token di accesso e i profili di configurazione, è possibile usare l'autenticazione da utente a computer (U2M) OAuth. OAuth fornisce token con tempi di scadenza più rapidi rispetto ai token di accesso personale di Azure Databricks e offre una migliore invalidazione della sessione lato server e una gestione più precisa dell’ ambito. Poiché i token di accesso OAuth scadono in meno di un'ora, questo riduce il rischio associato all'inserimento accidentale dei token nel controllo del codice sorgente. Vedere Autorizzare l'accesso interattivo alle risorse di Azure Databricks con un account utente usando OAuth.

Per configurare l'autenticazione U2M OAuth, vedere autenticazione da utente a macchina (U2M) OAuth.

Ottenere i dettagli del token di accesso OAuth

Per visualizzare informazioni sul token di accesso OAuth memorizzato nella cache generato in precedenza dall'interfaccia della riga di comando di Databricks per un'area di lavoro di Azure Databricks, eseguire il comando auth token, dove <workspace-url> rappresenta l'URL dell'area di lavoro di Azure Databricks, come indicato di seguito:

databricks auth token <workspace-url>

Output:

{
  "access_token": "<token-value>",
  "token_type": "Bearer",
  "expiry": "<token-expiration-date-time>"
}

Ottenere i dettagli di autenticazione

Per ottenere informazioni dettagliate sulla configurazione usata dall'interfaccia della riga di comando di Databricks per l'autenticazione, eseguire il comando auth describe.

Se non vengono specificate opzioni, il comando auth describe segue i metodi Default per l'autenticazione unificata client.

databricks auth describe

Output:

Host: https://<workspace-instance-name>
User: <user-name>@<domain>
Authenticated with: <authentication-type>
-----
Current configuration:
  ✓ host: https://<workspace-instance-name> (from <path>/<to>/.databrickscfg config file)
  ✓ profile: default
  ✓ auth_type: <authentication-type> (from <path>/<to>/.databrickscfg config file)

Per specificare che vengono usate informazioni su un'area di lavoro specifica di Azure Databricks, specificare l'opzione --host insieme all'URL dell'area di lavoro.

databricks auth describe --host https://<workspace-instance-name>

Output:

Host: https://<workspace-instance-name>
User: <user-name>@<domain>
Authenticated with: <authentication-type>
-----
Current configuration:
  ✓ host: https://<workspace-instance-name> (from --host flag)
  ✓ profile: default
  ✓ auth_type: <authentication-type>

Per specificare che vengono usate informazioni su un account Azure Databricks specifico, specificare l'opzione --host insieme all'URL della console dell'account Azure Databricks, https://accounts.azuredatabricks.net.

databricks auth describe --host <account-console-url>

Output:

Host: <account-console-url>
User: <user-name>@<domain>
AccountId: <account-id>
Authenticated with: <authentication-type>
-----
Current configuration:
  ✓ host: <account-console-url> (from --host flag)
  ✓ account_id: <account-id>
  ✓ profile: default
  ✓ auth_type: <authentication-type>

Per specificare che vengono usate informazioni su un profilo di configurazione specifico di Azure Databricks, specificare l'opzione -p o --profile insieme al nome del profilo.

databricks auth describe -p <profile-name>

Output:

Host: https://<workspace-instance-name>
User: <user-name>@<domain>
Authenticated with: <authentication-type>
-----
Current configuration:
  ✓ host: https://<workspace-instance-name> (from <path>/<to>/.databrickscfg config file)
  ✓ token: ******** (from <path>/<to>/.databrickscfg config file)
  ✓ profile: <profile-name> (from --profile flag)
  ✓ auth_type: <authentication-type>

Per includere informazioni riservate nell'output, ad esempio token di accesso personali e segreti client di Azure Databricks, specificare --sensitive l'opzione.

databricks auth describe --sensitive

Output:

Host: https://<workspace-instance-name>
User: <user-name>@<domain>
Authenticated with: pat
-----
Current configuration:
  ✓ host: https://<workspace-instance-name> (from <path>/<to>/.databrickscfg config file)
  ✓ token: <token-value> (from <path>/<to>/.databrickscfg config file)
  ✓ profile: <profile-name>
  ✓ auth_type: pat