Dela via


Azure CLI-autentisering

Azure CLI-autentisering använder Azure CLI för att autentisera den inloggade användaren eller Tjänstens huvudnamn för Microsoft Entra-ID.

Kommentar

Azure Databricks-hanterade tjänstens huvudnamn hanteras direkt i Azure Databricks. Microsoft Entra ID managed service principals hanteras i Microsoft Entra-ID, vilket kräver ytterligare behörigheter. Databricks rekommenderar att du använder OAuth-M2M-autentisering (machine-to-machine) med Azure Databricks-hanterade tjänsthuvudnamn i de flesta scenarier i stället för Azure CLI-autentisering med Microsoft Entra ID-tjänstens huvudnamn. Databricks rekommenderar dock att du använder Azure CLI-autentisering med Microsoft Entra ID-tjänstens huvudprincipaler i fall där du måste autentisera med Azure Databricks och andra Azure-resurser samtidigt.

Om du vill använda OAuth M2M-autentisering med Azure Databricks-hanterade tjänstens huvudnamn i stället för Azure CLI-autentisering med Microsoft Entra ID-tjänstens huvudnamn kan du hoppa över den här artikeln och se Auktorisera obevakad åtkomst till Azure Databricks-resurser med ett huvudnamn för tjänsten med OAuth.

Om du vill konfigurera med Azure Databricks måste du göra följande:

  1. Installera Azure CLI-autentiseringen lokalt.
  2. Använd Azure CLI för att logga in på Azure Databricks genom att köra az login kommandot . Se:
  3. Ange följande associerade miljövariabler, .databrickscfg fält, Terraform-fält eller Config fält:
    • Azure Databricks-värden.
      • För kontoåtgärder anger du https://accounts.azuredatabricks.net.
      • För arbetsyteåtgärder anger du URL:en per arbetsyta, till exempel https://adb-1234567890123456.7.azuredatabricks.net.
    • För kontoåtgärder, Azure Databricks-konto-ID.

Om du vill utföra Azure CLI-autentisering med Azure Databricks integrerar du följande i koden baserat på det deltagande verktyget eller SDK:t:

Environment

Information om hur du använder miljövariabler för en specifik Azure Databricks-autentiseringstyp med ett verktyg eller SDK finns i Auktorisera åtkomst till Azure Databricks-resurser eller verktygets eller SDK:s dokumentation. Se även Miljövariabler och fält för klient enhetlig autentisering och Standardmetoder för klient enhetlig autentisering.

För åtgärder på kontonivåanger du följande miljövariabler:

  • DATABRICKS_HOST, ställ in värdet för din Azure Databricks-kontokonsolens URL, https://accounts.azuredatabricks.net.
  • DATABRICKS_ACCOUNT_ID

Ange följande miljövariabler för åtgärder på arbetsytenivå:

  • DATABRICKS_HOSTställs in på värdet för Azure Databricks-webbadressen för per arbetsyta, till exempel https://adb-1234567890123456.7.azuredatabricks.net.

Profil

Skapa eller identifiera en Azure Databricks-konfigurationsprofil med följande fält i .databrickscfg filen. Om du skapar profilen ersätter du platshållarna med lämpliga värden. Om du vill använda profilen med ett verktyg eller SDK kan du läsa Auktorisera åtkomst till Azure Databricks-resurser eller verktygets eller SDK:s dokumentation. Se även Miljövariabler och fält för klient enhetlig autentisering och Standardmetoder för klient enhetlig autentisering.

För åtgärder på kontonivåanger du följande värden i filen .databrickscfg. I det här fallet är https://accounts.azuredatabricks.netAzure Databricks-kontokonsolens URL:

[<some-unique-configuration-profile-name>]
host       = <account-console-url>
account_id = <account-id>

För åtgärder på arbetsytenivåanger du följande värden i filen .databrickscfg. I det här fallet är värden URL:en för Azure Databricks per arbetsyta, till exempel https://adb-1234567890123456.7.azuredatabricks.net:

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

CLI

Gör något av följande för Databricks CLI:

  • Ange miljövariablerna enligt beskrivningen i avsnittet "Miljö".
  • Ange värdena i din .databrickscfg-fil enligt beskrivningen i avsnittet Profil i den här artikeln.

Miljövariabler har alltid företräde framför värden i din .databrickscfg-fil.

Se även Azure CLI-autentisering.

Anslut

Kommentar

Azure CLI-autentisering stöds i följande Databricks Connect-versioner:

  • För Python, Databricks Connect för Databricks Runtime 13.1 och senare.
  • För Scala, Databricks Connect för Databricks Runtime 13.3 LTS och senare.

För Databricks Connect kan du göra något av följande:

  • Ange värdena i din .databrickscfg-fil för Azure Databricks åtgärder på arbetsytenivå enligt beskrivningen i avsnittet Profil i den här artikeln. Ställ även in cluster_id-miljövariabeln i din profil till URL:en för din -per-arbetsyta, till exempel https://adb-1234567890123456.7.azuredatabricks.net.
  • Ange miljövariablerna för Azure Databricks åtgärder på arbetsytenivå enligt beskrivningen i avsnittet Miljö i den här artikeln. Ange även miljövariabeln DATABRICKS_CLUSTER_ID till din per-arbetsyta URL för , till exempel https://adb-1234567890123456.7.azuredatabricks.net.

Värden i .databrickscfg-filen har alltid företräde framför miljövariabler.

Information om hur du initierar Databricks Connect-klienten med dessa miljövariabler eller värden i din .databrickscfg-fil finns i Compute-konfiguration för Databricks Connect.

VS Code

Gör följande för Databricks-tillägget för Visual Studio Code:

  1. I fönstret Konfiguration klickar du på Konfigurera Databricks.
  2. I kommandopaletten för Databricks Host anger du url:en per arbetsyta, till exempel https://adb-1234567890123456.7.azuredatabricks.netoch trycker sedan på Enter.
  3. Välj Azure CLI-.

Mer information finns i Konfigurera Azure CLI-autentisering.

Terraform

För åtgärder på kontonivå för standardautentisering:

provider "databricks" {
  alias = "accounts"
}

För direkt konfiguration (ersätt retrieve platshållare med din egen implementering för att hämta värdena från konsolen eller något annat konfigurationsarkiv, till exempel HashiCorp Vault. Se även Vault Provider). I det här fallet är https://accounts.azuredatabricks.netAzure Databricks-kontokonsolens URL:

provider "databricks" {
  alias      = "accounts"
  host       = <retrieve-account-console-url>
  account_id = <retrieve-account-id>
}

För åtgärder på arbetsytenivå för standardautentisering:

provider "databricks" {
  alias = "workspace"
}

För direkt konfiguration (ersätt retrieve platshållare med din egen implementering för att hämta värdena från konsolen eller något annat konfigurationsarkiv, till exempel HashiCorp Vault. Se även Vault Provider). I det här fallet är värden URL:en för Azure Databricks per arbetsyta, till exempel https://adb-1234567890123456.7.azuredatabricks.net:

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

Mer information om autentisering med Databricks Terraform-providern finns i Autentisering.

Python

För åtgärder på kontonivå för standardautentisering:

from databricks.sdk import AccountClient

a = AccountClient()
# ...

För direkt konfiguration (ersätt retrieve platshållare med din egen implementering för att hämta värdena från konsolen eller något annat konfigurationsarkiv, till exempel Azure KeyVault). I det här fallet är https://accounts.azuredatabricks.netAzure Databricks-kontokonsolens URL:

from databricks.sdk import AccountClient

a = AccountClient(
  host       = retrieve_account_console_url(),
  account_id = retrieve_account_id()
)
# ...

För åtgärder på arbetsytenivå för standardautentisering:

from databricks.sdk import WorkspaceClient

w = WorkspaceClient()
# ...

För direkt konfiguration (ersätt retrieve platshållare med din egen implementering för att hämta värdena från konsolen eller något annat konfigurationsarkiv, till exempel Azure KeyVault). I det här fallet är värden URL:en för Azure Databricks per arbetsyta, till exempel https://adb-1234567890123456.7.azuredatabricks.net:

from databricks.sdk import WorkspaceClient

w = WorkspaceClient(host = retrieve_workspace_url())
# ...

Mer information om autentisering med Databricks-verktyg och SDK:er som använder Python och som implementerar enhetlig autentisering med Databricks-klienten finns i:

Java

För åtgärder på kontonivå för standardautentisering:

import com.databricks.sdk.AccountClient;
// ...
AccountClient a = new AccountClient();
// ...

För direkt konfiguration (ersätt retrieve platshållare med din egen implementering för att hämta värdena från konsolen eller något annat konfigurationsarkiv, till exempel Azure KeyVault). I det här fallet är https://accounts.azuredatabricks.netAzure Databricks-kontokonsolens URL:

import com.databricks.sdk.AccountClient;
import com.databricks.sdk.core.DatabricksConfig;
// ...
DatabricksConfig cfg = new DatabricksConfig()
  .setHost(retrieveAccountConsoleUrl())
  .setAccountId(retrieveAccountId())
AccountClient a = new AccountClient(cfg);
// ...

För åtgärder på arbetsytenivå för standardautentisering:

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

För direkt konfiguration (ersätt retrieve platshållare med din egen implementering för att hämta värdena från konsolen eller något annat konfigurationsarkiv, till exempel Azure KeyVault). I det här fallet är värden URL:en för Azure Databricks per arbetsyta, till exempel https://adb-1234567890123456.7.azuredatabricks.net:

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

Mer information om autentisering med Databricks-verktyg och SDK:er som använder Java och som implementerar enhetlig autentisering för Databricks-klienten finns i:

Go

För åtgärder på kontonivå för standardautentisering:

import (
  "github.com/databricks/databricks-sdk-go"
)
// ...
a := databricks.Must(databricks.NewAccountClient())
// ...

För direkt konfiguration (ersätt retrieve platshållare med din egen implementering för att hämta värdena från konsolen eller något annat konfigurationsarkiv, till exempel Azure KeyVault). I det här fallet är https://accounts.azuredatabricks.netAzure Databricks-kontokonsolens URL:

import (
  "github.com/databricks/databricks-sdk-go"
)
// ...
a := databricks.Must(databricks.NewAccountClient(&databricks.Config{
  Host:      retrieveAccountConsoleUrl(),
  AccountId: retrieveAccountId(),
}))
// ...

För åtgärder på arbetsytenivå för standardautentisering:

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

För direkt konfiguration (ersätt retrieve platshållare med din egen implementering för att hämta värdena från konsolen eller något annat konfigurationsarkiv, till exempel Azure KeyVault). I det här fallet är värden URL:en för Azure Databricks per arbetsyta, till exempel https://adb-1234567890123456.7.azuredatabricks.net:

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

Mer information om autentisering med Databricks-verktyg och SDK:er som använder Go och som implementerar enhetlig autentisering för Databricks-klienten finns i Autentisera Databricks SDK för Go med ditt Azure Databricks-konto eller din arbetsyta.