Authentifizierung für Analysen auf Cloudebene in Azure
Eine Authentifizierung ist der Prozess, bei dem die Identität eines Benutzers oder einer Anwendung überprüft wird. Ein einzelner Quellidentitätsanbieter, der die Identitätsverwaltung und -authentifizierung übernimmt, wird bevorzugt. Dieser Anbieter ist ein so genannter Verzeichnisdienst. Er bietet Methoden zur Speicherung von Verzeichnisdaten und zur Bereitstellung dieser Daten für die Benutzer und Administratoren des Netzwerks.
Jede Data Lake-Lösung sollte den bereits verwendeten Verzeichnisdienst nutzen und in diesen integriert werden. Für die meisten Unternehmen ist Active Directory der Verzeichnisdienst für alle identitätsbezogenen Dienste. Es ist die primäre und zentralisierte Datenbank für alle Dienst- und Benutzerkonten.
In der Cloud ist Microsoft Entra ID ein zentralisierter Identitätsanbieter und die bevorzugte Quelle für die Identitätsverwaltung. Das Delegieren von Authentifizierung und Autorisierung in Microsoft Entra ID ermöglicht Szenarios wie z. B. die Richtlinien für den bedingten Zugriff, die verlangen, dass sich Benutzer*innen an einem bestimmten Standort befinden. Es unterstützt die mehrstufige Authentifizierung, um die Zugriffssicherheit zu erhöhen. Konfigurieren Sie die Data Lake-Datenspeicherdienste nach Möglichkeit mit der Microsoft Entra-Integration.
Verwenden Sie Zugriffsschlüssel oder Token für das Authentifizieren der Datendienste, die Microsoft Entra ID nicht unterstützen. Der Client sollte den Zugriffsschlüssel in einem Schlüsselverwaltungsspeicher wie z. B. Azure Key Vault speichern.
Authentifizierungsszenarien für Cloud-Skalierungsanalysen sind:
- Benutzerauthentifizierung
- Die Anwendungs- und Dienst-zu-Dienst-Authentifizierung
Benutzerauthentifizierung
Es müssen Anmeldeinformationen für die Benutzer vorhanden sein, die eine Verbindung mit einem Datendienst oder einer Ressource herstellen müssen. Diese Anmeldeinformationen belegen, dass Benutzer diejenigen sind, die sie vorgeben zu sein. Anschließend können sie auf den Dienst oder die Ressource zugreifen. Die Authentifizierung ermöglicht es dem Dienst auch, die Identität der Benutzer zu kennen. Der Dienst entscheidet, was ein Benutzer sehen und tun kann, nachdem die Identität überprüft wurde.
Azure Data Lake Storage Gen2, Azure SQL-Datenbank und Azure Synapse unterstützen die Microsoft Entra-Integration. Der interaktive Benutzerauthentifizierungsmodus erfordert, dass die Benutzer Ihre Anmeldeinformationen in einem Dialogfeld angeben.
Wichtig
Verwenden Sie keine vordefinierten Benutzeranmeldeinformationen zu Authentifizierungszwecken in einer Anwendung.
Die Anwendungs- und Dienst-zu-Dienst-Authentifizierung
Diese Anforderungen sind keinem bestimmten Benutzer zugeordnet sind oder es ist kein Benutzer zur Eingabe von Anmeldeinformationen verfügbar.
Dienst-zu-Dienst-Authentifizierung
Selbst wenn ein Dienst ohne menschliches Eingreifen auf einen anderen Dienst zugreift, muss der Dienst eine gültige Identität vorweisen. Diese Identität stellt sicher, dass der Dienst real ist. Der Dienst, auf den zugegriffen wird, kann die Identität verwenden, um zu entscheiden, was der Dienst ausführen darf.
Für die Authentifizierung von Dienst zu Dienst sind verwaltete Identitäten die bevorzugte Methode zur Authentifizierung von Azure-Diensten. Verwaltete Identitäten für Azure-Ressourcen ermöglichen das Authentifizieren bei jedem Dienst, der die Microsoft Entra-Authentifizierung ohne explizite Anmeldeinformationen unterstützt. Weitere Informationen finden Sie unter Was sind verwaltete Identitäten für Azure-Ressourcen.
Verwaltete Identitäten sind Dienstprinzipalen, die nur mit Azure-Ressourcen verwendet werden können. Beispielsweise kann eine verwaltete Identität direkt für eine Azure Data Factory-Instanz erstellt werden. Diese verwaltete Identität ist ein Objekt, das bei Microsoft Entra ID registriert ist. Sie stellt diese Data Factory-Instanz dar. Diese Identität kann dann ohne Anmeldeinformationen im Code für die Authentifizierung bei jedem Dienst wie Data Lake Storage verwendet werden. Azure übernimmt die von der Dienstinstanz verwendeten Anmeldeinformationen. Die Identität kann den Azure-Dienstressourcen eine Autorisierung gewähren, z. B. einem Ordner im Azure Data Lake Storage. Wenn Sie diese Data Factory-Instanz löschen, bereinigt Azure die Identität in Microsoft Entra ID.
Die Vorteile der Verwendung von verwalteten Identitäten
Verwaltete Identitäten sollten verwendet werden, um einen Azure-Dienst bei einem anderen Azure-Dienst oder einer anderen Azure-Ressource zu authentifizieren. Sie bieten die folgenden Vorteile:
- Eine verwaltete Identität stellt den Dienst dar, für den sie erstellt wird. Es stellt keinen interaktiven Benutzer dar.
- Anmeldeinformationen für verwaltete Identitäten werden in Microsoft Entra ID verwaltet und gespeichert. Es gibt kein Kennwort, das ein Benutzer behalten muss.
- Bei verwalteten Identitäten verwenden die Clientdienste keine Kennwörter.
- Die vom System zugewiesene verwaltete Identität wird gelöscht, wenn die Dienstinstanz gelöscht wird.
Diese Vorteile bedeuten, dass die Anmeldeinformationen besser geschützt sind und Sicherheitskompromittierungen weniger wahrscheinlich sind.
Anwendung-zu-Dienst-Authentifizierung
Ein weiteres Zugriffsszenario ist eine Anwendung, z. B. eine mobile Webanwendung, die auf einen Azure-Dienst zugreift. Jeder Benutzer, der auf einen Azure-Dienst zugreift, muss seine Identität angeben, und diese Identität muss überprüft werden.
Ein Azure-Dienstprinzipal ist die Alternative für Anwendungen und Dienste, die keine verwalteten Identitäten für die Authentifizierung bei Azure-Ressourcen unterstützen. Ein Azure-Dienstprinzipal ist eine Identität, die zur Verwendung mit Anwendungen, gehosteten Diensten und automatisierten Tools für den Zugriff auf Azure-Ressourcen erstellt wird. Dieser Zugriff ist durch die Rollen eingeschränkt, die dem Dienstprinzipal zugewiesen sind. Aus Sicherheitsgründen wird empfohlen, Dienstprinzipale mit automatisierten Tools oder Anwendungen zu verwenden, statt ihnen die Anmeldung mit einer Benutzeridentität zu erlauben. Weitere Informationen finden Sie unter Anwendungs- und Dienstprinzipalobjekte in Microsoft Entra ID.
Hinweis
Sowohl verwaltete Identitäten als auch Dienstprinzipale werden nur in Microsoft Entra ID erstellt und verwaltet.
Der Unterschied zwischen einer verwalteter Identität und einem Dienstprinzipal
Dienstprinzipal | Verwaltete Identität |
---|---|
Eine Sicherheitsidentität, die manuell in Microsoft Entra ID für das Zugreifen auf bestimmte Azure-Ressourcen durch Anwendungen, Dienste und Tools erstellt wurde. | Ein spezieller Dienstprinzipaltyp. Es handelt sich um eine automatische Identität, die beim Erstellen eines Azure-Diensts erstellt wird. |
Diese kann von beliebigen Anwendungen oder Diensten verwendet werden. Sie ist nicht an einen bestimmten Azure-Dienst gebunden. | Sie stellt eine Azure-Dienstinstanz dar. Sie kann nicht zur Darstellung anderer Azure-Dienste verwendet werden. |
Sie verfügt über einen unabhängigen Lebenszyklus. Sie müssen sie explizit löschen. | Sie wird automatisch gelöscht, wenn die Azure-Dienstinstanz gelöscht wird. |
Die kennwortbasierte oder zertifikatbasierte Authentifizierung. | Es muss kein explizites Kennwort für die Authentifizierung angegeben werden. |
Datenbankauthentifizierung und Berechtigungen
Cloud-Skalierungsanalyse enthält wahrscheinlich polyglotten Speicher. Beispiele hierfür sind PostgreSQL, MySQL, Azure SQL-Datenbank, SQL-Managed Instance und Azure Synapse Analytics.
- Verwenden von Microsoft Entra ID für die Authentifizierung mit PostgreSQL
- Verwenden der Microsoft Entra-Authentifizierung mit Azure SQL-Datenbank, SQL Managed Instance und Azure Synapse Analytics
- Verwenden von Microsoft Entra ID für die Authentifizierung mit MySQL
Es wird empfohlen, Microsoft Entra-Gruppen anstelle einzelner Microsoft Entra-Benutzerkonten zum Sichern von Datenbankobjekten zu verwenden. Verwenden Sie diese Microsoft Entra-Gruppen, um die Benutzer*innen zu authentifizieren und die Datenbankobjekte zu schützen. Ähnlich wie beim Data-Lake-Muster könnten Sie das Onboarding Ihrer Datenanwendung nutzen, um diese Gruppen zu erstellen.
Hinweis
Datenanwendungen können sensible Datenprodukte in Azure SQL Database, SQL Managed Instance oder Azure Synapse Analytics Pools speichern. Weitere Informationen finden Sie unter Datenschutz für Analysen auf Cloudebene in Azure.
Azure Data Lake-Sicherheit in Cloud-Skalierungsanalysen
Um den Zugriff auf die Daten im Data Lake zu steuern, empfehlen wir die Verwendung der Zugriffssteuerungsliste (Access Control List, ACL) auf der Ebene von Dateien und Ordnern. Azure Data Lake verwendet auch ein POSIX-orientiertes Modell für Zugriffssteuerungslisten. POSIX (portable Betriebssystemschnittstelle) ist eine Familie mit Standards für Betriebssysteme. Ein Standard definiert eine einfache, dennoch leistungsstarke Berechtigungsstruktur für den Zugriff auf Dateien und Ordner. POSIX hat sich für Netzwerkdateifreigaben und Unix-Computer weitgehend durchgesetzt.
Ähnlich wie bei den allgemeinen Azure RBAC-Methoden, sollten die folgenden Regeln für die ACL gelten:
Verwalten des Zugriffs mithilfe von Gruppen. Weisen Sie den Microsoft Entra-Gruppen Zugriff zu, und verwalten Sie die Mitgliedschaft von Gruppen für die fortlaufende Zugriffsverwaltung. Siehe Zugriffssteuerung und Data Lake-Konfigurationen in Azure Data Lake Storage.
Ansatz der geringsten Rechte: In den meisten Fällen sollten Benutzer nur über Leseberechtigungen für die Ordner und Dateien verfügen, die sie im Data Lake benötigen. Eine verwaltete Identität oder ein Dienstprinzipal, wie z. B. die von Azure Data Factory verwendete, verfügt über Lese-, Schreib- und Ausführungsberechtigungen. Die Datenbenutzer sollten keinen Zugriff auf den Speicherkontocontainer haben.
Ausrichten am Datenpartitionierungsschema. Die Entwürfe für die ACL und die Datenpartition müssen ausgerichtet werden, um eine effektive Datenzugriffssteuerung sicherzustellen. Weitere Informationen finden Sie unter Data Lake-Partitionierung.
Nächste Schritte
Datenverwaltung und rollenbasierte Zugriffssteuerung für Cloud-Skalierungsanalyse in Azure