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. Zie Wat is de Databricks CLI?
In dit artikel 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 databricks -h
uit voor een lijst met CLI-opdrachtgroepen op werkruimteniveau en op accountniveau van Azure Databricks. Zie de Databricks REST API-API voor een lijst met REST API-bewerkingen op werkruimteniveau en op accountniveau die door de Databricks CLI-opdrachten worden behandeld.
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:
Ga als volgt te werk om een persoonlijk toegangstoken te maken:
- Klik in uw Azure Databricks-werkruimte op uw Azure Databricks-gebruikersnaam in de bovenste balk en selecteer vervolgens Instellingen in de vervolgkeuzelijst.
- Klik op Ontwikkelaars.
- Klik naast Access-tokens op Beheren.
- Klik op Nieuw token genereren.
- (Optioneel) Voer een opmerking in waarmee u dit token in de toekomst kunt identificeren en de standaardlevensduur van het token van 90 dagen kunt wijzigen. Als u een token zonder levensduur wilt maken (niet aanbevolen), laat u het vak Levensduur (dagen) leeg (leeg).
- Klik op Genereren.
- Kopieer het weergegeven token naar een veilige locatie en klik vervolgens op Gereed.
Notitie
Zorg ervoor dat u het gekopieerde token op een veilige locatie opslaat. Deel uw gekopieerde token niet met anderen. Als u het gekopieerde token kwijtraakt, kunt u dat token niet opnieuw genereren. In plaats daarvan moet u deze procedure herhalen om een nieuw token te maken. Als u het gekopieerde token kwijtraakt of als u denkt dat het token is aangetast, raadt Databricks u ten zeerste aan dat u dat token onmiddellijk uit uw werkruimte verwijdert door te klikken op het prullenbakpictogram (Intrekken) naast het token op de pagina Toegangstokens .
Als u geen tokens in uw werkruimte kunt maken of gebruiken, kan dit komen doordat uw werkruimtebeheerder tokens heeft uitgeschakeld of u geen toestemming hebt gegeven om tokens te maken of te gebruiken. Raadpleeg uw werkruimtebeheerder of de volgende onderwerpen:
Ga als volgt te werk om persoonlijke toegangstokenverificatie van Azure Databricks te configureren en te gebruiken:
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 databricks configure
opdracht een configuratieprofiel toe--profile <configuration-profile-name>
, -p <configuration-profile-name>
waarbij u de naam van het nieuwe configuratieprofiel vervangt<configuration-profile-name>
.
Gebruik de Databricks CLI om de volgende opdracht uit te voeren:
databricks configure
Voer voor de prompt databricks-host de URL van uw Azure Databricks per werkruimte in, bijvoorbeeld
https://adb-1234567890123456.7.azuredatabricks.net
.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 tot Azure Databricks verifiëren met een service-principal met behulp van OAuth (OAuth M2M).
Ga als volgt te werk om OAuth M2M-verificatie te configureren en te gebruiken:
Voltooi de installatie-instructies voor OAuth M2M-verificatie. Zie Toegang tot Azure Databricks verifiëren met een service-principal met behulp van OAuth (OAuth M2M)
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.Stel voor opdrachten op accountniveau 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>
Stel voor opdrachten op werkruimteniveau 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
-p
Databricks--profile
, 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
Tab
na--profile
of-p
om een lijst weer te geven met bestaande beschikbare configuratieprofielen 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 Toegang tot Azure Databricks verifiëren met een gebruikersaccount met behulp van OAuth (OAuth U2M).<
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
databricks auth profiles
uit in een afzonderlijke terminal of opdrachtprompt. 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
https://adb-1234567890123456.7.azuredatabricks.net
door<workspace-url>
de URL van uw Azure Databricks 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
databricks auth profiles
uit in een afzonderlijke terminal of opdrachtprompt. 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, bijvoorbeelddatabricks account groups list -p <configuration-profile-name>
ofdatabricks clusters list -p <configuration-profile-name>
.-p
Tip
U kunt erna
--profile
drukkenTab
of-p
een lijst weergeven met bestaande beschikbare configuratieprofielen 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 Automatisering van Azure Databricks.
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.Stel voor opdrachten op accountniveau 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
Stel voor opdrachten op werkruimteniveau 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 Virtuele Azure-machine de of optie van
-p
de Databricks CLI--profile
, gevolgd door de naam van uw configuratieprofiel om het profiel in te stellen dat Databricks moet gebruiken, bijvoorbeelddatabricks account groups list -p <configuration-profile-name>
ofdatabricks clusters list -p <configuration-profile-name>
.Tip
U kunt erna
--profile
drukkenTab
of-p
een lijst weergeven met bestaande beschikbare configuratieprofielen waaruit u kunt kiezen, in plaats van de naam van het configuratieprofiel handmatig in te voeren.
Verificatie van microsoft Entra ID-service-principal
Verificatie van de Microsoft Entra ID-service-principal maakt gebruik van de referenties van een Microsoft Entra ID-service-principal 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.Stel voor opdrachten op accountniveau 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>
Stel voor opdrachten op werkruimteniveau 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, bijvoorbeelddatabricks account groups list -p <configuration-profile-name>
ofdatabricks clusters list -p <configuration-profile-name>
.-p
Tip
U kunt erna
--profile
drukkenTab
of-p
een lijst weergeven met bestaande beschikbare configuratieprofielen 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.Stel voor opdrachten op accountniveau de volgende waarden in uw
.databrickscfg
bestand in:[<some-unique-configuration-profile-name>] host = <account-console-url> account_id = <account-id>
Stel voor opdrachten op werkruimteniveau 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, bijvoorbeelddatabricks account groups list -p <configuration-profile-name>
ofdatabricks clusters list -p <configuration-profile-name>
.-p
Tip
U kunt erna
--profile
drukkenTab
of-p
een lijst weergeven met bestaande beschikbare configuratieprofielen 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 bundelwerkmap (de bundelhoofdmap en een genest pad), worden de waarden van velden binnen de bundel-instellingsbestanden van een project. (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. EenDATABRICKS_TOKEN
omgevingsvariabele is niet 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. EenDATABRICKS_TOKEN
omgevingsvariabele is niet 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.