Identitäts- und Zugriffsverwaltung
In diesem Artikel werden Entwurfsüberlegungen und Empfehlungen für die Identitäts- und Zugriffsverwaltung beschrieben. Sie konzentriert sich auf die Bereitstellung einer Cloud-Skalierungsanalyseplattform in Microsoft Azure. Da Cloud-Skalierungsanalysen eine unternehmenskritische Komponente sind, sollten Sie beim Entwerfen Ihrer Lösung die Anleitungen zu Entwurfsbereichen der Azure-Zielzone befolgen.
Dieser Artikel baut auf Überlegungen und Empfehlungen zu Azure-Landezonen auf. Weitere Informationen finden Sie im Entwurfsbereich Identitäts- und Zugriffsverwaltung.
Entwurf der Datenlandzone
Cloud-Skalierungsanalysen unterstützen ein Zugriffssteuerungsmodell mithilfe von Microsoft Entra-Identitäten. Das Modell verwendet azure role-based access control (Azure RBAC) und Zugriffssteuerungslisten.
Überprüfen Sie die Azure-Verwaltungs- und Verwaltungsaktivitäten, die Ihre Teams ausführen. Bewerten Sie Ihre Cloud-Skalierungsanalysen in Azure. Ermitteln Sie die bestmögliche Verteilung der Zuständigkeiten innerhalb Ihrer Organisation.
Rollenzuweisungen
Um Datenprodukte eigenständig innerhalb der Datenplattform zu entwickeln, bereitzustellen und zu bedienen, benötigen Datenanwendungsteams mehrere Zugriffsrechte innerhalb der Azure-Umgebung. Es ist wichtig zu beachten, dass Sie unterschiedliche Zugriffsmodelle für die Entwicklung und höhere Umgebungen verwenden sollten. Verwenden Sie nach Möglichkeit Sicherheitsgruppen, um die Anzahl der Rollenzuweisungen zu reduzieren und die Verwaltung und Überprüfung der RBAC-Rechte zu vereinfachen. Dieser Schritt ist aufgrund der begrenzten Anzahl von Rollenzuweisungen, die Sie für jedes Abonnementerstellen können, von entscheidender Bedeutung.
Die Entwicklungsumgebung sollte für das Entwicklungsteam und ihre jeweiligen Benutzeridentitäten zugänglich sein. Dieser Zugriff ermöglicht es ihnen, schneller zu iterieren, sich über bestimmte Funktionen innerhalb der Azure-Services zu informieren und Probleme effektiv zu beheben. Der Zugriff auf eine Entwicklungsumgebung kann Ihnen bei der Entwicklung oder Verbesserung der Infrastruktur als Code und anderen Codeartefakten helfen.
Nachdem Sie bestätigt haben, dass eine Implementierung in der Entwicklungsumgebung erwartungsgemäß funktioniert, kann sie kontinuierlich in höheren Umgebungen eingeführt werden. Höhere Umgebungen, z. B. Tests und Produktion, sollten für das Datenanwendungsteam gesperrt werden. Nur ein Dienstprinzipal sollte Zugriff auf diese Umgebungen haben. Daher müssen alle Bereitstellungen über die Dienstprinzipalidentität ausgeführt werden, indem fortlaufende Continuous Integration- und Continuous Delivery-Pipelines (CI/CD) verwendet werden. Geben Sie in der Entwicklungsumgebung Zugriffsrechte sowohl für einen Dienstprinzipal als auch für Benutzeridentitäten an. Beschränken Sie in höheren Umgebungen nur die Zugriffsberechtigungen auf die Dienstprinzipalidentität.
Um Ressourcen und Rollenzuweisungen zwischen Ressourcen innerhalb von Ressourcengruppen der Datenanwendung zu erstellen, müssen Sie die Rechte Contributor
und User Access Administrator
bereitstellen. Diese Rechte ermöglichen es den Teams, Dienste in ihrer Umgebung innerhalb der Grenzen von Azure Policyzu erstellen und zu steuern.
Um das Risiko der Datenexfiltration zu verringern, ist es bewährte Methoden für cloudanalyse, private Endpunkte zu verwenden. Das Azure-Plattformteam blockiert andere Konnektivitätsoptionen über Richtlinien, sodass Datenanwendungsteams Zugriffsrechte für das freigegebene virtuelle Netzwerk einer Datenlandungszone benötigen. Dieser Zugriff ist unerlässlich für die Einrichtung der erforderlichen Netzwerkkonnektivität für die Dienste, die sie verwenden möchten.
Um dem Prinzip der geringsten Rechte zu folgen, vermeiden Sie Konflikte zwischen verschiedenen Datenanwendungsteams und weisen eine klare Trennung von Teams auf. Es gehört zu den bewährten Verfahren der Cloudanalyse, für jedes Datenanwendungsteam ein dediziertes Subnetz zu erstellen und eine Network Contributor
-Rollenvergabe für dieses Subnetz oder den untergeordneten Ressourcenbereich vorzunehmen. Diese Rollenzuweisung ermöglicht es den Teams, mit privaten Endpunkten am Subnetz teilzunehmen.
Diese ersten beiden Rollenzuweisungen ermöglichen die Self-Service-Bereitstellung von Datendiensten in diesen Umgebungen. Hinsichtlich der Kostenverwaltung sollten Organisationen den Ressourcengruppen ein Kostenstellen-Tag hinzufügen, um Weiterbelastungen und verteilte Kostenverantwortung zu ermöglichen. Dieser Ansatz erhöht das Bewusstsein innerhalb der Teams und trägt dazu bei, dass sie fundierte Entscheidungen über erforderliche SKUs und Serviceebenen treffen.
Um die Self-Service-Nutzung anderer gemeinsam genutzter Ressourcen innerhalb der Datenlandungszone zu ermöglichen, sind einige zusätzliche Rollenzuweisungen erforderlich. Wenn der Zugriff auf eine Azure Databricks-Umgebung erforderlich ist, sollten Organisationen die SCIM-Synchronisierung von Microsoft Entra ID verwenden, um Zugriff zu gewähren. Dieser Synchronisierungsmechanismus ist wichtig, da benutzer und Gruppen von Microsoft Entra ID automatisch mit der Azure Databricks-Datenebene synchronisiert werden. Außerdem werden automatisch die Zugriffsrechte entfernt, wenn eine Person die Organisation oder das Unternehmen verlässt. Geben Sie in Azure Databricks den Datenanwendungsteams Can Restart
Zugriffsrechte auf einen vordefinierten Cluster, damit sie Workloads innerhalb des Arbeitsbereichs ausführen können.
Einzelne Teams benötigen Zugriff auf das Microsoft Purview-Konto, um Datenressourcen in ihren jeweiligen Datenlandungszonen zu ermitteln. Teams müssen häufig katalogierte Datenressourcen bearbeiten, die sie besitzen, um zusätzliche Details wie die Kontaktinformationen von Datenbesitzern und Experten bereitzustellen. Teams erfordern außerdem die Möglichkeit, genauere Informationen darüber bereitzustellen, was jede Spalte in einem Dataset beschreibt und umfasst.
Zusammenfassung der RBAC-Anforderungen
Um die Bereitstellung von Datenlandungszonen zu automatisieren, sind die folgenden Rollen erforderlich:
Rollenname
Beschreibung
Umfang
Stellen Sie alle privaten DNS-Zonen für alle Datendienste in einem einzigen Abonnement und einer Ressourcengruppe bereit. Der Dienstprinzipal muss Private DNS Zone Contributor
in der globalen DNS-Ressourcengruppe sein, die während der Bereitstellung der Datenverwaltungszielzone erstellt wurde. Diese Rolle ist erforderlich, um A-Einträgen für die privaten Endpunkte bereitzustellen.
(Ressourcengruppenbereich) /subscriptions/{{dataManagement}subscriptionId}/resourceGroups/{resourceGroupName}
Zum Einrichten des Peerings virtueller Netzwerke zwischen dem Datenzielzonennetzwerk und dem Zielzonennetzwerk der Datenverwaltung benötigt der Dienstprinzipal Network Contributor
-Zugriffsrechte für die Ressourcengruppe des virtuellen Remotenetzwerks.
(Ressourcengruppenbereich) /subscriptions/{{dataManagement}subscriptionId}/resourceGroups/{resourceGroupName}
Diese Berechtigung ist erforderlich, um die selbst gehostete Integrationslaufzeit freizugeben, die in der integration-rg
-Ressourcengruppe für andere Datenfabriken bereitgestellt wird. Es ist auch erforderlich, den verwalteten Identitäten von Azure Data Factory und Azure Synapse Analytics Zugriff auf die Dateisysteme der jeweiligen Speicherkonten zu gewähren.
(Ressourcenbereich) /subscriptions/{{dataLandingZone}subscriptionId}
Anmerkung
In einem Produktionsszenario können Sie die Anzahl der Rollenzuweisungen verringern. Die Rolle Network Contributor
ist nur erforderlich, um das Peering virtueller Netzwerke zwischen der Datenverwaltungszielzone und der Datenzielzone einzurichten. Ohne diese Rolle schlägt die DNS-Auflösung fehl. Der eingehende und ausgehende Datenverkehr wird zudem getrennt, da keine Sichtverbindung zur Azure Firewall besteht.
Die Private DNS Zone Contributor
Rolle ist nicht erforderlich, wenn die Bereitstellung von DNS-A-Einträgen für die privaten Endpunkte über Azure-Richtlinien mit dem deployIfNotExists
Effekt automatisiert wird. Das Gleiche gilt für die Rolle User Access Administrator
, da Sie die Bereitstellung mithilfe von Richtlinien deployIfNotExists
automatisieren können.
Rollenzuweisungen für Datenprodukte
Die folgenden Rollenzuweisungen sind erforderlich, um ein Datenprodukt in einer Datenlandungszone bereitzustellen:
Rollenname
Beschreibung
Umfang
Stellen Sie alle privaten DNS-Zonen für alle Datendienste in einem einzigen Abonnement und einer Ressourcengruppe bereit. Der Dienstprinzipal muss Private DNS Zone Contributor
in der globalen DNS-Ressourcengruppe sein, die während der Bereitstellung der Datenverwaltungszielzone erstellt wurde. Diese Rolle ist erforderlich, um A-Einträge für die jeweiligen privaten Endpunkte bereitzustellen.
(Ressourcengruppenbereich) /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}
Stellen Sie alle Datenintegrationsstreamingdienste in einer einzelnen Ressourcengruppe innerhalb des Datenzielzonenabonnements bereit. Der Dienstprinzipal erfordert eine Contributor
-Rollenzuweisung für diese Ressourcengruppe.
(Ressourcengruppenbereich) /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}
Um private Endpunkte im angegebenen Azure Private Link-Subnetz bereitzustellen, das während der Bereitstellung der Datenlandzone erstellt wurde, erfordert der Dienstprinzipal Network Contributor
Zugriff auf dieses Subnetz.
(Untergeordneter Ressourcenbereich) /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName} /providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}"
Zugriff auf andere Ressourcen
Außerhalb von Azure benötigen Datenanwendungsteams Zugriff auf ein Repository, um Codeartefakte zu speichern, effektiv zusammenzuarbeiten und Updates und Änderungen konsistent in höheren Umgebungen über CI/CD bereitzustellen. Sie sollten ein Projekt board bereitstellen, um agile Entwicklung, Sprintplanung, Aufgabenverfolgung und Verwaltung von Benutzerfeedback und Featureanforderungen zu ermöglichen.
Um CI/CD zu automatisieren, richten Sie eine Verbindung mit Azure ein. Dieser Vorgang erfolgt in den meisten Diensten über Dienstprinzipale. Aufgrund dieser Anforderung müssen Teams Zugriff auf einen Dienstprinzipal haben, um die Automatisierung in ihrem Projekt zu erreichen.
Verwalten des Zugriffs auf Daten
Verwalten sie den Zugriff auf Daten mithilfe von Microsoft Entra-Gruppen. Fügen Sie den Microsoft Entra-Gruppen Benutzerprinzipalnamen oder Dienstprinzipalnamen hinzu. Fügen Sie diese Gruppen dann zu den Diensten hinzu, und erteilen Sie der Gruppe Berechtigungen. Dieser Ansatz ermöglicht eine feinkörnige Zugriffssteuerung.
Weitere Informationen zum Erhöhen der Sicherheit für Datenverwaltungszielzonen und Datenzielzonen zur Verwaltung Ihres Datenbestands finden Sie unter Authentifizierung für die Analyse auf Cloudebene in Azure.