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 ein Dienstanmeldeinformationsobjekt im Unity-Katalog erstellen, mit dem Sie den Zugriff von Azure Databricks auf externe Clouddienste steuern können. Eine Dienstanmeldeinformation im Unity-Katalog kapselt eine langfristige Cloudanmeldeinformationen, die Zugriff auf diese Dienste gewähren.
Dienstanmeldeinformationen sind nicht für die Steuerung des Zugriffs auf Cloudspeicher vorgesehen, der als verwalteter Unity-Katalogspeicherort oder externer Speicherort verwendet wird. Verwenden Sie für diese Anwendungsfälle eine Speicher-Anmeldeinformation. Siehe Verbinden mit Cloudobjektspeicher mithilfe des Unity-Katalogs.
Um eine Dienstanmeldeinformation für den Zugriff auf Azure-Dienste zu erstellen, erstellen Sie einen Azure Databricks-Zugriffsconnector, der auf eine von Azure verwaltete Identität verweist und ihm Berechtigungen für einen Dienst oder dienste zuweist. Anschließend verweisen Sie in der Dienstanmeldeinformationsdefinition auf diesen Connector.
Vorbemerkungen
Bevor Sie eine Dienstberechtigung erstellen, müssen Sie die folgenden Voraussetzungen erfüllen:
In Azure Databricks:
Azure Databricks-Arbeitsbereich, der für Unity Catalog aktiviert ist.
CREATE SERVICE CREDENTIAL-Berechtigung für den mit dem Arbeitsbereich verbundenen Unity Catalog-Metastore. Kontoadministratoren und Metastoreadministratoren verfügen standardmäßig über diese Berechtigung. Wenn Ihr Arbeitsbereich automatisch für Unity-Katalog aktiviert wurde, verfügen Arbeitsbereichsadministratoren auch über diese Berechtigung.Hinweis
Dienstprinzipale müssen die Rolle "Kontoadministrator" haben, um Dienstanmeldeinformationen zu erstellen, die eine verwaltete Identität verwenden. Sie können
CREATE SERVICE CREDENTIALnicht an einen Dienstprinzipal delegieren. Dies gilt sowohl für Azure Databricks-Dienstprinzipale als auch für Microsoft Entra ID-Dienstprinzipale.
In Ihrem Azure-Mandanten:
- Ein Azure-Dienst in derselben Region wie die Arbeitsbereiche, aus der Sie auf die Daten zugreifen möchten.
- Die Rolle "Mitwirkender" oder "Besitzer" in einer Azure-Ressourcengruppe.
- Die Azure RBAC-Rolle des Besitzers oder des Benutzerzugriffsadministrators für das Dienstkonto.
Dienstanmeldeinformation mithilfe einer verwalteten Identität erstellen
Um die Identität zu konfigurieren, die den Zugriff auf Ihr Dienstkonto autorisiert, verwenden Sie einen Azure Databricks-Zugriffsconnector, der eine von Azure verwaltete Identität mit Ihrem Azure Databricks-Konto verbindet. Wenn Sie bereits über den definierten Zugriffsconnector verfügen, können Sie mit Schritt 2 im folgenden Verfahren fortfahren.
Hinweis
Sie können einen Dienstprinzipal anstelle einer verwalteten Identität verwenden, jedoch werden verwaltete Identitäten dringend empfohlen. Verwaltete Identitäten haben den Vorteil, dass Unity Catalog auf Dienstkonten zugreifen kann, die durch Netzwerkregeln geschützt sind, was mit Dienstprinzipalen nicht möglich ist. Zudem entfällt die Notwendigkeit, geheime Schlüssel zu verwalten und regelmäßig zu aktualisieren. Wenn Sie einen Dienstprinzipal verwenden müssen, lesen Sie "Erstellen von verwaltetem Speicher im Unity-Katalog mithilfe eines Dienstprinzipals (Legacy)".
Erstellen Sie im Azure-Portal einen Azure Databricks-Zugriffsconnector, und weisen Sie ihm Berechtigungen für den Dienst zu, auf den Sie zugreifen möchten, mithilfe der Anweisungen unter Konfigurieren einer verwalteten Identität für Unity-Katalog.
Ein Azure Databricks Access Connector ist eine Azure-Ressource der ersten Stunde, mit der Sie verwaltete Identitäten mit einem Azure Databricks-Konto verbinden können. Sie müssen über die Rolle "Mitwirkender" oder höher in der Zugriffsconnectorressource in Azure verfügen, um die Dienstanmeldeinformationen hinzuzufügen.
Anstatt den Anweisungen in Schritt 2 zu folgen: Gewähren Sie dem Speicherkonto den Zugriff auf die verwaltete Identität, gewähren Sie der verwalteten Identität Zugriff auf Ihr Dienstkonto.
Notieren Sie sich die Ressourcen-ID des Zugriffsconnectors.
Melden Sie sich bei Ihrem Azure Databricks-Arbeitsbereich als Benutzer an, der die in "Bevor Sie beginnen" aufgeführten Anforderungen erfüllt.
Klicken Sie auf
Katalog.
Klicken Sie auf die Schaltfläche "Externe Daten > ", wechseln Sie zur Registerkarte " Anmeldeinformationen ", und wählen Sie " Anmeldeinformationen erstellen" aus.
Wählen Sie "Dienstanmeldeinformationen" aus.
Geben Sie einen Anmeldeinformationsnamen, einen optionalen Kommentar und die Ressourcen-ID des Zugangsverbinders im Format ein:
/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Databricks/accessConnectors/<connector-name>(Optional) Wenn Sie den Zugriffsconnector mithilfe einer benutzerseitig zugewiesenen verwalteten Identität erstellt haben, geben Sie die Ressourcen-ID der verwalteten Identität im Feld Benutzerseitig zugewiesene verwaltete Identitäts-ID im folgenden Format ein:
/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<managed-identity-name>Klicken Sie auf Erstellen.
Kopieren Sie im Dialogfeld "Dienstanmeldeinformation erstellt" die Externe ID.
Sie können die externe ID auch jederzeit auf der Seite mit den Anmeldeinformationen des Diensts anzeigen.
Klicken Sie auf Fertig.
(Optional) Service-Authentifizierungsdaten bestimmten Arbeitsbereichen zuweisen
Standardmäßig sind die Dienstanmeldeinformationen von allen Arbeitsbereichen des Metastore aus zugänglich. Dies bedeutet, dass ein Benutzer, dem ein Privileg für das Dienst-Zertifikat erteilt wurde, dieses Privileg von jedem dem Metastore zugehörigen Arbeitsbereich aus ausüben kann. Wenn Sie Arbeitsbereiche verwenden, um den Benutzerdatenzugriff zu isolieren, sollten Sie den Zugriff auf Dienstanmeldeinformationen nur aus bestimmten Arbeitsbereichen zulassen. Dieses Feature wird als Arbeitsbereichsbindung oder Dienstanmeldeinformationsisolation bezeichnet.
Ein typischer Anwendungsfall zum Binden von Dienstanmeldeinformationen an bestimmte Arbeitsbereiche ist das Szenario, in dem ein Cloudadministrator eine Dienstanmeldeinformationen mithilfe einer Anmeldeinformationen für ein Produktionscloudkonto konfiguriert, und Sie möchten sicherstellen, dass Azure Databricks-Benutzer diese Anmeldeinformationen verwenden, um nur im Produktionsarbeitsbereich auf einen externen Clouddienst zuzugreifen.
Weitere Informationen zur Arbeitsbereichsbindung finden Sie unter (Optional) Zuweisen von Speicheranmeldeinformationen zu bestimmten Arbeitsbereichen und Arbeitsbereichkatalogbindung.
Dienstanmeldeinformationen an einen oder mehrere Arbeitsbereiche binden
Verwenden Sie den Katalog-Explorer, um Dienstanmeldeinformationen bestimmten Arbeitsbereichen zuzuweisen.
Erforderliche Berechtigungen: Metastore-Administrator oder Besitzer der Dienstanmeldeinformationen.
Hinweis
Metastore-Administratoren können alle Dienstanmeldeinformationen in einem Metastore mithilfe des Katalog-Explorers anzeigen, und Dienstanmeldeinformationenbesitzer können alle Dienstanmeldeinformationen sehen, die sie in einem Metastore besitzen – unabhängig davon, ob die Dienstanmeldeinformationen dem aktuellen Arbeitsbereich zugewiesen sind. Dienstanmeldeinformationen, die dem Arbeitsbereich nicht zugewiesen sind, werden abgeblendet angezeigt.
Melden Sie sich bei einem Arbeitsbereich an, der mit dem Metastore verknüpft ist.
Klicken Sie in der Randleiste auf das
Katalog.
Klicken Sie auf die Schaltfläche "Externe Daten > ", und wechseln Sie zur Registerkarte " Anmeldeinformationen ".
Wählen Sie die Dienstanmeldeinformationen aus, und wechseln Sie zur Registerkarte Arbeitsbereiche.
Deaktivieren Sie auf der Registerkarte Arbeitsbereiche das Kontrollkästchen Alle Arbeitsbereiche haben Zugriff.
Wenn Ihre Dienstanmeldeinformationen bereits an einen oder mehrere Arbeitsbereiche gebunden sind, ist dieses Kontrollkästchen bereits deaktiviert.
Klicken Sie auf Arbeitsbereichen zuordnen und geben Sie die Arbeitsbereiche ein, die Sie zuordnen möchten, oder suchen Sie diese.
Um den Zugriff zu widerrufen, wechseln Sie zur Registerkarte Arbeitsbereiche, wählen Sie den Arbeitsbereich aus, und klicken Sie auf Widerrufen. Um den Zugriff von allen Arbeitsbereichen zuzulassen, aktivieren Sie das Kontrollkästchen Alle Arbeitsbereiche haben Zugriff.
Nächste Schritte
- Erfahren Sie, wie Sie Dienstanmeldeinformationen anzeigen, aktualisieren, löschen und anderen Benutzern berechtigten Zugriff gewähren können. Siehe "Dienstanmeldeinformationen verwalten".
- Erfahren Sie, wie Sie Dienstanmeldeinformationen im Code verwenden. Weitere Informationen finden Sie unter Verwenden der Anmeldeinformationen des Unity-Katalogdiensts, um eine Verbindung mit externen Clouddiensten herzustellen.
Begrenzungen
Es gelten die folgenden Einschränkungen:
- Databricks Runtime-Versionen 16.1 und darunter unterstützen nur Python.
- SQL Warehouses unterstützen Dienstanmeldeinformationen nur für Batch-Unity-Catalog-Python-UDFs.
- Einige Auditereignisse für Aktionen, die für Dienstanmeldeinformationen ausgeführt werden, werden nicht in der
system.access.auditTabelle angezeigt. Überwachungsinformationen darüber, wer Dienstanmeldeinformationen erstellt, gelöscht, aktualisiert, gelesen, aufgelistet oder verwendet hat, werden verfügbar sein. Siehe Verweis auf die Systemtabelle des Audit-Logbuchs. - Während der Vorschau der Dienstanmeldeinformationen wurden bei
INFORMATION_SCHEMA.STORAGE_CREDENTIALS(veraltet) sowohl Speicheranmeldeinformationen als auch Dienstanmeldeinformationen angezeigt, und beiINFORMATION_SCHEMA.STORAGE_CREDENTIAL_PRIVILEGES(veraltet) wurden Berechtigungen angezeigt, die sowohl auf Speicheranmeldeinformationen als auch auf Dienstanmeldeinformationen angewendet wurden. Das ist nicht mehr der Fall. Sie sollten stattdessenINFORMATION_SCHEMA.CREDENTIALSundINFORMATION_SCHEMA.CREDENTIAL_PRIVILEGESsowohl für Speicher- als auch für Dienstanmeldeinformationen verwenden.