Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Artikel wird beschrieben, wie Sie Rollen für Dienstprinzipale in Ihrem Azure Databricks-Konto verwalten.
Ein Dienstprinzipal ist eine Identität, die Sie in Azure Databricks für die Verwendung mit automatisierten Tools, Aufträgen und Anwendungen erstellen. Dienstkonten ermöglichen automatisierten Tools und Skripten ausschließlich API-Zugriff auf Azure Databricks-Ressourcen und bieten höhere Sicherheit als die Verwendung von Benutzern oder Gruppen.
Sie können Azure Databricks Benutzern, Dienstprinzipalen und Kontogruppen Zugriff gewähren, um einen Dienstprinzipal zu verwenden. Dadurch können Benutzer Aufträge als Dienstprinzipal anstelle ihrer eigenen Identität ausführen. Dies verhindert, dass Aufträge fehlschlagen, wenn ein Benutzer Ihre Organisation verlässt oder eine Gruppe geändert wird.
Eine Übersicht über Dienstprinzipale finden Sie unter Dienstprinzipale.
Serviceprinzipalrollen
Dienstprinzipalrollen sind Rollen auf Kontoebene. Dies bedeutet, dass sie nur einmal in Ihrem Konto definiert werden müssen und für alle Arbeitsbereiche gelten. Es gibt zwei Rollen, die Sie einem Dienstprinzipal zuweisen können: Dienstprinzipal-Manager und Dienstprinzipal-Benutzer.
- Mit dem Dienstprinzipal-Manager können Sie Rollen für einen Dienstprinzipal verwalten. Die Person, welche einen Dienstprinzipal erstellt hat, verfügt über die Rolle Dienstprinzipalmanager für den Dienstprinzipal. Kontoadmins verfügen über die Rolle Dienstprinzipalmanager für alle Dienstprinzipale in einem Konto.
Hinweis
Wenn ein Dienstprinzipal vor dem 13. Juni 2023 erstellt wurde, verfügt die Person, die ihn erstellt hat. nicht standardmäßig über die Rolle Dienstprinzipalmanager. Wenn Sie die Managerrolle benötigen, bitten Sie ein Mitglied der Kontoadministration, Ihnen die Rolle Dienstprinzipalmanager zuzuweisen.
- Die Rolle des Dienstprinzipalbenutzers ermöglicht es Arbeitsbereichsbenutzern, Aufträge als Dienstprinzipal auszuführen. Der Auftrag wird mit der Identität des Dienstprinzipals ausgeführt, anstatt mit der Identität des Auftragsbesitzers.
Benutzer mit der Rolle Dienstprinzipalmanager erben nicht die Rolle Dienstprinzipalbenutzer. Wenn Sie den Dienstprinzipal zum Ausführen von Aufträgen verwenden möchten, müssen Sie sich auch nach der Erstellung des Dienstprincipals die Rolle des „Dienstbenutzer“ explizit selbst zuweisen.
Hinweis
Azure Databricks Dienstprinzipalrollen überschneiden sich nicht mit Azure Rollen oder Microsoft Entra ID Rollen. Diese Rollen umfassen nur das Azure Databricks Konto.
Verwalten von Dienstprinzipalrollen mithilfe der Kontokonsole
Kontoadministrator*innen können Dienstprinzipalrollen mithilfe der Kontokonsole verwalten.
Anzeigen von Rollen für einen Dienstprinzipal
- Melden Sie sich als Kontoadministrator*in bei der Kontokonsole an.
- Klicken Sie in der Randleiste auf Benutzerverwaltung.
- Suchen Sie auf der Registerkarte Dienstprinzipale nach dem Namen und klicken Sie darauf.
- Klicken Sie auf die Registerkarte Berechtigungen.
Sie können die Liste der Principals und die Rollen anzeigen, die ihnen für den Dienstprinzipal gewährt wurden. Sie können auch die Suchleiste verwenden, um nach einem bestimmten Benutzer oder einer Rolle zu suchen.
Zuweisen von Rollen auf einen Dienstprinzipal
Melden Sie sich als Kontoadministrator*in bei der Kontokonsole an.
Klicken Sie in der Randleiste auf Benutzerverwaltung.
Suchen Sie auf der Registerkarte Dienstprinzipale nach dem Namen und klicken Sie darauf.
Klicken Sie auf die Registerkarte Berechtigungen.
Klicken Sie auf Zugriff gewähren.
Suchen Sie nach dem*der Benutzer*in, dem Dienstprinzipal oder der Gruppe, und wählen Sie die Rollen (Dienstprinzipal: Manager oder Dienstprinzipal: Benutzer) aus, die Sie zuweisen möchten.
Hinweis
Benutzer mit der Rolle Dienstprinzipalmanager erben nicht die Rolle Dienstprinzipalbenutzer. Wenn Benutzer den Dienstprinzipal zum Ausführen von Aufträgen verwenden sollen, müssen Sie die Rolle Dienstprinzipalbenutzer explizit zuweisen.
Klicken Sie auf Speichern.
Widerrufen von Rollen für einen Dienstprinzipal
- Melden Sie sich als Kontoadministrator*in bei der Kontokonsole an.
- Klicken Sie in der Randleiste auf Benutzerverwaltung.
- Suchen Sie auf der Registerkarte Dienstprinzipale nach dem Namen und klicken Sie darauf.
- Klicken Sie auf die Registerkarte Berechtigungen.
- Suchen Sie nach dem Benutzer oder der Benutzerin, dem Dienstprinzipal oder der Gruppe, um ihre Rollen zu bearbeiten.
- Klicken Sie in der Zeile mit dem Prinzipal auf das
und wählen Sie dann Bearbeiten aus. Wählen Sie alternativ Löschen aus, um alle Rollen für den Prinzipal zu widerrufen.
- Klicken Sie auf Bearbeiten.
- Klicken Sie auf das X neben den Rollen, die Sie widerrufen möchten.
- Klicken Sie auf Speichern.
Verwalten von Dienstprinzipalrollen auf der Seite „Administratoreinstellungen“ für einen Arbeitsbereich
Arbeitsbereichsadministrator*innen können die Dienstprinzipalrollen für Dienstprinzipale, für die sie über die Rolle Dienstprinzipalmanager verfügen, über die Seite „Administratoreinstellungen“ verwalten.
Anzeigen von Rollen für einen Dienstprinzipal
- Melden Sie sich als Arbeitsbereichsadministrator beim Azure Databricks Arbeitsbereich an.
- Klicken Sie in der oberen Leiste des Azure Databricks Arbeitsbereichs auf Ihren Benutzernamen, und wählen Sie Settings aus.
- Klicken Sie auf die Registerkarte Identität und Zugriff.
- Klicken Sie neben Dienstprinzipale auf Verwalten.
- Suchen Sie den Namen, und klicken Sie darauf.
- Klicken Sie auf die Registerkarte Berechtigungen.
Sie können die Liste der Principals und die Rollen anzeigen, die ihnen für den Dienstprinzipal gewährt wurden. Sie können auch die Suchleiste verwenden, um nach einem bestimmten Benutzer oder einer Rolle zu suchen.
Zuweisen von Rollen auf einen Dienstprinzipal
Sie müssen über die Rolle Dienstprinzipalmanager für einen Dienstprinzipal verfügen, um Rollen zuzuweisen.
Melden Sie sich als Arbeitsbereichsadministrator beim Azure Databricks Arbeitsbereich an.
Klicken Sie in der oberen Leiste des Azure Databricks Arbeitsbereichs auf Ihren Benutzernamen, und wählen Sie Settings aus.
Klicken Sie auf die Registerkarte Identität und Zugriff.
Klicken Sie neben Dienstprinzipale auf Verwalten.
Suchen Sie den Namen, und klicken Sie darauf.
Klicken Sie auf die Registerkarte Berechtigungen.
Klicken Sie auf Zugriff gewähren.
Suchen Sie nach dem*der Benutzer*in, dem Dienstprinzipal oder der Gruppe, und wählen Sie die Rollen (Dienstprinzipal: Manager oder Dienstprinzipal: Benutzer) aus, die Sie zuweisen möchten.
Hinweis
Rollen können allen Benutzer*innen, jedem Dienstprinzipal oder jeder Gruppe auf Kontoebene zugewiesen werden, auch wenn diese kein Mitglied des Arbeitsbereichs sind. Rollen können lokalen Arbeitsbereichsgruppen nicht zugewiesen werden.
Benutzer mit der Rolle Dienstprinzipalmanager erben nicht die Rolle Dienstprinzipalbenutzer. Wenn Benutzer den Dienstprinzipal zum Ausführen von Aufträgen verwenden sollen, müssen Sie die Rolle Dienstprinzipalbenutzer explizit zuweisen.
Klicken Sie auf Speichern.
Widerrufen von Rollen für einen Dienstprinzipal
Sie müssen über die Rolle Dienstprinzipalmanager für einen Dienstprinzipal verfügen, um Rollen zu widerrufen.
- Melden Sie sich als Arbeitsbereichsadministrator beim Azure Databricks Arbeitsbereich an.
- Klicken Sie in der oberen Leiste des Azure Databricks Arbeitsbereichs auf Ihren Benutzernamen, und wählen Sie Settings aus.
- Klicken Sie auf die Registerkarte Identität und Zugriff.
- Klicken Sie neben Dienstprinzipale auf Verwalten.
- Suchen Sie den Namen, und klicken Sie darauf.
- Klicken Sie auf die Registerkarte Berechtigungen.
- Suchen Sie nach dem Benutzer, dem Dienstprinzipal oder der Gruppe, um deren Rollen zu bearbeiten.
- Klicken Sie in der Zeile mit dem Prinzipal auf das
und wählen Sie dann Bearbeiten aus. Alternativ wählen Sie Löschen aus, um alle Rollen für den Hauptnutzer zu widerrufen.
- Klicken Sie auf Bearbeiten.
- Klicken Sie auf das X neben den Rollen, die Sie widerrufen möchten.
- Klicken Sie auf Speichern.
Verwalten von Dienstprinzipalrollen mithilfe der Databricks-CLI
Sie müssen über die Rolle Service Principal Manager (Dienstprinzipalmanager) verfügen, um Rollen für einen Dienstprinzipal zu verwalten. Sie können die Databricks-CLI verwenden, um Rollen zu verwalten. Informationen zum Installieren und Authentifizieren der Databricks CLI finden Sie unter Databricks CLI.
Sie können dienstprinzipalrollen auch mithilfe der Accounts Access Control API verwalten. Die Zugriffskontroll-API wird über das Azure Databricks Konto und die Arbeitsbereiche unterstützt.
Kontoadministrator*innen rufen die API unter accounts.azuredatabricks.net ({account-domain}/api/2.0/preview/accounts/{account_id}/access-control) auf.
Benutzer mit der Rolle Dienstprinzipalmanager, die keine Kontoadmins sind, rufen die API in der Arbeitsbereichsdomäne ({workspace-domain}/api/2.0/preview/accounts/access-control/) auf.
Zuweisen von Rollen für einen Dienstprinzipal mithilfe der Databricks-CLI
Die Accounts Access Control-API und CLI verwenden ein etag-Feld, um die Konsistenz sicherzustellen. Um Dienstprinzipalrollen über die API zuzuweisen oder zu widerrufen, geben Sie zuerst einen GET-Regelsatzbefehl aus und empfangen als Antwort ein etag. Anschließend können Sie Änderungen lokal anwenden und schließlich einen PUT-Regelsatz mit dem etag ausgeben.
Geben Sie beispielsweise einen GET-Regelsatz für den Dienstprinzipal aus, auf den Sie Zugriff gewähren möchten, indem Sie den folgenden Befehl ausführen:
databricks account access-control get-rule-set accounts/<account-id>/servicePrincipals/<application-id>/ruleSets/default <etag>
Ersetzen Sie:
-
<account-id>durch die Konto-ID -
<application-id>durch die Anwendungs-ID des Dienstprinzipals -
<etag>mit “”
Beispielantwort:
{
"etag":"<etag>",
"grant_rules": [
{
"principals": [
"users/user@example.com"
],
"role":"roles/servicePrincipal.manager"
},
{
"principals": [
"users/user@example.com"
],
"role":"roles/servicePrincipal.user"
}
],
"name":"<name>"
}
Kopieren Sie das Feld etag aus dem Antworttext zur späteren Verwendung.
Anschließend können Sie Aktualisierungen lokal vornehmen, wenn Sie den endgültigen Status der Regeln festlegen, und dann den Regelsatz mithilfe des Entitätstags (etag) aktualisieren. Um der Service-Hauptbenutzerrolle Benutzer dem Benutzer user2@example.com zuzuweisen, führen Sie Folgendes aus:
databricks account access-control update-rule-set --json '{
"name": "accounts/<account-id>/servicePrincipals/<application-id>/ruleSets/default",
"rule_set": {
"name": "accounts/<account-id>/servicePrincipals/<application-id>/ruleSets/default",
"grant_rules": [
{
"role": "roles/servicePrincipal.user",
"principals": ["users/user2@example.com"]
}
],
"etag": "<etag>"
}
}'
Ersetzen Sie:
-
<account-id>durch die Konto-ID -
<application-id>durch die Dienstprinzipal-ID der Anwendung -
<etag>mit dem etag, das Sie aus der letzten Antwort kopiert haben
Beispielantwort:
{
"etag":"<new-etag>",
"grant_rules": [
{
"principals": [
"users/user2@example.com"
],
"role":"roles/servicePrincipal.user"
}
],
"name":"accounts/<account-id>/servicePrincipals/<application-id>/ruleSets/default"
}
Wichtig
Da dies eine PUT-Methode ist, werden alle vorhandenen Rollen überschrieben. Um vorhandene Rollen beizubehalten, müssen Sie sie dem Array grant_roles hinzufügen.
Listen Sie die Dienstprinzipale, die Sie verwenden können
Mithilfe der Dienstprinzipal-API für Arbeitsbereiche können Sie die Dienstprinzipale auflisten, für die Sie über die Benutzerrolle verfügen, indem Sie nach servicePrincipal/use filtern.
Führen Sie den folgenden Befehl aus, um die Dienstprinzipale aufzulisten, für die Sie über die Rolle Dienstprinzipalbenutzer verfügen:
databricks service-principals list -p WORKSPACE --filter "permission eq 'servicePrincipal/use'"
Sie können Dienstprinzipale auch mithilfe der Service Principals-API für Arbeitsbereiche auflisten.