Sdílet prostřednictvím


Ověřování spravovaných identit Azure

Ověřování spravovaných identit Azure používá spravované identity pro prostředky Azure (dříve spravované identity (MSI) k ověřování pomocí Azure Databricks. Při práci s prostředky Azure, které podporují spravované identity, jako jsou virtuální počítače Azure, používají programová volání do účtu Azure a operací pracovního prostoru tuto spravovanou identitu.

Poznámka:

Spravované identity pro prostředky Azure se liší od instančních objektů Microsoft Entra ID, které Azure Databricks podporuje také pro ověřování. Informace o používání instančních objektů služby Microsoft Entra ID pro ověřování Azure Databricks místo spravovaných identit pro prostředky Azure najdete tady:

Ověřování spravovaných identit Azure se podporuje jenom mezi správně nakonfigurovaným prostředky, které podporují spravované identity, jako jsou virtuální počítače Azure (virtuální počítače Azure) a účty a pracovní prostory Azure Databricks.

Pokud chcete nakonfigurovat ověřování spravovaných identit Azure pomocí Azure Databricks, musíte u správně podporovaného virtuálního počítače Azure nastavit následující přidružené proměnné prostředí, .databrickscfg pole, pole Terraformu nebo Config pole:

  • Hostitel Azure Databricks.
    • Pro operace účtu zadejte https://accounts.azuredatabricks.net.
    • Pro operace pracovního prostoru zadejte adresu URL pro jednotlivé pracovní prostory, například https://adb-1234567890123456.7.azuredatabricks.net.
  • V případě operací s účtem je ID účtu Azure Databricks.
  • ID tenanta spravované identity.
  • ID klienta spravované identity.
  • ID prostředku Azure.
  • Nastavte azure pomocí spravovaných identit na hodnotu true.

Pokud chcete provádět ověřování spravovaných identit Azure pomocí Azure Databricks, integrujte do svého kódu na základě zúčastněného nástroje nebo sady SDK následující:

Prostředí

Pokud chcete použít proměnné prostředí pro konkrétní typ ověřování Azure Databricks pomocí nástroje nebo sady SDK, přečtěte si téma Ověřování přístupu k prostředkům Azure Databricks nebo dokumentaci k nástroji nebo sadě SDK. Viz také proměnné prostředí a pole pro jednotné ověřování klienta a výchozí metody pro jednotné ověřování klienta.

Pro operace na úrovni účtu nastavte následující proměnné prostředí:

  • DATABRICKS_HOST, nastavte hodnotu adresy URL konzoly účtu Azure Databricks. https://accounts.azuredatabricks.net
  • DATABRICKS_ACCOUNT_ID
  • ARM_CLIENT_ID
  • ARM_USE_MSI, nastavte na truehodnotu .

Pro operace na úrovni pracovního prostoru nastavte následující proměnné prostředí:

  • DATABRICKS_HOST, nastavte hodnotu adresy URL služby Azure Databricks pro jednotlivé pracovní prostory, například https://adb-1234567890123456.7.azuredatabricks.net.
  • ARM_CLIENT_ID
  • ARM_USE_MSI, nastavte na truehodnotu .

Pokud se pro operace na úrovni pracovního prostoru ještě nepřidá cílová identita do pracovního prostoru, zadejte DATABRICKS_AZURE_RESOURCE_ID místo adresy URL pracovního prostoru společně s adresou URL pracovního prostoru ID prostředku Azure pro pracovní prostor DATABRICKS_HOST Azure Databricks. V takovém případě musí mít cílová identita alespoň oprávnění přispěvatele nebo vlastníka prostředku Azure pro pracovní prostor Azure Databricks.

Profil

Vytvořte nebo identifikujte konfigurační profil Azure Databricks s následujícími poli v .databrickscfg souboru. Pokud vytvoříte profil, nahraďte zástupné symboly příslušnými hodnotami. Pokud chcete profil použít s nástrojem nebo sadou SDK, přečtěte si téma Ověřování přístupu k prostředkům Azure Databricks nebo dokumentaci k nástroji nebo sadě SDK. Viz také proměnné prostředí a pole pro jednotné ověřování klienta a výchozí metody pro jednotné ověřování klienta.

V případě operací na úrovni účtu nastavte v .databrickscfg souboru následující hodnoty. V tomto případě adresa URL konzoly účtu Azure Databricks je https://accounts.azuredatabricks.net:

[<some-unique-configuration-profile-name>]
host            = <account-console-url>
account_id      = <account-id>
azure_client_id = <azure-managed-identity-application-id>
azure_use_msi   = true

U operací na úrovni pracovního prostoru nastavte v .databrickscfg souboru následující hodnoty. V tomto případě je hostitelem adresa URL azure Databricks pro jednotlivé pracovní prostory, napříkladhttps://adb-1234567890123456.7.azuredatabricks.net:

[<some-unique-configuration-profile-name>]
host            = <workspace-url>
azure_client_id = <azure-managed-identity-application-id>
azure_use_msi   = true

Pokud se pro operace na úrovni pracovního prostoru ještě nepřidá cílová identita do pracovního prostoru, zadejte azure_workspace_resource_id místo adresy URL pracovního prostoru společně s adresou URL pracovního prostoru ID prostředku Azure pro pracovní prostor host Azure Databricks. V takovém případě musí mít cílová identita alespoň oprávnění přispěvatele nebo vlastníka prostředku Azure pro pracovní prostor Azure Databricks.

Rozhraní příkazového řádku

Pro rozhraní příkazového řádku Databricks proveďte jednu z následujících věcí:

  • Nastavte proměnné prostředí, jak je uvedeno v části Prostředí tohoto článku.
  • Nastavte hodnoty v .databrickscfg souboru, jak je uvedeno v části Profil tohoto článku.

Proměnné prostředí mají vždy přednost před hodnotami v .databrickscfg souboru.

Viz také ověřování spravovaných identit Azure.

Propojit

Poznámka:

Databricks Connect využívá k ověřování sadu Databricks SDK pro Python. Sada Databricks SDK pro Python zatím neimplementovala ověřování spravovaných identit Azure.

VS Code

Poznámka:

Rozšíření Databricks pro Visual Studio Code zatím nepodporuje ověřování spravovaných identit Azure.

Terraform

Pro operace na úrovni účtu pro výchozí ověřování:

provider "databricks" {
  alias = "accounts"
}

Pro přímou retrieve konfiguraci (nahraďte zástupné symboly vlastní implementací pro načtení hodnot z konzoly nebo jiného úložiště konfigurace, například HashiCorp Vault. Viz také poskytovatel trezoru). V tomto případě adresa URL konzoly účtu Azure Databricks je https://accounts.azuredatabricks.net:

provider "databricks" {
  alias           = "accounts"
  host            = <retrieve-account-console-url>
  account_id      = <retrieve-account-id>
  azure_client_id = <retrieve-azure-client-id>
  azure_use_msi   = true
}

Pro operace na úrovni pracovního prostoru pro výchozí ověřování:

provider "databricks" {
  alias = "workspace"
}

Pro přímou retrieve konfiguraci (nahraďte zástupné symboly vlastní implementací pro načtení hodnot z konzoly nebo jiného úložiště konfigurace, například HashiCorp Vault. Viz také poskytovatel trezoru). V tomto případě je hostitelem adresa URL azure Databricks pro jednotlivé pracovní prostory, napříkladhttps://adb-1234567890123456.7.azuredatabricks.net:

provider "databricks" {
  alias           = "workspace"
  host            = <retrieve-workspace-url>
  azure_client_id = <retrieve-azure-client-id>
  azure_use_msi   = true
}

Pokud se pro operace na úrovni pracovního prostoru ještě nepřidá cílová identita do pracovního prostoru, zadejte azure_workspace_resource_id místo adresy URL pracovního prostoru společně s adresou URL pracovního prostoru ID prostředku Azure pro pracovní prostor host Azure Databricks. V takovém případě musí mít cílová identita alespoň oprávnění přispěvatele nebo vlastníka prostředku Azure pro pracovní prostor Azure Databricks.

Další informace o ověřování pomocí zprostředkovatele Databricks Terraform najdete v tématu Ověřování.

Python

Poznámka:

Sada Databricks SDK pro Python zatím neimplementovala ověřování spravovaných identit Azure.

Java

Poznámka:

Sada Databricks SDK pro Javu zatím neimplementovala ověřování spravovaných identit Azure.

Go

Pro operace na úrovni účtu pro výchozí ověřování:

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

Pro přímou retrieve konfiguraci (nahraďte zástupné symboly vlastní implementací pro načtení hodnot z konzoly nebo jiného úložiště konfigurace, například Azure KeyVault). V tomto případě adresa URL konzoly účtu Azure Databricks je https://accounts.azuredatabricks.net:

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

Pro operace na úrovni pracovního prostoru pro výchozí ověřování:

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

Pro přímou retrieve konfiguraci (nahraďte zástupné symboly vlastní implementací pro načtení hodnot z konzoly nebo jiného úložiště konfigurace, například Azure KeyVault). V tomto případě je hostitelem adresa URL azure Databricks pro jednotlivé pracovní prostory, napříkladhttps://adb-1234567890123456.7.azuredatabricks.net:

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

Pokud se pro operace na úrovni pracovního prostoru ještě nepřidá cílová identita do pracovního prostoru, zadejte AzureResourceID místo adresy URL pracovního prostoru společně s adresou URL pracovního prostoru ID prostředku Azure pro pracovní prostor Host Azure Databricks. V takovém případě musí mít cílová identita alespoň oprávnění přispěvatele nebo vlastníka prostředku Azure pro pracovní prostor Azure Databricks.

Další informace o ověřování pomocí nástrojů Databricks a sad SDK, které používají Go a které implementují jednotné ověřování klienta Databricks, najdete v tématu Ověření sady Databricks SDK for Go pomocí účtu nebo pracovního prostoru Azure Databricks.