Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Authenticatie van Microsoft Entra-service-principal gebruikt de inloggegevens van een Microsoft Entra-service-principal voor authenticatie. Als u service-principals voor Azure Databricks wilt maken en beheren, raadpleegt u:
Notitie
Databricks raadt in de meeste scenario's aan om verificatie van OAuth-machine-to-machine (M2M) te gebruiken. OAuth M2M maakt gebruik van OAuth-toegangstokens die krachtiger zijn bij het verifiëren met Azure Databricks. Gebruik alleen verificatie van de Microsoft Entra-service-principal wanneer u zich tegelijkertijd moet verifiëren met Azure Databricks en andere Azure-resources.
Zie Beheerde Identiteiten van Azure gebruiken met Azure Databricks en verifiëren met Azure DevOps in Azure Databricks voor meer informatie.
Als u microsoft Entra-service-principalverificatie wilt configureren met Azure Databricks, moet u de volgende gekoppelde omgevingsvariabelen, .databrickscfg velden, Terraform-velden of Config -velden instellen:
De host van Azure Databricks.
- Geef voor accountbewerkingen op
https://accounts.azuredatabricks.net. - Voor werkruimtebewerkingen raadt Databricks aan om de URL per werkruimte op te geven, bijvoorbeeld en expliciet de Microsoft
https://adb-1234567890123456.7.azuredatabricks.nettoe te wijzen aan de werkruimte. U kunt ook de Azure-resource-id opgeven. Voor deze aanpak zijn inzender- of eigenaarsmachtigingen voor de Azure-resource of een aangepaste rol met specifieke Azure Databricks-machtigingen vereist.
- Geef voor accountbewerkingen op
Voor accountbewerkingen wordt de account-id van Azure Databricks gebruikt.
De Azure-resource-ID.
De tenant-ID van de Microsoft Entra-service-principal.
De client-id van de Microsoft Entra-service-principal.
Het clientgeheim van de Microsoft Entra-service-principal.
Als u microsoft Entra-service-principalverificatie wilt uitvoeren met Azure Databricks, integreert u het volgende in uw code op basis van het deelnemende hulpprogramma of de SDK:
Omgevingsvariabelen
Als u omgevingsvariabelen wilt gebruiken voor een specifiek verificatietype van Azure Databricks met een hulpprogramma of SDK, raadpleegt u Toegang verlenen tot Azure Databricks-resources of de documentatie van het hulpprogramma of de SDK. Zie ook Omgevingsvariabelen en -velden voor geïntegreerde verificatie en de prioriteit van de verificatiemethode.
Stel voor bewerkingen op accountniveaude volgende omgevingsvariabelen in:
-
DATABRICKS_HOST, ingesteld op de waarde van uw Azure Databricks-accountconsole-URL,https://accounts.azuredatabricks.net. DATABRICKS_ACCOUNT_IDARM_TENANT_IDARM_CLIENT_IDARM_CLIENT_SECRET
Stel voor bewerkingen op werkruimteniveaude volgende omgevingsvariabelen in:
- Stel
DATABRICKS_HOSTin op de waarde van de Azure Databricks URL per werkruimte, bijvoorbeeldhttps://adb-1234567890123456.7.azuredatabricks.net. ARM_TENANT_IDARM_CLIENT_IDARM_CLIENT_SECRET
Databricks raadt aan om DATABRICKS_HOST te gebruiken en de Microsoft Entra-service-principal expliciet toe te wijzen aan de werkruimte. U kunt ook de Azure-resource-id gebruiken DATABRICKS_AZURE_RESOURCE_ID . Voor deze aanpak zijn inzender- of eigenaarsmachtigingen voor de Azure-resource of een aangepaste rol met specifieke Azure Databricks-machtigingen vereist.
Configuratieprofielen
Maak of identificeer een Azure Databricks-configuratieprofiel met de volgende velden in uw .databrickscfg bestand. Als u het profiel maakt, vervangt u de tijdelijke aanduidingen door de juiste waarden. Als u het profiel wilt gebruiken met een hulpprogramma of SDK, raadpleegt u Toegang verlenen tot Azure Databricks-resources of de documentatie van het hulpprogramma of de SDK. Zie ook Omgevingsvariabelen en -velden voor geïntegreerde verificatie en de prioriteit van de verificatiemethode.
Voor bewerkingen op accountniveau, stelt u de volgende waarden in uw .databrickscfg-bestand in. In dit geval is https://accounts.azuredatabricks.netde URL van de Azure Databricks-accountconsole:
[<some-unique-configuration-profile-name>]
host = <account-console-url>
account_id = <account-id>
azure_tenant_id = <azure-service-principal-tenant-id>
azure_client_id = <azure-service-principal-application-id>
azure_client_secret = <azure-service-principal-client-secret>
Voor bewerkingen op werkruimteniveau, stelt u de volgende waarden in uw .databrickscfg-bestand in. In dit geval is de host de URL van Azure Databricks per werkruimte, bijvoorbeeldhttps://adb-1234567890123456.7.azuredatabricks.net:
[<some-unique-configuration-profile-name>]
host = <workspace-url>
azure_tenant_id = <azure-service-principal-tenant-id>
azure_client_id = <azure-service-principal-application-id>
azure_client_secret = <azure-service-principal-client-secret>
Databricks raadt aan om host te gebruiken en de Microsoft Entra-service-principal expliciet toe te wijzen aan de werkruimte. U kunt ook de Azure-resource-id gebruiken azure_workspace_resource_id . Voor deze aanpak zijn inzender- of eigenaarsmachtigingen voor de Azure-resource of een aangepaste rol met specifieke Azure Databricks-machtigingen vereist.
Databricks-CLI
Ga op een van de volgende manieren te werk voor de Databricks CLI:
- Stel de omgevingsvariabelen in zoals opgegeven op het tabblad Omgeving .
- Stel de waarden in het
.databrickscfgbestand in zoals opgegeven op het tabblad Profiel .
Omgevingsvariabelen hebben altijd voorrang op waarden in uw .databrickscfg-bestand.
Zie ook authenticatie van de service-principal van Microsoft Entra ID.
Databricks Connect
Notitie
Verificatie van de Microsoft Entra-service-principal wordt ondersteund in de volgende Databricks Connect-versies:
- Voor Python is Databricks Connect beschikbaar voor Databricks Runtime 13.1 en hoger.
- Voor Scala, Databricks Connect voor Databricks Runtime 13.3 LTS en hoger.
Voor Databricks Connect kunt u het volgende doen:
-
Een configuratieprofiel gebruiken: Stel waarden op werkruimteniveau in uw
.databrickscfgbestand in zoals beschreven op het tabblad Profiel . Stel ook de URL van hetcluster_idwerkruimte-exemplaar in. -
Omgevingsvariabelen gebruiken: Stel dezelfde waarden in als op het tabblad Omgeving . Stel ook de URL van het
DATABRICKS_CLUSTER_IDwerkruimte-exemplaar in.
Waarden in .databrickscfg hebben voorrang op omgevingsvariabelen.
Als u Databricks Connect met deze instellingen wilt initialiseren, raadpleegt u de compute-configuratie voor Databricks Connect.
Visual Studio Code-extensie
Voor de Databricks IDE-extensie doe je het volgende:
- Stel de waarden in uw
.databrickscfgbestand in voor bewerkingen op werkruimteniveau van Azure Databricks, zoals opgegeven op het tabblad Profiel . - Klik in het configuratiepaneel van de Databricks IDE-extensie op Configureren Databricks.
- Voer in het opdrachtenpalet voor Databricks Host uw URL per werkruimte in, bijvoorbeeld
https://adb-1234567890123456.7.azuredatabricks.neten drukEnterop . - Selecteer in het opdrachtpalet de naam van uw doelprofiel in de lijst voor uw URL.
Voor meer details, zie Autorisatie instellen voor de Databricks IDE-extensie.
Terraform
Voor bewerkingen op accountniveau, voor standaardauthenticatie:
provider "databricks" {
alias = "accounts"
}
Vervang voor directe configuratie de tijdelijke aanduidingen door waarden uit de console of een ander configuratiearchief, zoals HashiCorp Vault. Zie ook Vault Provider. In dit geval is https://accounts.azuredatabricks.netde URL van de Azure Databricks-accountconsole:
provider "databricks" {
alias = "accounts"
host = <your-account-console-url>
account_id = <your-account-id>
azure_tenant_id = <your-azure-tenant-id>
azure_client_id = <your-azure-client-id>
azure_client_secret = <your-azure-client-secret>
}
Voor activiteiten op werkruimteniveau, voor standaardverificatie:
provider "databricks" {
alias = "workspace"
}
Vervang voor directe configuratie de tijdelijke aanduidingen door waarden uit de console of een ander configuratiearchief, zoals HashiCorp Vault. Zie ook Vault-provider. In dit geval is de host de URL van Azure Databricks per werkruimte, bijvoorbeeldhttps://adb-1234567890123456.7.azuredatabricks.net:
provider "databricks" {
alias = "workspace"
host = <your-workspace-url>
azure_tenant_id = <your-azure-tenant-id>
azure_client_id = <your-azure-client-id>
azure_client_secret = <your-azure-client-secret>
}
Databricks raadt aan om host te gebruiken en de Microsoft Entra-service-principal expliciet toe te wijzen aan de werkruimte. U kunt ook de Azure-resource-id gebruiken azure_workspace_resource_id . Voor deze aanpak zijn inzender- of eigenaarsmachtigingen voor de Azure-resource of een aangepaste rol met specifieke Azure Databricks-machtigingen vereist.
Zie Verificatie voor meer informatie over verificatie met de Databricks Terraform-provider.
Databricks SDK voor Python
Voor bewerkingen op accountniveau, voor standaardauthenticatie:
from databricks.sdk import AccountClient
a = AccountClient()
# ...
Vervang voor directe configuratie de functie-aanroepen door code die waarden ophaalt uit de console of een ander configuratiearchief, zoals Azure KeyVault. In dit geval is https://accounts.azuredatabricks.netde URL van de Azure Databricks-accountconsole:
from databricks.sdk import AccountClient
a = AccountClient(
host = get_account_console_url(),
account_id = get_account_id(),
azure_tenant_id = get_azure_tenant_id(),
azure_client_id = get_azure_client_id(),
azure_client_secret = get_azure_client_secret()
)
# ...
Voor activiteiten op werkruimteniveau, voor standaardverificatie:
from databricks.sdk import WorkspaceClient
w = WorkspaceClient()
# ...
Vervang voor directe configuratie de functie-aanroepen door code die waarden ophaalt uit de console of een ander configuratiearchief, zoals Azure KeyVault. In dit geval is de host de URL van Azure Databricks per werkruimte, bijvoorbeeldhttps://adb-1234567890123456.7.azuredatabricks.net:
from databricks.sdk import WorkspaceClient
w = WorkspaceClient(
host = get_workspace_url(),
azure_tenant_id = get_azure_tenant_id(),
azure_client_id = get_azure_client_id(),
azure_client_secret = get_azure_client_secret()
)
# ...
Databricks raadt aan om host te gebruiken en de Microsoft Entra-service-principal expliciet toe te wijzen aan de werkruimte. U kunt ook de Azure-resource-id gebruiken azure_workspace_resource_id . Voor deze aanpak zijn inzender- of eigenaarsmachtigingen voor de Azure-resource of een aangepaste rol met specifieke Azure Databricks-machtigingen vereist.
Zie voor meer informatie over verificatie met Databricks-hulpprogramma's en SDK's die gebruikmaken van Python en die geïntegreerde Databricks-verificatie implementeren:
- De Databricks Connect-client instellen voor Python
- Autorisatie instellen voor de Databricks IDE-extensie
- De Databricks SDK voor Python verifiëren met uw Azure Databricks-account of -werkruimte
Databricks SDK voor Java
Voor bewerkingen op accountniveau, voor standaardauthenticatie:
import com.databricks.sdk.AccountClient;
// ...
AccountClient a = new AccountClient();
// ...
Vervang voor directe configuratie de functie-aanroepen door code die waarden ophaalt uit de console of een ander configuratiearchief, zoals Azure KeyVault. In dit geval is https://accounts.azuredatabricks.netde URL van de Azure Databricks-accountconsole:
import com.databricks.sdk.AccountClient;
import com.databricks.sdk.core.DatabricksConfig;
// ...
DatabricksConfig cfg = new DatabricksConfig()
.setHost(getAccountConsoleUrl())
.setAccountId(getAccountId())
.setAzureTenantId(getAzureTenantId())
.setAzureClientId(getAzureClientId())
.setAzureClientSecret(getAzureClientSecret())
AccountClient a = new AccountClient(cfg);
// ...
Voor activiteiten op werkruimteniveau, voor standaardverificatie:
import com.databricks.sdk.WorkspaceClient;
// ...
WorkspaceClient w = new WorkspaceClient();
// ...
Vervang voor directe configuratie de functie-aanroepen door code die waarden ophaalt uit de console of een ander configuratiearchief, zoals Azure KeyVault. In dit geval is de host de URL van Azure Databricks per werkruimte, bijvoorbeeldhttps://adb-1234567890123456.7.azuredatabricks.net:
import com.databricks.sdk.WorkspaceClient;
import com.databricks.sdk.core.DatabricksConfig;
// ...
DatabricksConfig cfg = new DatabricksConfig()
.setHost(getWorkspaceUrl())
.setAzureTenantId(getAzureTenantId())
.setAzureClientId(getAzureClientId())
.setAzureClientSecret(getAzureClientSecret())
WorkspaceClient w = new WorkspaceClient(cfg);
// ...
Databricks raadt aan om setHost te gebruiken en de Microsoft Entra-service-principal expliciet toe te wijzen aan de werkruimte. U kunt ook de Azure-resource-id gebruiken setAzureWorkspaceResourceId . Voor deze aanpak zijn inzender- of eigenaarsmachtigingen voor de Azure-resource of een aangepaste rol met specifieke Azure Databricks-machtigingen vereist.
Zie voor meer informatie over verificatie met Databricks-hulpprogramma's en SDK's die gebruikmaken van Java en die geïntegreerde Databricks-verificatie implementeren:
- De Databricks Connect-client instellen voor Scala (de Databricks Connect-client voor Scala maakt gebruik van de meegeleverde Databricks SDK voor Java voor verificatie)
- De Databricks SDK voor Java verifiëren met uw Azure Databricks-account of -werkruimte
Databricks SDK voor Go
Voor bewerkingen op accountniveau, voor standaardauthenticatie:
import (
"github.com/databricks/databricks-sdk-go"
)
// ...
a := databricks.Must(databricks.NewAccountClient())
// ...
Vervang voor directe configuratie de functie-aanroepen door code die waarden ophaalt uit de console of een ander configuratiearchief, zoals Azure KeyVault. In dit geval is https://accounts.azuredatabricks.netde URL van de Azure Databricks-accountconsole:
import (
"github.com/databricks/databricks-sdk-go"
)
// ...
a := databricks.Must(databricks.NewAccountClient(&databricks.Config{
Host: getAccountConsoleUrl(),
AccountId: getAccountId(),
AzureTenantId: getAzureTenantId(),
AzureClientId: getAzureClientId(),
AzureClientSecret: getAzureClientSecret(),
}))
// ...
Voor activiteiten op werkruimteniveau, voor standaardverificatie:
import (
"github.com/databricks/databricks-sdk-go"
)
// ...
w := databricks.Must(databricks.NewWorkspaceClient())
// ...
Vervang voor directe configuratie de functie-aanroepen door code die waarden ophaalt uit de console of een ander configuratiearchief, zoals Azure KeyVault. In dit geval is de host de URL van Azure Databricks per werkruimte, bijvoorbeeldhttps://adb-1234567890123456.7.azuredatabricks.net:
import (
"github.com/databricks/databricks-sdk-go"
)
// ...
w := databricks.Must(databricks.NewWorkspaceClient(&databricks.Config{
Host: getWorkspaceUrl(),
AzureTenantId: getAzureTenantId(),
AzureClientId: getAzureClientId(),
AzureClientSecret: getAzureClientSecret(),
}))
// ...
Databricks raadt aan om Host te gebruiken en de Microsoft Entra-service-principal expliciet toe te wijzen aan de werkruimte. U kunt ook de Azure-resource-id gebruiken AzureWorkspaceResourceId . Voor deze aanpak zijn inzender- of eigenaarsmachtigingen voor de Azure-resource of een aangepaste rol met specifieke Azure Databricks-machtigingen vereist.
Zie De Databricks-SDK voor Go verifiëren met uw Azure Databricks-account of -werkruimte voor meer informatie over verificatie met Databricks-hulpprogramma's en SDK's die gebruikmaken van Go en die geïntegreerde Verificatie van de Databricks-client implementeren.