Freigeben über


Autorisieren des Zugriffs auf Azure Databricks-Ressourcen

Auf dieser Seite wird erläutert, wie Sie den Zugriff auf Azure Databricks-Ressourcen mithilfe der Azure Databricks CLI- und REST-APIs autorisieren. Es beschreibt verschiedene Autorisierungsmethoden, wann sie verwendet werden sollen, und wie Sie die Authentifizierung für Ihren Anwendungsfall konfigurieren.

Um auf Azure Databricks-Ressourcen mit den CLI- oder REST-APIs zuzugreifen, müssen Sie sich mit einem Azure Databricks-Konto mit entsprechenden Berechtigungen authentifizieren. Ihr Azure Databricks-Administrator oder ein Benutzer mit Administratorrechten konfiguriert das Konto.

Konto- und API-Typen

Es gibt zwei Arten von Konten, die Sie für die Authentifizierung verwenden können:

  • Benutzerkonto: Für interaktive CLI-Befehle und API-Aufrufe.
  • Dienstprinzipal: Für automatisierte CLI-Befehle und API-Aufrufe ohne menschliche Interaktion.

Sie können einen Dienstprinzipal von MS Entra verwenden, um den Zugriff auf Ihr Azure Databricks-Konto oder Ihren Arbeitsbereich zu autorisieren. Weitere Informationen finden Sie unter Microsoft Entra ID-Dienstprinzipalauthentifizierung. Databricks empfiehlt jedoch die Verwendung eines Databricks-Dienstprinzipals mit OAuth, da seine Zugriffstoken für die Nur-Databricks-Autorisierung robuster sind.

Azure Databricks verfügt über zwei Arten von APIs, die unterschiedliche Authentifizierungsansätze erfordern:

  • APIs auf Kontoebene: Verfügbar für Kontobesitzer und Administratoren, die auf der Kontokonsolen-URL gehostet werden. Siehe APIs auf Kontoebene.
  • APIs auf Arbeitsbereichsebene: Verfügbar für Arbeitsbereichsbenutzer und Administratoren, die in Arbeitsbereichs-URLs gehostet werden. Siehe APIs auf Arbeitsbereichsebene.

Autorisierungsmethoden

Wählen Sie die Autorisierungsmethode aus, die am besten zu Ihrem Anwendungsfall passt. Azure Databricks-Tools und SDKs unterstützen mehrere Autorisierungsmethoden, sodass Sie die am besten geeignete Methode für Ihr Szenario auswählen können.

Method Description Anwendungsfall
Databricks OAuth-Tokenverbund (empfohlen) OAuth-Token von Ihrem Identitätsanbieter für Benutzer oder Dienstprinzipale. Ermöglicht es Ihnen, sich bei Azure Databricks zu authentifizieren, ohne Databricks-Zugangsdaten zu verwalten.
Databricks OAuth für Diensthauptbenutzer (OAuth M2M) Kurzlebige OAuth-Token für Dienstprinzipale. Unbeaufsichtigte Authentifizierungsszenarien, z. B. vollständig automatisierte und CI/CD-Workflows.
OAuth für Benutzer (OAuth U2M) Kurzlebige OAuth-Token für Benutzer. Szenario für die betreute Authentifizierung, bei dem Sie Ihren Webbrowser verwenden, um sich in Echtzeit mit Azure Databricks zu authentifizieren, wenn Sie dazu aufgefordert werden.
Azure-verwaltete Dienstidentitätsautorisierung Microsoft Entra ID-Token für verwaltete Azure-Identitäten. Verwendung nur mit Azure-Ressourcen, die verwaltete Identitäten unterstützen, z. B. virtuelle Azure-Computer.
Microsoft Entra ID-Dienstprinzipalautorisierung Microsoft Entra ID-Token für Microsoft Entra ID-Dienstprinzipale. Nur mit Azure-Ressourcen verwenden, die Microsoft Entra ID-Tokens unterstützen und keine verwalteten Identitäten unterstützen, wie z. B. Azure DevOps.
Azure CLI-Autorisierung Microsoft Entra ID-Token für Benutzende oder Microsoft Entra ID-Dienstprinzipale. Dient zum Autorisieren des Zugriffs auf Azure-Ressourcen und Azure Databricks mithilfe der Azure CLI.
Microsoft Entra ID-Benutzerautorisierung Microsoft Entra ID-Token für Benutzer. Verwendung nur mit Azure-Ressourcen, die nur Microsoft Entra-ID-Token unterstützen. Databricks empfiehlt nicht, Microsoft Entra ID-Token für Azure Databricks-Benutzer*innen manuell zu erstellen.

Einheitliche Authentifizierung

Die einheitliche Azure Databricks-Authentifizierung bietet eine konsistente Möglichkeit, die Authentifizierung für alle unterstützten Tools und SDKs zu konfigurieren. Bei diesem Ansatz werden Standardumgebungsvariablen und Konfigurationsprofile zum Speichern von Anmeldeinformationswerten verwendet, sodass Sie CLI-Befehle ausführen oder APIs aufrufen können, ohne die Authentifizierung wiederholt zu konfigurieren.

Die einheitliche Authentifizierung behandelt Kontotypen unterschiedlich:

Um OAuth-Zugriffstoken zu verwenden, muss Ihr Azure Databricks-Arbeitsbereich oder Kontoadministrator Ihrem Benutzerkonto oder Dienstprinzipal die CAN USE Berechtigung für die Konten- und Arbeitsbereichsfunktionen erteilen, auf die Ihr Code zugreift.

Umgebungsvariablen

Um die einheitliche Authentifizierung zu konfigurieren, legen Sie die folgenden Umgebungsvariablen fest. Einige Variablen gelten sowohl für die Benutzer- als auch für die Dienstprinzipalautorisierung, während andere nur für Dienstprinzipale erforderlich sind.

Umgebungsvariable Description
DATABRICKS_HOST Die URL Ihrer Azure Databricks-Kontokonsole (https://accounts.azuredatabricks.net) oder Ihres Azure Databricks-Arbeitsbereichs (https://{workspace-url-prefix}.azuredatabricks.net). Wählen Sie basierend auf dem Typ der Vorgänge aus, die Ihr Code ausführt.
DATABRICKS_ACCOUNT_ID Wird für Azure Databricks-Kontovorgänge verwendet. Dies ist Ihre Azure Databricks-Konto-ID. Zum Abrufen siehe Auffinden Ihrer Konto-ID.
DATABRICKS_CLIENT_ID (Nur OAuth mit Dienstprinzipal) Die Client-ID, die beim Erstellen des Dienstprinzipals zugewiesen wurde.
DATABRICKS_CLIENT_SECRET (Nur OAuth mit Dienstprinzipal) Der geheime Clientschlüssel, den Sie beim Erstellen des Dienstprinzipals generiert haben.

Anstatt Umgebungsvariablen manuell festzulegen, sollten Sie diese in einem Databricks-Konfigurationsprofil (.databrickscfg) auf Ihrem Clientcomputer definieren.

Konfigurationsprofile

Azure Databricks-Konfigurationsprofile enthalten Einstellungen und Anmeldeinformationen, die Azure Databricks-Tools und SDKs zum Autorisieren des Zugriffs benötigen. Diese Profile werden in lokalen Clientdateien (normalerweise benannt .databrickscfg) für Ihre Tools, SDKs, Skripts und Apps gespeichert.

Weitere Informationen finden Sie unter Azure Databricks-Konfigurationsprofile.

Integrationen von Drittanbietern

Bei der Integration in Dienste und Tools von Drittanbietern müssen Sie die von diesen Diensten bereitgestellten Authentifizierungsmechanismen verwenden. Azure Databricks bietet jedoch Unterstützung für allgemeine Integrationen: