Dela via


Autentisering av personliga Azure Databricks-åtkomsttoken

Azure Databricks personliga åtkomsttoken (PAT) används för att autentisera åtkomst till resurser och API:er på arbetsytenivå i Azure Databricks. Många lagringsmekanismer för autentiseringsuppgifter och relaterad information, till exempel miljövariabler och Azure Databricks-konfigurationsprofiler, ger stöd för personliga åtkomsttoken för Azure Databricks. Användarna kan ha flera personliga åtkomsttoken på en Azure Databricks-arbetsyta, men varje personlig åtkomsttoken fungerar endast för en enda Azure Databricks-arbetsyta. Antalet personliga åtkomsttoken per användare är begränsat till 600 per arbetsyta.

Databricks återkallar automatiskt personliga åtkomsttoken som inte har använts på 90 dagar eller mer.

Viktigt!

Databricks rekommenderar att du använder OAuth i stället för PAT för klientautentisering och auktorisering för användarkonton på grund av den förbättrade säkerhet som OAuth har. Information om hur du använder OAuth för att utföra klientautentisering med ett Databricks-användarkonto finns i Autentisera åtkomst till Azure Databricks med ett användarkonto med OAuth (OAuth U2M) (för användarkontoautentisering).

Grundläggande (inte tokenbaserad) autentisering med ett användarnamn och lösenord för Azure Databricks nådde slutet av livslängden den 10 juli 2024.

Om du vill automatisera funktioner på Azure Databricks-kontonivå kan du inte använda personliga åtkomsttoken för Azure Databricks. I stället måste du använda Microsoft Entra-ID-token för Azure Databricks-kontoadministratörer. Azure Databricks-kontoadministratörer kan vara användare eller tjänstens huvudnamn. Mer information finns i:

Personliga åtkomsttoken för Azure Databricks för arbetsyteanvändare

Om du vill skapa en personlig åtkomsttoken för Azure Databricks för din Azure Databricks-arbetsyteanvändare gör du följande:

  1. I din Azure Databricks-arbetsyta klickar du på ditt Användarnamn för Azure Databricks i det övre fältet och väljer sedan Inställningar i listrutan.
  2. Klicka på Utvecklare.
  3. Bredvid Åtkomsttoken klickar du på Hantera.
  4. Klicka på Generera ny token.
  5. (Valfritt) Ange en kommentar som hjälper dig att identifiera den här token i framtiden och ändra tokens standardlivslängd på 90 dagar. Om du vill skapa en token utan livslängd (rekommenderas inte) lämnar du rutan Livslängd (dagar) tom (tom).
  6. Klicka på Generera.
  7. Kopiera den visade token till en säker plats och klicka sedan på Klar.

Kommentar

Se till att spara den kopierade token på en säker plats. Dela inte din kopierade token med andra. Om du förlorar den kopierade token kan du inte återskapa exakt samma token. I stället måste du upprepa den här proceduren för att skapa en ny token. Om du förlorar den kopierade token eller om du tror att token har komprometterats rekommenderar Databricks starkt att du omedelbart tar bort den token från arbetsytan genom att klicka på papperskorgsikonen (Återkalla) bredvid token på sidan Åtkomsttoken .

Om du inte kan skapa eller använda token på din arbetsyta kan det bero på att arbetsyteadministratören har inaktiverat token eller inte har gett dig behörighet att skapa eller använda token. Se administratören för arbetsytan eller följande avsnitt:

Personliga åtkomsttoken för Azure Databricks för tjänstens huvudnamn

Ett huvudnamn för tjänsten kan skapa personliga Databricks-åtkomsttoken för sig själv, enligt följande:

Den här proceduren förutsätter att du använder OAuth-autentisering från dator till dator (M2M) eller Microsoft Entra ID-tjänstens huvudnamnsautentisering för att konfigurera Databricks CLI för att autentisera tjänstens huvudnamn för att generera personliga åtkomsttoken för Azure Databricks för sig själv. Se OAuth-autentisering från dator till dator (M2M) eller Microsoft Entra ID-tjänstens huvudnamnsautentisering.

  1. Använd Databricks CLI för att köra följande kommando, som genererar en annan åtkomsttoken för tjänstens huvudnamn.

    Kör följande kommando:

    databricks tokens create --comment <comment> --lifetime-seconds <lifetime-seconds> -p <profile-name>
    
    • --comment: Ersätt <comment> med en meningsfull kommentar om åtkomsttokens syfte. Om alternativet --comment inte har angetts genereras ingen kommentar.
    • --lifetime-seconds: Ersätt <lifetime-seconds> med antalet sekunder som åtkomsttoken är giltig för. Till exempel är 1 dag 86400 sekunder. Om alternativet --lifetime-seconds inte anges är åtkomsttoken inställd på att aldrig upphöra (rekommenderas inte).
    • --profile-name: Ersätt <profile-name> med namnet på en Azure Databricks-konfigurationsprofil som innehåller autentiseringsinformation för tjänstens huvudnamn och målarbetsytan. Om alternativet -p inte anges försöker Databricks CLI hitta och använda en konfigurationsprofil med namnet DEFAULT.
  2. I svaret kopierar du värdet token_valueför , som är åtkomsttoken för tjänstens huvudnamn.

    Se till att spara den kopierade token på en säker plats. Dela inte din kopierade token med andra. Om du förlorar den kopierade token kan du inte återskapa exakt samma token. I stället måste du upprepa den här proceduren för att skapa en ny token.

    Om du inte kan skapa eller använda token på din arbetsyta kan det bero på att arbetsyteadministratören har inaktiverat token eller inte har gett dig behörighet att skapa eller använda token. Se din arbetsyteadministratör eller följande:

Utföra personlig åtkomsttokenautentisering i Azure Databricks

För att konfigurera personlig åtkomsttokenautentisering i Azure Databricks måste du ange följande associerade miljövariabler, .databrickscfg fält, Terraform-fält eller Config fält:

  • Azure Databricks-värden, som anges som url för Azure Databricks per arbetsyta, till exempel https://adb-1234567890123456.7.azuredatabricks.net.
  • Azure Databricks personliga åtkomsttoken för Azure Databricks-användarkontot.

Om du vill utföra autentisering med personlig åtkomsttoken i Azure Databricks integrerar du följande i koden baserat på det deltagande verktyget eller SDK:t:

Environment

Information om hur du använder miljövariabler för en specifik Azure Databricks-autentiseringstyp med ett verktyg eller SDK finns i Autentisera åtkomst till Azure Databricks-resurser eller verktygets eller SDK:s dokumentation. Se även Miljövariabler och fält för klient enhetlig autentisering och Standardmetoder för klient enhetlig autentisering.

Ange följande miljövariabler:

  • DATABRICKS_HOSTanger du till URL:en för Azure Databricks per arbetsyta, till exempel https://adb-1234567890123456.7.azuredatabricks.net.
  • DATABRICKS_TOKEN, inställt på tokensträngen.

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. Information om hur du använder profilen med ett verktyg eller SDK finns i Autentisera åtkomst till Azure Databricks-resurser eller verktygets eller SDK:s dokumentation. Se även Miljövariabler och fält för klient enhetlig autentisering och Standardmetoder för klient enhetlig autentisering.

Ange följande värden i .databrickscfg filen. 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>
token = <token>

I stället för att manuellt ange föregående värden i .databrickscfg filen kan du använda Databricks CLI för att ange dessa värden i stället, enligt följande:

Kommentar

Följande procedur använder Databricks CLI för att skapa en Azure Databricks-konfigurationsprofil med namnet DEFAULT. Om du redan har en DEFAULT konfigurationsprofil skriver den här proceduren över din befintliga DEFAULT konfigurationsprofil.

Om du vill kontrollera om du redan har en DEFAULT konfigurationsprofil och visa profilens inställningar om den finns använder du Databricks CLI för att köra kommandot databricks auth env --profile DEFAULT.

Om du vill skapa en konfigurationsprofil med ett annat namn än DEFAULTersätter du DEFAULT delen i --profile DEFAULT i följande databricks configure kommando med ett annat namn för konfigurationsprofilen.

  1. Använd Databricks CLI för att skapa en Azure Databricks-konfigurationsprofil med namnet DEFAULT som använder personlig åtkomsttokenautentisering i Azure Databricks. Gör detta genom att köra följande kommando:

    databricks configure --profile DEFAULT
    
  2. Ange url:en för Azure Databricks per arbetsyta för fråga Databricks-värden, till exempel https://adb-1234567890123456.7.azuredatabricks.net.

  3. För frågan Personlig åtkomsttoken anger du personlig åtkomsttoken för Azure Databricks för din arbetsyta.

CLI

Kör kommandot för Databricks CLI databricks configure . Ange följande inställningar i anvisningarna:

  • Azure Databricks-värden, som anges som url för Azure Databricks per arbetsyta, till exempel https://adb-1234567890123456.7.azuredatabricks.net.
  • Azure Databricks personliga åtkomsttoken för Azure Databricks-användarkontot.

Mer information finns i autentisering med personlig åtkomsttoken i Azure Databricks.

Anslut

Kommentar

Autentisering med personlig åtkomsttoken i Azure Databricks stöds i följande Databricks Connect-versioner:

  • För Python, Databricks Connect för Databricks Runtime 13.3 LTS och senare.
  • För Scala, Databricks Connect för Databricks Runtime 13.3 LTS och senare.

För Databricks Connect kan du använda Databricks CLI för att ange värdena i .databrickscfg filen för åtgärder på Azure Databricks-arbetsytenivå enligt beskrivningen i den här artikelns "Profil"-avsnitt på följande sätt:

Kommentar

Följande procedur använder Databricks CLI för att skapa en Azure Databricks-konfigurationsprofil med namnet DEFAULT. Om du redan har en DEFAULT konfigurationsprofil skriver den här proceduren över din befintliga DEFAULT konfigurationsprofil.

Om du vill kontrollera om du redan har en DEFAULT konfigurationsprofil och visa profilens inställningar om den finns använder du Databricks CLI för att köra kommandot databricks auth env --profile DEFAULT.

Om du vill skapa en konfigurationsprofil med ett annat namn än DEFAULTersätter du DEFAULT den del av --profile DEFAULT kommandot databricks configure som visas i följande steg med ett annat namn för konfigurationsprofilen.

  1. Använd Databricks CLI för att skapa en Azure Databricks-konfigurationsprofil med namnet DEFAULT som använder personlig åtkomsttokenautentisering i Azure Databricks. Gör detta genom att köra följande kommando:

    databricks configure --configure-cluster --profile DEFAULT
    
  2. Ange url:en för Azure Databricks per arbetsyta för fråga Databricks-värden, till exempel https://adb-1234567890123456.7.azuredatabricks.net.

  3. För frågan Personlig åtkomsttoken anger du personlig åtkomsttoken för Azure Databricks för din arbetsyta.

  4. I listan över tillgängliga kluster som visas använder du upppilen och nedåtpilen för att välja Azure Databricks-målklustret på arbetsytan och tryck sedan på Enter. Du kan också ange valfri del av klustrets visningsnamn för att filtrera listan över tillgängliga kluster.

Använda REST-API:et för Azure Databricks för att utfärda personliga åtkomsttoken

Azure Databricks tillhandahåller en REST-slutpunkt /api/2.0/token/create för att utfärda PAT:er. Se Skapa en användartoken för API-information.

Du måste ange specifika värden för REST-API:et. I följande exempel anger du följande värden:

  • Ersätt <databricks-instance> med databricks-arbetsytans URL. Exempel: dbc-abcd1234-5678.cloud.databricks.com
  • Ersätt <your-existing-access-token> med en befintlig giltig PAT (sträng) som har behörighet att skapa nya token.

Ange värdena för dessa parametrar:

  • comment: En beskrivning av den nya token.
  • lifetime_seconds: Tokens livslängd i sekunder.
curl -X POST https://<databricks-instance>/api/2.0/token/create \
-H "Authorization: Bearer <your-existing-access-token>" \
-H "Content-Type: application/json" \
-d '{
  "comment": "New PAT using DB API",
  "lifetime_seconds": <lifetime-of-pat-in-seconds>
}'

Flaggan -d innehåller JSON-nyttolasten för begäran.

Om det lyckas resulterar detta i en svarsnyttolast som liknar:

{
  "access_token": "<your-newly-issued-pat>",
  "token_type": "Bearer",
  "expires_in": <the-duration-of-the-new-pat>
}

Ange den nya token från svaret i auktoriseringshuvudet för efterföljande anrop till Databricks REST-API:er. Till exempel:

# This example uses a simple GET. For POST or other REST verbs, you may need to provide additional parameters.
curl -X GET "https://<databricks-instance>/api/2.0/<path-to-endpoint>" \
     -H "Authorization: Bearer <your-new-pat>"
import requests

headers = {
    'Authorization': 'Bearer <your-new-pat>'
}
# This example is for an HTTP GET operation.
response = requests.get('https://<databricks-instance>/api/2.0/<path-to-endpoint>', headers=headers)