Verificatie voor de Databricks CLI
Notitie
Deze informatie is van toepassing op Databricks CLI-versies 0.205 en hoger. De Databricks CLI bevindt zich in openbare preview.
Databricks CLI-gebruik is onderhevig aan de Databricks-licentie en de privacyverklaring van Databricks, met inbegrip van alle bepalingen voor gebruiksgegevens.
In dit artikel wordt beschreven hoe u verificatie instelt tussen de Databricks CLI en uw Azure Databricks-accounts en -werkruimten. Hierbij wordt ervan uitgegaan dat u de Databricks CLI al hebt geïnstalleerd. Zie De Databricks CLI-installeren of bijwerken.
Voordat u Databricks CLI-opdrachten kunt uitvoeren, moet u verificatie instellen tussen de Databricks CLI en uw Azure Databricks-accounts, werkruimten of een combinatie hiervan, afhankelijk van de typen CLI-opdrachten die u wilt uitvoeren.
U moet de Databricks CLI tijdens runtime verifiëren bij de relevante resources om Azure Databricks-automatiseringsopdrachten uit te voeren in een Azure Databricks-account of -werkruimte. Afhankelijk van of u opdrachten op werkruimteniveau van Azure Databricks, Azure Databricks-accountniveau of beide wilt aanroepen, moet u zich verifiëren bij de Azure Databricks-werkruimte, het account of beide. Voer de opdracht uit databricks -h
voor een lijst met CLI-opdrachtgroepen op werkruimteniveau en op accountniveau van Azure Databricks. Zie de Databricks REST API-voor een lijst met REST API-bewerkingen op werkruimte- en accountniveau van Azure Databricks.
Zie Verifiëren met Azure DevOps in Databricks op Databricks voor meer informatie over Microsoft Entra-verificatie met Azure DevOps in Databricks.
De volgende secties bevatten informatie over het instellen van verificatie tussen de Databricks CLI en Azure Databricks:
- Azure Databricks-persoonlijk toegangstokens verificatie
- OAuth-verificatie van machine-naar-machine (M2M)
- OAuth-verificatie van gebruiker naar machine (U2M)
- Verificatie van door Azure beheerde identiteiten
- Verificatie van Microsoft Entra-ID Service-principal
- Azure CLI-verificatie
- Verificatievolgorde van evaluatie
Verificatie van persoonlijke toegangstokens van Azure Databricks
Verificatie van persoonlijke toegangstokens in Azure Databricks maakt gebruik van een persoonlijk toegangstoken van Azure Databricks om de Azure Databricks-entiteit te verifiëren, zoals een Azure Databricks-gebruikersaccount. Zie persoonlijke toegangstokenverificatie van Azure Databricks.
Notitie
U kunt geen persoonlijke toegangstokenverificatie van Azure Databricks gebruiken voor verificatie met een Azure Databricks-account, omdat azure Databricks-opdrachten op accountniveau geen persoonlijke toegangstokens van Azure Databricks gebruiken voor verificatie. Als u zich wilt verifiëren met een Azure Databricks-account, kunt u in plaats daarvan een van de volgende verificatietypen gebruiken:
Als u een persoonlijk toegangstoken wilt maken, volgt u de stappen in persoonlijke toegangstokens van Azure Databricks voor werkruimtegebruikers.
Notitie
Met de volgende procedure maakt u een Azure Databricks-configuratieprofiel met de naam DEFAULT
. Als u al een DEFAULT
configuratieprofiel hebt dat u wilt gebruiken, slaat u deze procedure over. Anders overschrijft deze procedure uw bestaande DEFAULT
configuratieprofiel. Als u de namen en hosts van bestaande configuratieprofielen wilt weergeven, voert u de opdracht databricks auth profiles
uit.
Als u een configuratieprofiel wilt maken met een andere naam danDEFAULT
, voegt u of aan het einde van de volgende --profile <configuration-profile-name>
opdracht een configuratieprofiel toe-p <configuration-profile-name>
, databricks configure
waarbij u de naam van het nieuwe configuratieprofiel vervangt<configuration-profile-name>
.
Ga als volgt te werk om persoonlijke toegangstokenverificatie van Azure Databricks te configureren en te gebruiken:
Gebruik de Databricks CLI om de volgende opdracht uit te voeren:
databricks configure
Voer voor de prompt databricks-host
Voer het persoonlijke toegangstoken van Azure Databricks in voor uw werkruimte voor de prompt persoonlijke toegangstoken.
Nadat u uw persoonlijke toegangstoken van Azure Databricks hebt ingevoerd, wordt er een bijbehorend configuratieprofiel toegevoegd aan uw
.databrickscfg
bestand. Als het bestand niet kan worden gevonden in de standaardlocatie van de Databricks CLI, wordt dit bestand eerst voor u gemaakt en wordt dit configuratieprofiel vervolgens toegevoegd aan het nieuwe bestand. De standaardlocatie voor dit bestand bevindt zich in de~
map (de basismap van uw gebruiker) in Unix, Linux of macOS, of in de%USERPROFILE%
map (de basismap van uw gebruiker) in Windows.U kunt nu de Cli
--profile
van-p
Databricks gebruiken, gevolgd door de naam van uw configuratieprofiel, bijvoorbeelddatabricks clusters list -p <configuration-profile-name>
als onderdeel van de opdrachtoproep van de Databricks CLI.
OAuth-verificatie van machine-naar-machine (M2M)
In plaats van verificatie met Azure Databricks met behulp van persoonlijke toegangstokenverificatie van Azure Databricks kunt u OAuth-verificatie gebruiken. OAuth biedt tokens met snellere verlooptijden dan persoonlijke toegangstokens van Azure Databricks en biedt betere server-side sessie ongeldigheid en bereik. Omdat OAuth-toegangstokens binnen een uur verlopen, vermindert dit het risico dat is gekoppeld aan het per ongeluk controleren van tokens in broncodebeheer. Zie ook toegang zonder toezicht tot Azure Databricks-resources autoriseren met een service-principal met behulp van OAuth.
Ga als volgt te werk om OAuth M2M-verificatie te configureren en te gebruiken:
Voltooi de installatie-instructies voor OAuth M2M-verificatie. Zie Toegang zonder toezicht tot Azure Databricks-resources autoriseren met een service-principal met behulp van OAuth-
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.Voor opdrachten op accountniveau stelt u de volgende waarden in uw
.databrickscfg
-bestand in:[<some-unique-configuration-profile-name>] host = <account-console-url> account_id = <account-id> client_id = <service-principal-client-id> client_secret = <service-principal-oauth-secret>
Voor opdrachten op werkruimteniveau stelt u de volgende waarden in uw
.databrickscfg
-bestand in:[<some-unique-configuration-profile-name>] host = <workspace-url> client_id = <service-principal-client-id> client_secret = <service-principal-oauth-secret>
Notitie
De standaardlocatie voor het
.databrickscfg
bestand bevindt zich in de basismap van de gebruiker. Dit is~
voor Linux en macOS en%USERPROFILE%
voor Windows.Gebruik de cli van
--profile
Databricks-p
, gevolgd door de naam van uw configuratieprofiel als onderdeel van de opdrachtoproep van de Databricks CLI, bijvoorbeelddatabricks account groups list -p <configuration-profile-name>
ofdatabricks clusters list -p <configuration-profile-name>
.Tip
Druk op
Tab
na--profile
of-p
om een lijst met bestaande beschikbare configuratieprofielen weer te geven waaruit u kunt kiezen, in plaats van de naam van het configuratieprofiel handmatig in te voeren.
OAuth-verificatie van gebruiker naar machine (U2M)
In plaats van verificatie met Azure Databricks met behulp van tokenverificatie kunt u OAuth-verificatie gebruiken. OAuth biedt tokens met snellere verlooptijden dan persoonlijke toegangstokens van Azure Databricks en biedt betere server-side sessie ongeldigheid en bereik. Omdat OAuth-toegangstokens binnen een uur verlopen, vermindert dit het risico dat is gekoppeld aan het per ongeluk controleren van tokens in broncodebeheer. Zie ook Interactieve toegang tot Azure Databricks-resources autoriseren met een gebruikersaccount met behulp van OAuth.
Ga als volgt te werk om OAuth U2M-verificatie te configureren en te gebruiken:
Voordat u opdrachten op accountniveau van Azure Databricks aanroept, moet u lokaal OAuth-tokenbeheer starten door de volgende opdracht uit te voeren. Deze opdracht moet afzonderlijk worden uitgevoerd voor elk account waarvoor u opdrachten wilt uitvoeren. Als u geen bewerkingen op accountniveau wilt aanroepen, gaat u verder met stap 5.
Vervang in de volgende opdracht de volgende tijdelijke aanduidingen:
- Vervang
<account-console-url>
door uw Azure Databricks https://accounts.azuredatabricks.net. - Vervang door
<account-id>
uw Azure Databricks-account-id. Zie Uw account-id zoeken.
databricks auth login --host <account-console-url> --account-id <account-id>
- Vervang
De Databricks CLI vraagt u om de URL van de accountconsole en account-id lokaal op te slaan als een Azure Databricks-configuratieprofiel. Druk
Enter
om de voorgestelde profielnaam te accepteren of voer de naam van een nieuw of bestaand profiel in. Elk bestaand profiel met dezelfde naam wordt overschreven met deze accountconsole-URL en account-id.Als u een lijst met bestaande profielen wilt ophalen, voert u de opdracht uit in een afzonderlijke terminal of opdrachtprompt
databricks auth profiles
. Als u de bestaande instellingen van een specifiek profiel wilt weergeven, voert u de opdrachtdatabricks auth env --profile <profile-name>
uit.Vul in uw webbrowser de instructies op het scherm in om u aan te melden bij uw Azure Databricks-account.
Als u de huidige OAuth-tokenwaarde en de geplande verlooptijdstempel wilt weergeven, voert u de opdracht
databricks auth token --host <account-console-url> --account-id <account-id>
uit.Voordat u opdrachten op werkruimteniveau van Azure Databricks aanroept, moet u OAuth-tokenbeheer lokaal starten door de volgende opdracht uit te voeren. Deze opdracht moet afzonderlijk worden uitgevoerd voor elke werkruimte waarvoor u opdrachten wilt uitvoeren.
Vervang in de volgende opdracht bijvoorbeeld
<workspace-url>
door de URLhttps://adb-1234567890123456.7.azuredatabricks.net
per werkruimte.databricks auth login --host <workspace-url>
De Databricks CLI vraagt u om de werkruimte-URL lokaal op te slaan als een Azure Databricks-configuratieprofiel. Druk
Enter
om de voorgestelde profielnaam te accepteren of voer de naam van een nieuw of bestaand profiel in. Elk bestaand profiel met dezelfde naam wordt overschreven met deze werkruimte-URL.Als u een lijst met bestaande profielen wilt ophalen, voert u de opdracht uit in een afzonderlijke terminal of opdrachtprompt
databricks auth profiles
. Als u de bestaande instellingen van een specifiek profiel wilt weergeven, voert u de opdrachtdatabricks auth env --profile <profile-name>
uit.Voltooi in uw webbrowser de instructies op het scherm om u aan te melden bij uw Azure Databricks-werkruimte.
Als u de huidige OAuth-tokenwaarde en de geplande verlooptijdstempel wilt weergeven, voert u de opdracht
databricks auth token --host <workspace-url>
uit.Gebruik de cli van Databricks
--profile
, gevolgd door de naam van uw configuratieprofiel, als onderdeel van de opdrachtoproep van de Databricks CLI, bijvoorbeeld-p
ofdatabricks account groups list -p <configuration-profile-name>
.databricks clusters list -p <configuration-profile-name>
Tip
U kunt op
Tab
drukken na--profile
of-p
om een lijst met bestaande beschikbare configuratieprofielen weer te geven waaruit u kunt kiezen, in plaats van de naam van het configuratieprofiel handmatig in te voeren.
Verificatie van door Azure beheerde identiteiten
Verificatie van beheerde identiteiten in Azure maakt gebruik van beheerde identiteiten voor Azure-resources (voorheen Managed Service Identities (MSI)) voor verificatie. Zie Wat zijn beheerde identiteiten voor Azure-resources?. Zie ook verificatie van door Azure beheerde identiteiten.
Ga als volgt te werk om een door de gebruiker toegewezen beheerde azure-identiteit te maken:
Maak of identificeer een Azure-VM en installeer de Databricks CLI erop en wijs vervolgens uw beheerde identiteit toe aan uw Azure-VM en uw Azure Databricks-doelaccounts, werkruimten of beide. Zie Verificatie van door Azure beheerde identiteiten instellen en gebruiken voor Azure Databricks-automatisering.
Maak of identificeer op de Virtuele Azure-machine 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.Voor opdrachten op accountniveau stelt u de volgende waarden in uw
.databrickscfg
-bestand in:[<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
Voor opdrachten op werkruimteniveau stelt u de volgende waarden in uw
.databrickscfg
-bestand in:[<some-unique-configuration-profile-name>] host = <workspace-url> azure_client_id = <azure-managed-identity-application-id> azure_use_msi = true
Als voor opdrachten op werkruimteniveau de doelidentiteit nog niet is toegevoegd aan de werkruimte, geeft u
azure_workspace_resource_id
deze samen met de Azure-resource-id op in plaats van samen met de url vanhost
de werkruimte. In dit geval moet de doelidentiteit ten minste machtigingen voor inzender of eigenaar hebben voor de Azure-resource.Notitie
De standaardlocatie voor het
.databrickscfg
bestand bevindt zich in de basismap van de gebruiker. Dit is~
voor Linux en macOS en%USERPROFILE%
voor Windows.Gebruik op de Azure-VM de
--profile
of-p
van de Databricks CLI, gevolgd door de naam van uw configuratieprofiel om het profiel voor Databricks in te stellen voor gebruik, bijvoorbeelddatabricks account groups list -p <configuration-profile-name>
ofdatabricks clusters list -p <configuration-profile-name>
.Tip
U kunt op
Tab
drukken na--profile
of-p
om een lijst met bestaande beschikbare configuratieprofielen weer te geven waaruit u kunt kiezen, in plaats van de naam van het configuratieprofiel handmatig in te voeren.
Verificatie van microsoft Entra ID-service-principal
Microsoft Entra ID-service-principal verificatie de referenties van een Microsoft Entra ID-service-principal gebruikt om te verifiëren. Zie Service-principals beheren als u service-principals voor Azure Databricks wilt maken en beheren. Zie ook verificatie van MS Entra-service-principal.
Als u verificatie van de Service-principal van Microsoft Entra ID wilt configureren en gebruiken, moet de Azure CLI-verificatie lokaal zijn geïnstalleerd. U moet ook het volgende doen:
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.Voor opdrachten op accountniveau stelt u de volgende waarden in uw
.databrickscfg
-bestand in:[<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 opdrachten op werkruimteniveau stelt u de volgende waarden in uw
.databrickscfg
-bestand in:[<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>
Als voor opdrachten op werkruimteniveau de service-principal van Microsoft Entra ID nog niet is toegevoegd aan de werkruimte, geeft u
azure_workspace_resource_id
deze samen met de Azure-resource-id op in plaats vanhost
samen met de werkruimte-URL. In dit geval moet de microsoft Entra ID-service-principal ten minste machtigingen voor inzender of eigenaar hebben voor de Azure-resource.Notitie
De standaardlocatie voor het
.databrickscfg
bestand bevindt zich in de basismap van de gebruiker. Dit is~
voor Linux en macOS en%USERPROFILE%
voor Windows.Gebruik de cli van Databricks
--profile
, gevolgd door de naam van uw configuratieprofiel, als onderdeel van de opdrachtoproep van de Databricks CLI, bijvoorbeeld-p
ofdatabricks account groups list -p <configuration-profile-name>
.databricks clusters list -p <configuration-profile-name>
Tip
U kunt op
Tab
drukken na--profile
of-p
om een lijst met bestaande beschikbare configuratieprofielen weer te geven waaruit u kunt kiezen, in plaats van de naam van het configuratieprofiel handmatig in te voeren.
Azure CLI-verificatie
Azure CLI-verificatie maakt gebruik van de Azure CLI om de aangemelde entiteit te verifiëren. Zie ook Azure CLI-verificatie.
Als u Azure CLI-verificatie wilt configureren, moet u het volgende doen:
Zorg ervoor dat de Azure CLI lokaal is geïnstalleerd.
Gebruik de Azure CLI om u aan te melden bij Azure Databricks door de
az login
opdracht uit te voeren. Zie azure CLI-aanmelding met een Azure Databricks-gebruikersaccount.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.Voor opdrachten op accountniveau stelt u de volgende waarden in uw
.databrickscfg
-bestand in:[<some-unique-configuration-profile-name>] host = <account-console-url> account_id = <account-id>
Voor opdrachten op werkruimteniveau stelt u de volgende waarden in uw
.databrickscfg
-bestand in:[<some-unique-configuration-profile-name>] host = <workspace-url>
Notitie
De standaardlocatie voor het
.databrickscfg
bestand bevindt zich in de basismap van de gebruiker. Dit is~
voor Linux en macOS en%USERPROFILE%
voor Windows.Gebruik de cli van Databricks
--profile
, gevolgd door de naam van uw configuratieprofiel, als onderdeel van de opdrachtoproep van de Databricks CLI, bijvoorbeeld-p
ofdatabricks account groups list -p <configuration-profile-name>
.databricks clusters list -p <configuration-profile-name>
Tip
U kunt op
Tab
drukken na--profile
of-p
om een lijst met bestaande beschikbare configuratieprofielen weer te geven waaruit u kunt kiezen, in plaats van de naam van het configuratieprofiel handmatig in te voeren.
Verificatievolgorde van evaluatie
Wanneer de Databricks CLI de instellingen moet verzamelen die nodig zijn om te verifiëren met een Azure Databricks-werkruimte of -account, wordt in de volgende volgorde naar deze instellingen gezocht.
- Voor elke opdracht die wordt uitgevoerd vanuit de werkmap van de bundel (de hoofdmap van de bundel en elk genest pad), worden de waarden van velden in de instellingbestanden van een projectbundel bepaald. (Bundelinstellingsbestanden bieden geen ondersteuning voor het direct opnemen van toegangsreferentiewaarden.)
- De waarden van omgevingsvariabelen, zoals vermeld in dit artikel en in Omgevingsvariabelen en -velden voor geïntegreerde clientverificatie.
- Waarden voor het configuratieprofielveld in het
.databrickscfg
-bestand, zoals eerder in dit artikel is vermeld.
Wanneer de Databricks CLI de vereiste instellingen vindt die nodig zijn, stopt het zoeken op andere locaties. Voorbeeld:
- De Databricks CLI heeft de waarde van een persoonlijk toegangstoken van Azure Databricks nodig. Er wordt een
DATABRICKS_TOKEN
omgevingsvariabele ingesteld en het.databrickscfg
bestand bevat ook meerdere persoonlijke toegangstokens. In dit voorbeeld gebruikt de Databricks CLI de waarde van deDATABRICKS_TOKEN
omgevingsvariabele en wordt het.databrickscfg
bestand niet doorzocht. - De
databricks bundle deploy -t dev
opdracht heeft de waarde van een persoonlijk toegangstoken van Azure Databricks nodig. Er is geenDATABRICKS_TOKEN
omgevingsvariabele ingesteld en het.databrickscfg
bestand bevat meerdere persoonlijke toegangstokens. Het bestand met bundelinstellingen van het project bevat eendev
omgevingsdeclaratie die verwijst naar hetprofile
veld een configuratieprofiel met de naamDEV
. In dit voorbeeld zoekt de Databricks CLI het.databrickscfg
bestand naar een profiel met de naamDEV
en gebruikt de waarde van het veld van dat profieltoken
. - De
databricks bundle run -t dev hello-job
opdracht heeft de waarde van een persoonlijk toegangstoken van Azure Databricks nodig. Er is geenDATABRICKS_TOKEN
omgevingsvariabele ingesteld en het.databrickscfg
bestand bevat meerdere persoonlijke toegangstokens. Het bestand met bundelinstellingen van het project bevat eendev
omgevingsdeclaratie die verwijst naar hethost
veld een specifieke URL van de Azure Databricks-werkruimte. In dit voorbeeld zoekt de Databricks CLI in de configuratieprofielen in het.databrickscfg
bestand naar een profiel dat eenhost
veld met een overeenkomende werkruimte-URL bevat. De Databricks CLI zoekt een overeenkomendhost
veld en gebruikt vervolgens de veldwaarde vantoken
dat profiel.