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

Om du vill använda miljövariabler för en specifik Azure Databricks-autentiseringstyp med ett verktyg eller SDK kan du läsa auktorisera åtkomst till Azure Databricks-resurser eller verktygets eller SDK:ns 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. För att använda profilen med ett verktyg eller SDK, se Authorizing access to Azure Databricks resources eller verktygets eller SDK:ns 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.