Freigeben über


Authentifizierung des Zugriffs bei Azure Databricks mit einem Dienstprinzipal unter Verwendung von OAuth (OAuth M2M)

In diesem Artikel wird erläutert, wie Sie einen Azure Databricks-Dienstprinzipal erstellen und ihn zum Authentifizieren bei einer Zielentität mit OAuth verwenden.

Schritt 1: Erstellen eines Dienstprinzipals

Kontoadministratoren und Arbeitsbereichsadministratoren können einen Dienstprinzipal erstellen. In diesem Schritt wird das Erstellen eines Dienstprinzipals in einem Arbeitsbereich beschrieben. Informationen zur Verwendung der Kontokonsole finden Sie unter Verwalten von Dienstprinzipalen in Ihrem Konto.

Sie können auch einen verwalteten Dienstprinzipal der Microsoft Entra-ID erstellen und zu Azure Databricks hinzufügen. Weitere Informationen finden Sie unter Databricks und Microsoft Entra ID-Dienstprinzipale.

  1. Melden Sie sich als Arbeitsbereichsadministrator beim Azure Databricks-Arbeitsbereich an.
  2. Wählen Sie Ihren Benutzernamen in der oberen Leiste des Azure Databricks-Arbeitsbereichs und anschließend Einstellungen aus.
  3. Klicken Sie auf die Registerkarte Identität und Zugriff.
  4. Klicken Sie neben Dienstprinzipale auf Verwalten.
  5. Klicken Sie auf Dienstprinzipal hinzufügen.
  6. Klicken Sie im Suchfeld auf den Dropdownpfeil, und klicken Sie dann auf "Neu hinzufügen".
  7. Wählen Sie unter "Verwaltung" die Option "Databricks verwaltet" aus.
  8. Geben Sie einen Namen für den Dienstprinzipal ein.
  9. Klicken Sie auf Hinzufügen.

Der Dienstprinzipal wird sowohl Ihrem Arbeitsbereich als auch dem Azure Databricks-Konto hinzugefügt.

Schritt 2: Zuweisen von Berechtigungen zu Ihrem Dienstprinzipal

  1. Klicken Sie auf den Namen Des Dienstprinzipals, um die Detailseite zu öffnen.
  2. Aktivieren Sie auf der Registerkarte Konfigurationen das Kontrollkästchen für jede Berechtigung, über die der Dienstprinzipal für diesen Arbeitsbereich verfügen soll, und klicken Sie dann auf Aktualisieren.
  3. Gewähren Sie auf der Registerkarte Berechtigungen Zugriff auf die Azure Databricks-Benutzer*innen, -Dienstprinzipale und -Gruppen, die Sie verwalten und mit diesem Dienstprinzipal verwenden möchten. Weitere Informationen finden Sie unter Verwalten von Rollen für einen Dienstprinzipal.

Schritt 3: Erstellen eines OAuth-Schlüssels für einen Dienstprinzipal

Bevor Sie OAuth zum Authentifizieren bei Azure Databricks verwenden können, müssen Sie zuerst einen OAuth-Geheimschlüssel erstellen, der zum Generieren von OAuth-Zugriffstoken verwendet werden kann. Ein Dienstprinzipal kann bis zu fünf OAuth-Schlüssel aufweisen. Kontoadministratoren und Arbeitsbereichsadministratoren können einen OAuth-Geheimschlüssel für einen Dienstprinzipal erstellen.

  1. Klicken Sie auf der Detailseite Ihres Dienstprinzipals auf die Registerkarte "Geheime Schlüssel ".

  2. Klicken Sie unter OAuth-Geheimnisse auf Geheimnis generieren.

    OAuth-Schlüssel aus dem Arbeitsbereich generieren

  3. Kopieren Sie den angezeigten geheimen Schlüssel und die Client-ID, und klicken Sie dann auf "Fertig".

Das Geheimnis wird nur einmal während der Erstellung offenbart. Die Client-ID ist identisch mit der Anwendungs-ID des Dienstprinzipals.

Kontoadministratoren können auch einen OAuth-Geheimschlüssel über die Seite mit den Dienstprinzipaldetails in der Kontokonsole generieren.

  1. Melden Sie sich als Kontoadministrator*in bei der Kontokonsole an.

  2. Klicken Sie auf Benutzerverwaltungssymbol der Kontokonsole Benutzerverwaltung.

  3. Wählen Sie auf der Registerkarte "Dienstprinzipale" Ihren Dienstprinzipal aus.

  4. Klicken Sie unter OAuth-Geheimnisse auf Geheimnis generieren.

    OAuth-Schlüssel aus dem Arbeitsbereich generieren

  5. Kopieren Sie den angezeigten geheimen Schlüssel und die Client-ID, und klicken Sie dann auf "Fertig".

Hinweis

Damit der Dienstprinzipal Cluster oder SQL-Warehouses verwenden kann, müssen Sie ihm Zugriff darauf gewähren. Weitere Informationen finden Sie unter Compute-Berechtigungen und Verwaltung eines SQL-Warehouse.

Schritt 4: Verwenden der OAuth M2M-Authentifizierung

Um die OAuth M2M-Authentifizierung zu verwenden, müssen Sie die folgenden zugeordneten Umgebungsvariablen, .databrickscfg Felder, Terraformfelder oder Config Felder festlegen:

  • Der Azure Databricks-Host, der für Kontovorgänge als https://accounts.azuredatabricks.net oder für Arbeitsbereichsvorgänge als zielarbeitsbereichsspezifische URL, z. B. https://adb-1234567890123456.7.azuredatabricks.net, angegeben wird.
  • Die Azure Databricks-Konto-ID für Azure Databricks-Kontovorgänge.
  • Die Client-ID des Dienstprinzipals.
  • Geheimnis des Dienstprinzipals.

Um die OAuth M2M-Authentifizierung durchzuführen, integrieren Sie Folgendes in Ihren Code, basierend auf dem beteiligten Tool oder SDK:

Environment

Informationen zum Verwenden von Umgebungsvariablen für einen bestimmten Azure Databricks-Authentifizierungstyp mit einem Tool oder SDK finden Sie unter Authentifizierung des Zugriffs auf Azure Databricks-Ressourcen oder der Dokumentation der Tools bzw. von SDK. Siehe auch Umgebungsvariablen und Felder für die einheitliche Clientauthentifizierung und die Standardmethoden und einheitliche Clientauthentifizierung.

Legen Sie für Vorgänge auf Kontoebene die folgenden Umgebungsvariablen fest:

  • DATABRICKS_HOST, auf die URL der Kontokonsole von Azure Databricks festgelegt, https://accounts.azuredatabricks.net.
  • DATABRICKS_ACCOUNT_ID
  • DATABRICKS_CLIENT_ID
  • DATABRICKS_CLIENT_SECRET

Legen Sie für Vorgänge auf Arbeitsbereichsebene die folgenden Umgebungsvariablen fest:

Profil

Erstellen oder identifizieren Sie ein Azure Databricks-Konfigurationsprofil mit den folgenden Feldern in Ihrer .databrickscfg-Datei. Wenn Sie das Profil erstellen, ersetzen Sie die Platzhalter durch die entsprechenden Werte. Informationen zur Verwendung des Profils mit einem Tool oder SDK finden Sie unter Authentifizierung des Zugriffs auf Azure Databricks-Ressourcen oder in der Dokumentation des jeweiligen Tools oder SDK. Siehe auch Umgebungsvariablen und Felder für die einheitliche Clientauthentifizierung und die Standardmethoden und einheitliche Clientauthentifizierung.

Legen Sie für Vorgänge auf Kontoebene die folgenden Werte in Ihrer .databrickscfg-Datei fest. In diesem Fall lautet die Konsolen-URL Ihres Azure Databricks-Kontos https://accounts.azuredatabricks.net:

[<some-unique-configuration-profile-name>]
host          = <account-console-url>
account_id    = <account-id>
client_id     = <service-principal-client-id>
client_secret = <service-principal-secret>

Legen Sie für Vorgänge auf Arbeitsbereichsebene die folgenden Werte in Ihrer .databrickscfg-Datei fest. In diesem Fall ist der Host die arbeitsbereichsspezifische Azure Databricks-URL, z. B. https://adb-1234567890123456.7.azuredatabricks.net:

[<some-unique-configuration-profile-name>]
host          = <workspace-url>
client_id     = <service-principal-client-id>
client_secret = <service-principal-secret>

BEFEHLSZEILENSCHNITTSTELLE (CLI)

Führen Sie für Databricks CLI eine der folgenden Aktionen aus:

  • Legen Sie die Umgebungsvariablen wie im Abschnitt „Umgebung“ dieses Artikels angegeben fest.
  • Legen Sie die Werte in Ihrer .databrickscfg-Datei wie im Abschnitt „Profil“ dieses Artikels angegeben fest.

Umgebungsvariablen haben immer Vorrang vor den Werten in Ihrer .databrickscfg-Datei.

Weitere Informationen finden Sie unter OAuth Machine-to-Machine (M2M)-Authentifizierung.

Verbinden

Hinweis

Die M2M-Authentifizierung von OAuth wird in den folgenden Versionen von Databricks Connect unterstützt:

  • Für Python: Databricks Connect für Databricks Runtime 14.0 und höher
  • Für Scala: Databricks Connect für Databricks Runtime 13.3 LTS und höher. Für das Databricks-SDK für Java, das in Databricks Connect für Databricks Runtime 13.3 LTS und höher enthalten ist, muss ein Upgrade auf das Databricks-SDK für Java 0.17.0 oder höher durchgeführt werden.

Für Databricks Connect können Sie eine der folgenden Aktionen ausführen:

  • Legen Sie die Werte in Ihrer .databrickscfg-Datei für Vorgänge auf Arbeitsbereichsebene in Azure Databricks fest, wie im Abschnitt „Profil“ dieses Artikels angegeben. Legen Sie auch die Umgebungsvariable cluster_id in Ihrem Profil auf Ihre arbeitsbereichsspezifische URL fest, z. B. https://adb-1234567890123456.7.azuredatabricks.net.
  • Legen Sie die Umgebungsvariablen für Vorgänge auf Arbeitsbereichsebene in Azure Databricks fest, wie im Abschnitt „Umgebung“ dieses Artikels angegeben. Legen Sie auch die Umgebungsvariable DATABRICKS_CLUSTER_ID auf Ihre arbeitsbereichsspezifische URL fest, z. B. https://adb-1234567890123456.7.azuredatabricks.net.

Die Werte in Ihrer .databrickscfg-Datei haben immer Vorrang vor Umgebungsvariablen.

Informationen zum Initialisieren des Databricks Connect-Clients mit diesen Umgebungsvariablen oder Werten in Ihrer .databrickscfg Datei finden Sie unter Computekonfiguration für Databricks Connect.

VS-Code

Für die Databricks-Erweiterung für Visual Studio Code gehen Sie folgendermaßen vor:

  1. Legen Sie die Werte in Ihrer .databrickscfg-Datei für Vorgänge auf Arbeitsbereichsebene in Azure Databricks fest, wie im Abschnitt „Profil“ dieses Artikels angegeben.
  2. Wählen Sie in der Databricks-Erweiterung für Visual Studio Code im Bereich Konfiguration die Option Databricks konfigurieren aus.
  3. Geben Sie in der Befehlspalette als Databricks-Host Ihre arbeitsbereichsspezifische URL ein, z. B https://adb-1234567890123456.7.azuredatabricks.net, und drücken Sie dann Enter.
  4. Wählen Sie in der Befehlspalette den Namen Ihres Zielprofils in der Liste für Ihre URL aus.

Weitere Informationen finden Sie unter Einrichten der Authentifizierung für die Databricks-Erweiterung für Visual Studio Code.

Terraform

Für Vorgänge auf Kontoebene, für Standardauthentifizierung:

provider "databricks" {
  alias = "accounts"
}

Für die direkte Konfiguration (ersetzen Sie die retrieve-Platzhalter durch Ihre eigene Implementierung, um die Werte aus der Konsole oder einem anderen Konfigurationsspeicher abzurufen, z. B. dem HashiCorp-Tresor. Weitere Informationen finden Sie unter Tresoranbieter). In diesem Fall lautet die Konsolen-URL Ihres Azure Databricks-Kontos https://accounts.azuredatabricks.net:

provider "databricks" {
  alias         = "accounts"
  host          = <retrieve-account-console-url>
  account_id    = <retrieve-account-id>
  client_id     = <retrieve-client-id>
  client_secret = <retrieve-client-secret>
}

Für Vorgänge auf Arbeitsbereichsebene, für Standardauthentifizierung:

provider "databricks" {
  alias = "workspace"
}

Für die direkte Konfiguration (ersetzen Sie die retrieve-Platzhalter durch Ihre eigene Implementierung, um die Werte aus der Konsole oder einem anderen Konfigurationsspeicher abzurufen, z. B. dem HashiCorp-Tresor. Weitere Informationen finden Sie unter Tresoranbieter). In diesem Fall ist der Host die arbeitsbereichsspezifische Azure Databricks-URL, z. B. https://adb-1234567890123456.7.azuredatabricks.net:

provider "databricks" {
  alias         = "workspace"
  host          = <retrieve-workspace-url>
  client_id     = <retrieve-client-id>
  client_secret = <retrieve-client-secret>
}

Weitere Informationen zur Authentifizierung mit dem Databricks-Terraform-Anbieter finden Sie unter Authentifizierung.

Python

Verwenden Sie für Vorgänge auf Kontoebene Folgendes für die Standardauthentifizierung:

from databricks.sdk import AccountClient

a = AccountClient()
# ...

Verwenden Sie für eine direkte Konfiguration Folgendes, und ersetzen Sie dabei die Platzhalter vom Typ retrieve durch Ihre eigene Implementierung, um die Werte aus der Konsole oder aus einem anderen Konfigurationsspeicher (z. B. Azure Key Vault) abzurufen. In diesem Fall lautet die Konsolen-URL Ihres Azure Databricks-Kontos https://accounts.azuredatabricks.net:

from databricks.sdk import AccountClient

a = AccountClient(
  host          = retrieve_account_console_url(),
  account_id    = retrieve_account_id(),
  client_id     = retrieve_client_id(),
  client_secret = retrieve_client_secret()
)
# ...

Für Vorgänge auf Arbeitsbereichsebene, insbesondere für die Standardauthentifizierung:

from databricks.sdk import WorkspaceClient

w = WorkspaceClient()
# ...

Ersetzen Sie für eine direkte Konfiguration die Platzhalter vom Typ retrieve durch Ihre eigene Implementierung, um die Werte aus der Konsole oder aus einem anderen Konfigurationsspeicher (z. B. Azure Key Vault) abzurufen. In diesem Fall ist der Host die arbeitsbereichsspezifische Azure Databricks-URL, z. B. https://adb-1234567890123456.7.azuredatabricks.net:

from databricks.sdk import WorkspaceClient

w = WorkspaceClient(
  host          = retrieve_workspace_url(),
  client_id     = retrieve_client_id(),
  client_secret = retrieve_client_secret()
)
# ...

Weitere Informationen zur Authentifizierung mit Databricks-Tools und -SDKs, die Python verwenden und die einheitliche Databricks-Clientauthentifizierung implementieren, finden Sie hier:

Hinweis

Die Databricks-Erweiterung für Visual Studio Code verwendet Python, verfügt jedoch noch über keine Implementierung der M2M-Authentifizierung von OAuth.

Java

Für Vorgänge auf Arbeitsbereichsebene, für Standardauthentifizierung:

import com.databricks.sdk.WorkspaceClient;
// ...
WorkspaceClient w = new WorkspaceClient();
// ...

Ersetzen Sie für eine direkte Konfiguration die Platzhalter vom Typ retrieve durch Ihre eigene Implementierung, um die Werte aus der Konsole oder aus einem anderen Konfigurationsspeicher (z. B. Azure Key Vault) abzurufen. In diesem Fall ist der Host die arbeitsbereichsspezifische Azure Databricks-URL, z. B. https://adb-1234567890123456.7.azuredatabricks.net:

import com.databricks.sdk.WorkspaceClient;
import com.databricks.sdk.core.DatabricksConfig;
// ...
DatabricksConfig cfg = new DatabricksConfig()
  .setHost(retrieveWorkspaceUrl())
  .setClientId(retrieveClientId())
  .setClientSecret(retrieveClientSecret());
WorkspaceClient w = new WorkspaceClient(cfg);
// ...

Weitere Informationen zur Authentifizierung mit Databricks-Tools und -SDKs, die Java verwenden und die einheitliche Databricks-Clientauthentifizierung implementieren, finden Sie hier:

Go

Für Vorgänge auf Kontoebene, für Standardauthentifizierung:

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

Ersetzen Sie für eine direkte Konfiguration die Platzhalter vom Typ retrieve durch Ihre eigene Implementierung, um die Werte aus der Konsole oder aus einem anderen Konfigurationsspeicher (z. B. Azure Key Vault) abzurufen. In diesem Fall lautet die Konsolen-URL Ihres Azure Databricks-Kontos https://accounts.azuredatabricks.net:

import (
"github.com/databricks/databricks-sdk-go"
)
// ...
w := databricks.Must(databricks.NewWorkspaceClient(&databricks.Config{
  Host:         retrieveAccountConsoleUrl(),
  AccountId:    retrieveAccountId(),
  ClientId:     retrieveClientId(),
  ClientSecret: retrieveClientSecret(),
}))
// ...

Für Vorgänge auf Arbeitsbereichsebene, für Standardauthentifizierung:

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

Ersetzen Sie für eine direkte Konfiguration die Platzhalter vom Typ retrieve durch Ihre eigene Implementierung, um die Werte aus der Konsole oder aus einem anderen Konfigurationsspeicher (z. B. Azure Key Vault) abzurufen. In diesem Fall ist der Host die arbeitsbereichsspezifische Azure Databricks-URL, z. B. https://adb-1234567890123456.7.azuredatabricks.net:

import (
"github.com/databricks/databricks-sdk-go"
)
// ...
a := databricks.Must(databricks.NewAccountClient(&databricks.Config{
  Host:         retrieveWorkspaceUrl(),
  ClientId:     retrieveClientId(),
  ClientSecret: retrieveClientSecret(),
}))
// ...

Weitere Informationen zur Authentifizierung mit Databricks-Tools und -SDKs, die Go verwenden und die einheitliche Databricks-Clientauthentifizierung implementieren, finden Sie unter Authentifizieren des Databricks SDK für Go bei Ihrem Azure Databricks-Konto oder -Arbeitsbereich.

Manuelles Generieren und Verwenden von Zugriffstoken für die OAuth-Computer-zu-Computer-Authentifizierung (M2M)

Azure Databricks-Tools und SDKs, die den einheitlichen Authentifizierungsstandard des Databricks-Clients implementieren, generieren, aktualisieren und verwenden automatisch Azure Databricks OAuth-Zugriffstoken nach Bedarf für die OAuth M2M-Authentifizierung in Ihrem Auftrag.

Databricks empfiehlt jedoch die Verwendung der einheitlichen Clientauthentifizierung, wenn Sie Azure Databricks OAuth-Zugriffstoken manuell generieren, aktualisieren oder verwenden müssen, befolgen Sie die Anweisungen in diesem Abschnitt.

Verwenden Sie die Client-ID des Dienstprinzipals und den geheimen OAuth-Schlüssel, um ein OAuth-Zugriffstoken anzufordern, um sowohl REST-APIs auf Kontoebene als auch REST-APIs auf Arbeitsbereichsebene zu authentifizieren. Das Zugriffstoken läuft in einer Stunde ab. Sie müssen nach dem Ablauf ein neues OAuth-Zugriffstoken anfordern. Der Umfang der OAuth-Zugriffstoken hängt von der Ebene ab, auf der Sie das Token erstellen. Sie können ein Token entweder auf Kontoebene oder auf Arbeitsbereichsebene wie folgt erstellen:

Manuelles Generieren eines Zugriffstokens auf Kontoebene

Ein von der Kontoebene erstelltes OAuth-Zugriffstoken kann für Databricks-REST-APIs im Konto verwendet werden, und in allen Arbeitsbereichen hat der Dienstprinzipal Zugriff darauf.

  1. Melden Sie sich als Kontoadministrator*in bei der Kontokonsole an.

  2. Klicken Sie in der oberen rechten Ecke auf den nach unten weisenden Pfeil neben Ihrem Benutzernamen.

  3. Kopieren Sie Ihre Konto-ID.

  4. Erstellen Sie die Tokenendpunkt-URL, indem Sie <my-account-id> in der folgenden URL durch die Konto-ID ersetzen, die Sie kopiert haben.

    https://accounts.azuredatabricks.net/oidc/accounts/<my-account-id>/v1/token
    
  5. Verwenden Sie einen Client, z curl . B. um ein OAuth-Zugriffstoken mit der Tokenendpunkt-URL, die Client-ID des Dienstprinzipals (auch als Anwendungs-ID bezeichnet) und den von Ihnen erstellten OAuth-Schlüssel des Dienstprinzipals anzufordern. Der all-apis Bereich fordert ein OAuth-Zugriffstoken an, das für den Zugriff auf alle Databricks-REST-APIs verwendet werden kann, auf die der Dienstprinzipal Zugriff gewährt wurde.

    • Ersetzen Sie <token-endpoint-URL> durch die zuvor erwähnte Tokenendpunkt-URL.
    • Ersetzen Sie <client-id> durch die Client-ID des Dienstprinzipals, die auch als Anwendungs-ID bezeichnet wird.
    • Ersetzen Sie <client-secret> durch das von Ihnen erstellte OAuth-Geheimnis des Dienstprinzipals.
    export CLIENT_ID=<client-id>
    export CLIENT_SECRET=<client-secret>
    
    curl --request POST \
    --url <token-endpoint-URL> \
    --user "$CLIENT_ID:$CLIENT_SECRET" \
    --data 'grant_type=client_credentials&scope=all-apis'
    

    Dies generiert eine Antwort, die in etwa wie folgt aussieht:

    {
      "access_token": "eyJraWQiOiJkYTA4ZTVjZ…",
      "token_type": "Bearer",
      "expires_in": 3600
    }
    

    Kopieren Sie access_token aus der Antwort.

Manuelles Generieren eines Zugriffstokens auf Arbeitsbereichsebene

Ein von der Arbeitsbereichsebene erstelltes OAuth-Zugriffstoken kann nur auf REST-APIs in diesem Arbeitsbereich zugreifen, auch wenn der Dienstprinzipal ein Kontoadministrator ist oder Mitglied anderer Arbeitsbereiche ist.

  1. Erstellen Sie die Tokenendpunkt-URL, indem Sie https://<databricks-instance> durch die Arbeitsbereichs-URL Ihrer Azure Databricks-Bereitstellung ersetzen:

    https://<databricks-instance>/oidc/v1/token
    
  2. Verwenden Sie einen Client, z curl . B. um ein OAuth-Zugriffstoken mit der Tokenendpunkt-URL, die Client-ID des Dienstprinzipals (auch als Anwendungs-ID bezeichnet) und den von Ihnen erstellten OAuth-Schlüssel des Dienstprinzipals anzufordern. Der all-apis Bereich fordert ein OAuth-Zugriffstoken an, das für den Zugriff auf alle Databricks-REST-APIs verwendet werden kann, denen der Dienstprinzipal Zugriff innerhalb des Arbeitsbereichs gewährt hat, von dem Sie das Token anfordern.

    • Ersetzen Sie <token-endpoint-URL> durch die zuvor erwähnte Tokenendpunkt-URL.
    • Ersetzen Sie <client-id> durch die Client-ID des Dienstprinzipals, die auch als Anwendungs-ID bezeichnet wird.
    • Ersetzen Sie <client-secret> durch das von Ihnen erstellte OAuth-Geheimnis des Dienstprinzipals.
    export CLIENT_ID=<client-id>
    export CLIENT_SECRET=<client-secret>
    
    curl --request POST \
    --url <token-endpoint-URL> \
    --user "$CLIENT_ID:$CLIENT_SECRET" \
    --data 'grant_type=client_credentials&scope=all-apis'
    

    Dies generiert eine Antwort, die in etwa wie folgt aussieht:

    {
      "access_token": "eyJraWQiOiJkYTA4ZTVjZ…",
      "token_type": "Bearer",
      "expires_in": 3600
    }
    

    Kopieren Sie access_token aus der Antwort.

Aufrufen einer Databricks-REST-API

Sie können jetzt das OAuth-Zugriffstoken verwenden, um sich bei REST-APIs auf Azure Databricks-Kontoebene und REST-APIs auf Arbeitsbereichsebene zu authentifizieren. Der Dienstprinzipal muss ein Kontoadministrator sein, um REST-APIs auf Kontoebene aufZurufen.

Sie können das Token mithilfe der Bearer-Authentifizierung in den Header einschließen. Sie können diesen Ansatz mit curl oder einem beliebigen Client verwenden, den Sie erstellen.

Beispiel einer REST API-Anforderung auf Kontoebene

In diesem Beispiel wird die Bearer-Authentifizierung verwendet, um eine Liste aller Arbeitsbereiche abzurufen, die einem Konto zugeordnet sind.

  • Ersetzen Sie <oauth-access-token> das OAuth-Zugriffstoken des Dienstprinzipals, das Sie im vorherigen Schritt kopiert haben.
  • Ersetzen Sie <account-id> durch Ihre Konto-ID.
export OAUTH_TOKEN=<oauth-access-token>

curl --request GET --header "Authorization: Bearer $OAUTH_TOKEN" \
'https://accounts.azuredatabricks.net/api/2.0/accounts/<account-id>/workspaces'

Beispiel einer REST-API-Anforderung auf Arbeitsbereichsebene

In diesem Beispiel wird die Bearer-Authentifizierung verwendet, um alle verfügbaren Cluster im angegebenen Arbeitsbereich aufzulisten.

  • Ersetzen Sie <oauth-access-token> das OAuth-Zugriffstoken des Dienstprinzipals, das Sie im vorherigen Schritt kopiert haben.
  • Ersetzen Sie <workspace-URL> durch die URL Ihres Basisarbeitsbereichs. Das Format sieht in etwa wie folgt aus: dbc-a1b2345c-d6e7.cloud.databricks.com.
export OAUTH_TOKEN=<oauth-access-token>

curl --request GET --header "Authorization: Bearer $OAUTH_TOKEN" \
'https://<workspace-URL>/api/2.0/clusters/list'

Zusätzliche Ressourcen