Autorisierung für Cloud-Skalierungsanalysen in Azure
Die Autorisierung ist der Akt der Erteilung einer authentifizierten Parteiberechtigung zum Ausführen einer Aktion. Der wichtigste Grundsatz der Zugriffssteuerung besteht darin, Benutzern nur den Zugriff zu gewähren, den sie für ihre Aufgaben benötigen, und nur bestimmte Aktionen zu einem bestimmten Bereich zuzulassen. Rollenbasierte Sicherheit entspricht der Zugriffssteuerung. Viele Organisationen verwenden rollenbasierte Sicherheit, um den Zugriff basierend auf definierten Rollen oder Auftragsfunktionen anstelle einzelner Benutzer zu steuern. Benutzern wird mindestens eine Sicherheitsrolle zugewiesen, und jede Rolle erhält autorisierte Berechtigungen zum Ausführen bestimmter Aufgaben.
Die Microsoft Entra-ID ist ein zentraler Identitätsanbieter, der die Autorisierung für den Zugriff auf Datendienste und die Speicherung für jeden Benutzer oder für jede Anwendung gewährt, die auf einer Microsoft Entra-Identität basiert.
Datendienstautorisierung
Azure role-based access control (RBAC) und Zugriffssteuerungslisten (Access Control Lists, ACLs) spielen wichtige Rollen beim Verwalten des Zugriffs und der Sicherstellung der Sicherheit. Azure RBAC und ACLs erfordern beide, dass der Benutzer oder die Anwendung eine Identität in der Microsoft Entra-ID besitzen muss. In Cloud-Skalierungsanalysen ist RBAC für Datenbanken und Azure Data Lake Storage effektiv. ACLs werden hauptsächlich in Data Lake Storage verwendet, um eine differenzierte Zugriffssteuerung auf Datei- und Verzeichnisebene bereitzustellen. ACLs ergänzen die RBAC durch die Bereitstellung detaillierterer Berechtigungen innerhalb der Speicherhierarchie.
Azure RBAC bietet integrierte Rollen wie Eigentümer, Mitwirkenderund Leser, aber Sie können auch benutzerdefinierte Rollen für bestimmte Anforderungen erstellen. Die folgenden integrierten Rollen sind für alle Azure-Ressourcentypen, einschließlich Azure-Datendienste, grundlegend:
Role | BESCHREIBUNG |
---|---|
Besitzer | Diese Rolle hat Vollzugriff auf die Ressource und kann alles über die Ressource verwalten, einschließlich des Rechts, zugriff darauf zu gewähren. |
Mitwirkender | Diese Rolle kann die Ressource verwalten, aber keinen Zugriff darauf gewähren. |
Leser | Diese Rolle kann die Ressource und die Informationen anzeigen, mit Ausnahme von vertraulichen Informationen wie Zugriffsschlüsseln oder geheimen Schlüsseln, die die Ressource betreffen. Sie können keine Änderungen an der Ressource vornehmen. |
Hinweis
Einige Dienste verfügen über bestimmte RBAC-Rollen wie Storage Blob Data Contributor oder Data Factory Contributor, und daher sollten Sie diese Rollen für diese Dienste verwenden. RBAC ist ein additives Modell, bei dem das Hinzufügen von Rollenzuweisungen eine aktive Berechtigung ist. RBAC unterstützt auch Ablehnungszuweisungen. Diese haben Vorrang vor Rollenzuweisungen.
Tipp
Wenn Sie eine Strategie für die Zugriffssteuerung planen, empfehlen wir, Benutzern nur den Zugriff zu gewähren, den sie zum Ausführen ihrer Aufgaben benötigen. Sie sollten auch nur bestimmte Aktionen in einem bestimmten Bereich zulassen.
Zugriffssteuerung in Azure-Datenbanken
RBAC in Azure-Datenbanken dreht sich um Rollen, Bereiche und Berechtigungen. Azure bietet mehrere integrierte Rollen für die Datenbankverwaltung. Eine dieser Rollen ist SQL Server-Mitwirkender, wodurch die Verwaltung von SQL-Servern und Datenbanken ermöglicht wird. Eine weitere Rolle ist SQL DB-Teilnehmer, der die Verwaltung von SQL-Datenbanken, aber nicht des Servers selbst zulässt. Darüber hinaus können Sie benutzerdefinierte Rollen erstellen, die über bestimmte Berechtigungen verfügen, um eindeutige Anforderungen zu erfüllen.
Sie können Rollen in verschiedenen Bereichen zuweisen, einschließlich:
- Auf Abonnementebene, auf der Rollen für alle Ressourcen innerhalb des Abonnements gelten.
- Auf Ressourcengruppenebene, wobei Rollen für alle Ressourcen innerhalb der angegebenen Ressourcengruppe gelten.
- Auf Ressourcenebene können Sie Rollen direkt einzelnen Datenbanken oder Servern zuweisen. Dieser Ansatz bietet Ihnen eine präzise Kontrolle.
Berechtigungen definieren die Aktionen, die eine Rolle ausführen kann, z. B. Lesen, Schreiben, Löschen oder Sicherheitseinstellungenverwaltung. Diese Berechtigungen werden in Rollen gruppiert, um die Verwaltung zu vereinfachen.
In Azure SQL-Datenbankkönnen Sie Benutzern, Gruppen oder Anwendungen Rollen zuweisen, um den Zugriff zu steuern. Beispielsweise kann einer Fachkraft für Datenbankverwaltung die Rolle SQL Server-Teilnehmer zugewiesen werden, um den Server und die Datenbanken zu verwalten. Rollen wie SQL DB-Mitwirkender ermöglichen Benutzern das Erstellen, Aktualisieren und Löschen von Datenbanken, während sich die SQL Security Manager Rolle auf Sicherheitskonfigurationen konzentriert.
In Azure Cosmos DB-können Sie Rollen zuweisen, um den Zugriff auf Azure Cosmos DB-Konten, Datenbanken und Container zu verwalten. Integrierte Rollen wie Cosmos DB Account Reader und Cosmos DB Account Contributor bieten unterschiedliche Zugriffsebenen.
In Azure Database for MySQL, Azure Database for PostgreSQLund Azure Database for MariaDBkönnen Sie Rollen zum Verwalten von Datenbankservern und einzelnen Datenbanken zuweisen. Sie können Rollen wie Mitwirkender und Reader- verwenden, um den Zugriff zu steuern.
Weitere Informationen finden Sie unter integrierte Azure-Rollen für Datenbanken.
Zugriffssteuerung im Data Lake Storage
Mit Azure RBAC können Sie grobkörnigen Zugriff gewähren, z. B. Lese- oder Schreibzugriff auf alle Speicherkontodaten. MIT ACLs können Sie präzisen Zugriff gewähren, z. B. Schreibzugriff auf ein bestimmtes Verzeichnis oder eine bestimmte Datei.
In vielen Szenarien können Sie RBAC und ACLs zusammen verwenden, um umfassende Zugriffssteuerung in Data Lake Storage bereitzustellen. Mit RBAC können Sie den allgemeinen Zugriff auf Daten verwalten, wodurch sichergestellt wird, dass nur autorisierte Benutzer auf den Dienst zugreifen können. Anschließend können Sie ACLs innerhalb des Speicherkontos anwenden, um den Zugriff auf bestimmte Dateien und Verzeichnisse zu steuern, wodurch die Sicherheit verbessert wird.
Azure-attributbasierte Zugriffssteuerung baut auf Azure RBAC auf, indem Rollenzuweisungsbedingungen basierend auf Attributen im Kontext bestimmter Aktionen hinzugefügt werden. Es ermöglicht Ihnen im Wesentlichen, RBAC-Rollenzuweisungen durch Hinzufügen von Bedingungen zu verfeinern. Sie können beispielsweise Lese- oder Schreibzugriff auf alle Datenobjekte in einem Speicherkonto gewähren, die über ein bestimmtes Tag verfügen.
Die folgenden Rollen ermöglichen einem Sicherheitsprinzipal den Zugriff auf Daten in einem Speicherkonto.
Role | BESCHREIBUNG |
---|---|
Besitzer von Speicherblobdaten | Diese Rolle bietet vollzugriff auf BLOB-Speichercontainer und -daten. Mit diesem Zugriff kann der Sicherheitsprinzipal den Besitzer eines Elements festlegen und die ACLs aller Elemente ändern. |
Mitwirkender an Speicherblobdaten | Diese Rolle bietet Lese-, Schreib- und Löschzugriff auf Blobspeichercontainer und Blobs. Dieser Zugriff erlaubt dem Sicherheitsprinzipal nicht, den Besitz eines Elements festzulegen, aber er kann die ACL von Elementen ändern, die der Sicherheitsprinzipal besitzt. |
Leser von Speicherblobdaten | Diese Rolle kann Blobspeichercontainer und -blobs lesen und auflisten. |
Rollen wie Besitzer, Mitwirkender, Lesenderund Speicher-Konto-Mitwirkender gestatten einem Sicherheitsprinzipal das Verwalten eines Speicherkontos, jedoch bieten sie keinen Zugriff auf die Daten innerhalb dieses Kontos. Allerdings können diese Rollen, ausgenommen Reader-, Zugriff auf die Speicherschlüssel erhalten, die in verschiedenen Clienttools für den Zugriff auf die Daten verwendet werden können. Weitere Informationen finden Sie im Zugriffssteuerungsmodell in Data Lake Storage.
Zugriffssteuerung in Azure Databricks
Azure Databricks bietet Zugriffssteuerungssysteme für die Verwaltung des Zugriffs innerhalb der Azure Databricks-Umgebung. Diese Systeme konzentrieren sich auf sicherungsfähige Objekte und Datengovernance. Die drei wichtigsten Zugriffssteuerungssysteme in Azure Databricks sind:
- ACLs, mit denen Sie die Berechtigung für den Zugriff auf Arbeitsbereichsobjekte wie Notizbücher konfigurieren können. Weitere Informationen finden Sie unter Übersicht über die Zugriffssteuerung.
- Konto-RBAC, mit dem Sie die Berechtigung für die Verwendung von Objekten auf Kontoebene konfigurieren können, z. B. Dienstprinzipale und Gruppen.
- Unity-Katalog, mit dem Sie Datenobjekte sichern und steuern können.
Zusätzlich zur Zugriffssteuerung für Objekte bietet Azure Databricks integrierte Rollen auf der Plattform. Sie können Benutzern, Dienstprinzipalen und Gruppen Rollen zuweisen. Weitere Informationen finden Sie unter Administratorrollen und Arbeitsbereichsberechtigungen.
Bewährte Methoden für die Autorisierung in Cloud-Skalierungsanalysen
In diesem Leitfaden werden die bewährten Methoden für die Implementierung von RBAC in Cloud-Skalierungsanalyseumgebungen erläutert. Sie umfasst allgemeine RBAC-Prinzipien, Datenbankzugriffssteuerung und bewährte Methoden für die Zugriffssteuerung des Datensees, um eine sichere und effiziente Ressourcenverwaltung zu gewährleisten.
Allgemeine RBAC Best Practices für Cloud-Skalierungsanalysen
Die folgenden bewährten Methoden können Ihnen bei den ersten Schritten mit RBAC helfen:
Verwenden Sie RBAC-Rollen für die Dienstverwaltung und -vorgänge, und verwenden Sie dienstspezifische Rollen für den Datenzugriff und workloadspezifische Aufgaben. Verwenden Sie RBAC-Rollen für Azure-Ressourcen, um die Berechtigung für Sicherheitsprinzipale zu erteilen, die Ressourcenverwaltungs- und Betriebsaufgaben ausführen müssen. Sicherheitsprinzipale, die auf Daten im Speicher zugreifen müssen, erfordern keine RBAC-Rolle für die Ressource, da sie sie nicht verwalten müssen. Erteilen Sie stattdessen Direktberechtigungen für Datenobjekte. Gewähren Sie z. B. Lesezugriff auf einen Ordner im Data Lake Storage, oder erteilen Sie enthaltene Datenbankbenutzer- und Tabellenberechtigungen für eine Datenbank in der SQL-Datenbank.
Verwenden integrierter RBAC-Rollen. Verwenden Sie zunächst die integrierten RBAC Azure-Ressourcenrollen, um Dienste zu verwalten und Operationsrollen zuzuweisen, um den Zugriff zu steuern. Erstellen und Verwenden von benutzerdefinierten Rollen nur für Azure-Ressourcen, wenn integrierte Rollen Nicht Ihren spezifischen Anforderungen entsprechen.
Verwenden Sie Gruppen, um den Zugriff zu verwalten. Weisen Sie Zugriff auf Microsoft Entra-Gruppen zu, und verwalten Sie Gruppenmitgliedschaften für die fortlaufende Zugriffsverwaltung.
Ziehen Sie Abonnement- und Ressourcengruppenbereiche in Betracht. Gewähren Sie in Nichtproduktionsumgebungen Zugriff auf den Ressourcengruppenbereich, um Dienstverwaltungs- und Betriebszugriffsanforderungen zu trennen, anstatt den Zugriff auf einzelne Ressourcen zu gewähren. Dieser Ansatz ist sinnvoll, da Entwickler und Tester in Nichtproduktionsumgebungen Ressourcen verwalten müssen. Sie müssen beispielsweise eine Azure Data Factory-Aufnahmepipeline oder einen Container in Data Lake Storage erstellen.
In Produktionsumgebungen können Sie jedoch Zugriff auf einzelne Ressourcen für workload-spezifische Aufgaben wie die Unterstützung und den Betrieb des Data Lake-Dateisystems gewähren. Dieser Ansatz ist in Produktionsumgebungen sinnvoll, da Benutzer nur Ressourcen verwenden müssen, wie etwa den Status einer geplanten Data Factory ingestion pipeline oder das Lesen von Datendateien in Data Lake Storage.
Gewähren Sie auf der Abonnement-Ebene keinen unnötigen Zugriff. Der Abonnementbereich umfasst alle Ressourcen innerhalb des Abonnements.
Wählen Sie den Zugriff mit den geringsten Rechten aus. Wählen Sie die einzig richtige Rolle für den Auftrag aus.
Bewährte Methoden für die Datenbankzugriffssteuerung
Die Implementierung effektiver RBAC ist entscheidend für die Aufrechterhaltung von Sicherheit und Verwaltbarkeit in Ihrer Analyseumgebung. Dieser Abschnitt enthält bewährte Methoden für die Verwendung von Microsoft Entra-Gruppen und integrierten Rollen und zum Vermeiden direkter Benutzerberechtigungen, um einen optimierten und sicheren Zugriffsmanagementprozess sicherzustellen.
Cloudskalen-Analyseumgebungen enthalten in der Regel mehrere Arten von Speicherlösungen, darunter PostgreSQL, MySQL, SQL-Datenbank, Azure SQL Managed Instance und Azure Synapse Analytics.
Verwenden Sie Microsoft Entra-Gruppen anstelle einzelner Benutzerkonten. Es wird empfohlen, Microsoft Entra-Gruppen zum Sichern von Datenbankobjekten anstelle einzelner Microsoft Entra-Benutzerkonten zu verwenden. Verwenden Sie Microsoft Entra-Gruppen, um Benutzer zu authentifizieren und Datenbankobjekte zu schützen. Ähnlich wie beim Data-Lake-Muster können Sie das Onboarding Ihrer Datenanwendung verwenden, um diese Gruppen zu erstellen.
Verwenden Sie integrierte Rollen zum Verwalten des Zugriffs. Erstellen Sie benutzerdefinierte Rollen nur, wenn Sie bestimmte Anforderungen erfüllen müssen oder wenn integrierte Rollen zu viele Berechtigungen gewähren.
Verzichten Sie darauf, einzelnen Benutzern Berechtigungen zuzuweisen. Verwenden Sie stattdessen Rollen, z. B. Datenbank- oder Serverrollen, konsistent. Rollen helfen bei der Berichterstellung und Problembehandlung von Berechtigungen. Azure RBAC unterstützt nur die Berechtigungszuweisung über Rollen.
Hinweis
Datenanwendungen können vertrauliche Datenprodukte in SQL-Datenbank-, SQL Managed Instance- oder Azure Synapse Analytics-Pools speichern. Weitere Informationen finden Sie unter Datenschutz für Cloud-Skalierungsanalysen in Azure.
Bewährte Methoden für die Data Lake Storage-Zugriffssteuerung
In modernen Datenumgebungen ist die sichere und effiziente Zugriffssteuerung von größter Bedeutung. Data Lake Storage bietet robuste Mechanismen zum Verwalten des Zugriffs über ACLs. In diesem Abschnitt werden die bewährten Methoden für die Implementierung von RBAC in Data Lake Storage und das Anwenden von ACLs, Microsoft Entra-Sicherheitsgruppen und das Prinzip der geringsten Rechte beschrieben, um eine sicherere und verwaltbare Datenseeumgebung aufrechtzuerhalten. Darüber hinaus wird hervorgehoben, wie wichtig es ist, ACLs mit Datenpartitionierungsschemas auszurichten und Unity-Katalog für Azure Databricks-Benutzer zu verwenden, um eine umfassende Sicherheit und Governance zu gewährleisten.
Verwenden Sie ACLs für die feinkörnige Zugriffssteuerung. ACLs spielen eine wichtige Rolle beim Definieren des Zugriffs auf granularer Ebene. In Data Lake Storage arbeiten ACLs mit Sicherheitsprinzipalen zusammen, um den differenzierten Zugriff auf Dateien und Verzeichnisse zu verwalten.
Wenden Sie ACLs auf Datei- und Ordnerebene an. Um den Zugriff auf Daten im Datensee zu steuern, empfiehlt es sich, ACLs auf Der Ebene von Dateien und Ordnern zu verwenden. Data Lake Storage verwendet auch ein ACL-Modell, das der Portable Operating System Interface (POSIX) ähnelt. POSIX ist eine Gruppe von Standards für Betriebssysteme. Ein Standard definiert eine einfache, aber leistungsstarke Berechtigungsstruktur für den Zugriff auf Dateien und Ordner. POSIX wird häufig für Netzwerkdateifreigaben und Unix-Computer verwendet.
Verwenden Sie Microsoft Entra-Sicherheitsgruppen als den zugewiesenen Prinzipal in einem ACL-Eintrag. Anstatt einzelne Benutzer oder Dienstprinzipale direkt zuzuweisen, verwenden Sie diesen Ansatz, um Benutzer oder Dienstprinzipale hinzuzufügen und zu entfernen, ohne dass ACLs erneut auf eine gesamte Verzeichnisstruktur angewendet werden müssen. Sie können einfach Benutzer und Dienstprinzipale aus der entsprechenden Microsoft Entra-Sicherheitsgruppe hinzufügen oder entfernen.
Weisen Sie Zugriff auf Microsoft Entra-Gruppen zu, und verwalten Sie die Mitgliedschaft von Gruppen für die fortlaufende Zugriffsverwaltung. Weitere Informationen finden Sie unter Zugriffssteuerungsmodell im Data Lake-Speicher.
Wenden Sie das Prinzip der geringsten Privilegien auf ACLs an. In den meisten Fällen sollten Benutzende nur über Leseberechtigungen für die Dateien und Ordner verfügen, die sie im Datensee benötigen. Datenbenutzer sollten keinen Zugriff auf den Speicherkontocontainer haben.
Stimmen Sie ACLs mit Datenpartitionierungskonzepten ab. ACLs und das Design der Datenpartitionen müssen aufeinander abgestimmt werden, um eine effektive Kontrolle des Datenzugriffs sicherzustellen. Weitere Informationen finden Sie unter Data Lake-Partitionierung.
Für Azure Databricks-Benutzer steuern Sie ausschließlich den Zugriff auf Datenobjekte mit Unity-Katalog. Wenn direkter Zugriff auf den externen Standortspeicher in Data Lake Storage gewährt oder überwacht wird, werden keine Berechtigungen berücksichtigt, die vom Unity-Katalog verwaltet werden. Der direkte Zugriff umgeht Überwachungs-, Linien- und andere Sicherheits- und Überwachungsfeatures des Unity-Katalogs, einschließlich Zugriffssteuerung und -berechtigungen. Daher sollten Sie Azure Databricks-Benutzern keinen direkten Zugriff auf im Unity-Katalog verwaltete Tabellen und Speicher gewähren.