Microsoft Entra-Authentifizierung als Alternative zur SQL-Authentifizierung
Gilt für:✅ SQL-Analyseendpunkt und Warehouse in Microsoft Fabric
In diesem Artikel werden technische Methoden behandelt, mit denen Benutzer und Kunden von der SQL-Authentifizierung zur Microsoft Entra-Authentifizierung in Microsoft Fabric wechseln können. Die Microsoft Entra-Authentifizierung ist eine Alternative zu Benutzernamen und Passwörtern über die SQL-Authentifizierung, um sich beim SQL-Analyseendpunkt des Lakehouse oder des Warehouse in Microsoft Fabric anzumelden. Die Microsoft Entra-Authentifizierung ist ratsam und wichtig für die Erstellung einer sicheren Datenplattform.
Dieser Artikel konzentriert sich auf die Microsoft Entra-Authentifizierung als Alternative zur SQL-Authentifizierung in Microsoft Fabric-Elementen wie einem Warehouse- oder Lakehouse SQL-Analyseendpunkt.
Eines der Kernprinzipien von Microsoft Fabric ist Sicherheit durch Design. Microsoft Entra ist ein wesentlicher Bestandteil der Sicherheit von Microsoft Fabric, da es einen starken Datenschutz, Governance und Compliance gewährleistet.
Microsoft Entra spielt aus mehreren Gründen eine entscheidende Rolle bei der Sicherheit von Microsoft Fabric:
- Authentifizierung: Überprüfen Sie Benutzer und Dienstprinzipale mithilfe der Microsoft Entra-ID, die Zugriffstoken für Vorgänge in Fabric gewährt.
- Sicherer Zugriff: Stellen Sie von jedem Gerät oder Netzwerk aus eine sichere Verbindung zu Cloud-Anwendungen her und schützen Sie die an Fabric gestellten Anforderungen.
- Bedingter Zugriff: Administratoren können Richtlinien festlegen, die den Benutzeranmeldungskontext bewerten, den Zugriff steuern oder zusätzliche Überprüfungsschritte erzwingen.
- Integration: Microsoft Entra ID funktioniert nahtlos mit allen Microsoft SaaS-Angeboten, einschließlich Fabric, die einfachen Zugriff auf Geräte und Netzwerke ermöglichen.
- Breite Plattform: Zugriff auf Microsoft Fabric mit Microsoft Entra ID über eine beliebige Methode erhalten, ob über das Fabric-Portal, SQL-Verbindungszeichenfolge, REST-API oder XMLA-Endpunkt.
Microsoft Entra übernimmt eine vollständige Zero Trust-Richtlinie, die eine überlegene Alternative zur herkömmlichen SQL-Authentifizierung bietet, die auf Nutzernamen und Passwörter beschränkt ist. Dieser Ansatz:
- Verhindert den Identitätswechsel des Benutzers.
- Ermöglicht eine differenzierte Zugriffssteuerung unter Berücksichtigung der Benutzeridentität, Umgebung, Geräte usw.
- Unterstützt erweiterte Sicherheit wie die Microsoft Entra-Multi-Faktor-Authentifizierung.
Die Microsoft Entra-Authentifizierung für die Verwendung mit einem Warehouse- oder Lakehouse-SQL-Analyseendpunkt erfordert eine Konfiguration sowohl in den Mandant- als auch in den Arbeitsbereichs-Einstellungen.
Ein Fabric-Administrator in Ihrem Mandanten muss zugriff auf Fabric-APIs (Service Principal Names, SPN) zulassen, die für die Schnittstelle für SQL-Verbindungszeichenfolgen mit Fabric Warehouse- oder SQL-Analyseendpunktelementen erforderlich sind.
Diese Einstellung befindet sich im Abschnitt Entwicklereinstellungen und bezeichnet Dienstprinzipale können Fabric-APIsverwenden. Stellen Sie sicher, dass sie aktiviert ist.
Ein Fabric-Administrator in Ihrem Arbeitsbereich muss einem Benutzer oder SPN Zugriff auf Fabric-Elemente gewähren.
Es gibt zwei Methoden, mit denen ein Benutzer/SPN Zugriff erhalten kann:
Gewähren einer Benutzer-/SPN-Mitgliedschaft einer Rolle: Jede Arbeitsbereichsrolle (Administrator, Mitglied, Mitwirkender oder Viewer) reicht aus, um eine Verbindung mit Lager- oder Lakehouse-Elementen mit einer SQL-Verbindungszeichenfolge herzustellen.
- Weisen Sie in der Option Zugriff verwalten im Arbeitsbereich die Teilnehmerrolle zu. Weitere Informationen finden Sie unter Service-Rollen.
Weisen Sie einem bestimmten Elementeinen Benutzer/SPN zu: Gewähren Sie Zugriff auf einen bestimmten Warehouse- oder SQL-Analyseendpunkt eines Lakehouse. Ein Fabric-Admin kann aus verschiedenen Berechtigungsstufen wählen.
- Navigieren Sie zum relevanten Warehouse- oder SQL-Analyseendpunktelement.
- Wählen Sie Weitere Optionen, dann Berechtigungen verwalten aus. Wählen Sie Benutzer hinzufügen.
- Fügen Sie den Benutzer/SPN auf der Seite Personen Zugriff gewähren hinzu.
- Weisen Sie einem Benutzer/SPN die erforderlichen Berechtigungen zu. Wählen Sie keine Zusätzlichen Berechtigungen aus, um nur Verbindungsberechtigungen zu erteilen.
Sie können die Standardberechtigungen ändern, die dem Benutzer oder SPN vom System zugewiesen werden. Verwenden Sie die Befehle T-SQL GRANT und DENY, um Berechtigungen nach Bedarf zu ändern, oder ALTER ROLE, um Mitgliedschaften zu Rollen hinzuzufügen.
Derzeit verfügen SPNs nicht über die Funktionalität als Benutzerkonten für eine detaillierte Berechtigungskonfiguration mit GRANT
/DENY
.
Fabric unterstützt systemeigene Authentifizierung und Autorisierung für Microsoft Entra-Benutzer und Dienstprinzipalnamen (SPN) in SQL-Verbindungen mit Warehouse- und SQL-Analyseendpunktelementen.
- Benutzeridentitäten sind die eindeutigen Anmeldedaten für jeden Benutzer innerhalb einer Organisation.
- SPNs stellen Anwendungsobjekte innerhalb eines Mandanten dar und fungieren als Identität für Instanzen von Anwendungen und übernehmen die Rolle der Authentifizierung und Autorisierung dieser Anwendungen.
Fabric verwendet das TDS-Protokoll (Tabular Data Stream), das mit SQL Server identisch ist, wenn Sie eine Verbindung mit einer Verbindungszeichenfolge herstellen.
Fabric ist mit allen Anwendungen oder Tools kompatibel, die eine Verbindung mit einem Produkt mit dem SQL-Datenbankmodul herstellen können. Ähnlich wie bei einer SQL Server-Instanzverbindung arbeitet TDS an TCP-Port 1433. Weitere Informationen zur Fabric SQL-Konnektivität und zum Suchen der SQL-Verbindungszeichenfolge finden Sie unter Konnektivität.
Eine Beispiel-SQL-Verbindungszeichenfolge sieht aus wie: <guid_unique_your_item>.datawarehouse.fabric.microsoft.com
.
Anwendungen und Clienttools können die Authentication
-Verbindungseigenschaft im Verbindungszeichenfolge festlegen, um einen Microsoft Entra-Authentifizierungsmodus auszuwählen. In der folgenden Tabelle werden die verschiedenen Microsoft Entra-Authentifizierungsmodi beschrieben, einschließlich der Unterstützung für die mehrstufige Microsoft Entra-Authentifizierung (MFA).
Authentifizierungsmodus | Szenarien | Kommentare |
---|---|---|
Microsoft Entra interaktiv | Wird von Anwendungen oder Tools in Situationen verwendet, in denen die Benutzerauthentifizierung interaktiv erfolgen kann oder wenn ein manueller Eingriff für die Überprüfung von Anmeldedaten akzeptabel ist. | Aktivieren Sie MFA und Microsoft Entra-Richtlinien für bedingten Zugriff, um organisatorische Regeln durchzusetzen. |
Microsoft Entra-Dienstprinzipal | Wird von Apps für die sichere Authentifizierung ohne menschliches Eingreifen verwendet, am besten geeignet für die Anwendungsintegration. | Empfohlen, Microsoft Entra-Richtlinien für bedingten Zugriff zu aktivieren. |
Microsoft Entra-Kennwort | Wenn Anwendungen die SPN-basierte Authentifizierung aufgrund von Inkompatibilität nicht verwenden können oder für viele Benutzer einen generischen Nutzernamen und ein Passwort erfordern oder wenn andere Methoden nicht praktikabel sind. | MFA muss deaktiviert sein und es können keine Richtlinien für bedingten Zugriff festgelegt werden. Es wird empfohlen, das Sicherheitsteam des Kunden zu überprüfen, bevor Sie sich für diese Lösung entscheiden. |
Während die meisten SQL-Treiber ursprünglich Unterstützung für die Microsoft Entra-Authentifizierung boten, wurde die Kompatibilität in den letzten Updates auf SPN-basierte Authentifizierung erweitert. Diese Verbesserung vereinfacht die Umstellung auf die Microsoft Entra-Authentifizierung für verschiedene Anwendungen und Tools durch Treiberupgrades und Hinzufügen von Support für die Microsoft Entra-Authentifizierung.
Manchmal ist es jedoch erforderlich, zusätzliche Einstellungen anzupassen, z. B. das Aktivieren bestimmter Ports oder Firewalls, um die Microsoft Entra-Authentifizierung auf dem Hostcomputer zu erleichtern.
Anwendungen und Tools müssen Treiber auf Versionen aktualisieren, die Microsoft Entra-Authentifizierung unterstützen, und ein Schlüsselwort für den Authentifizierungsmodus in ihrer SQL-Verbindungszeichenfolge hinzufügen, z ActiveDirectoryInteractive
. B. , ActiveDirectoryServicePrincipal
oder ActiveDirectoryPassword
.
Fabric ist kompatibel mit den systemeigenen Treibern von Microsoft, einschließlich OLE DB, Microsoft.Data.SqlClient
und generischen Treibern wie ODBC und JDBC. Der Übergang für Anwendungen zum Arbeiten mit Fabric kann über eine Neukonfiguration zur Verwendung der Microsoft Entra ID-basierten Authentifizierung verwaltet werden.
Weitere Informationen finden Sie unter Konnektivität mit Datenspeicherung in Microsoft Fabric.
Die OLE DB-Treiber für SQL Server ist eine eigenständige Datenzugriffs-API, die für OLE DB entwickelt und erstmals mit SQL Server 2005 (9.x) veröffentlicht wurde. Da erweiterte Features SPN-basierte Authentifizierung mit Version 18.5.0 enthalten, fügen Sie die vorhandenen Authentifizierungsmethoden aus früheren Versionen hinzu.
Authentifizierungsmodus | SQL-Verbindungszeichenfolge |
---|---|
Microsoft Entra interaktiv | Interaktive Microsoft Entra-Authentifizierung |
Microsoft Entra-Dienstprinzipal | Microsoft Entra-Authentifizierung mit Dienstprinzipal |
Microsoft Entra-Kennwort | Microsoft Entra-Authentifizierung mit Nutzername und Passwort |
Einen C#-Codeschnipsel mit OLE DB mit SPN-basierter Authentifizierung finden Sie unter System.Data.OLEDB.Connect.cs.
Microsoft ODBC Driver for SQL Server ist eine einzelne Dynamic-Link Library (DLL), die Laufzeitunterstützung für Anwendungen bietet, die APIs mit nativem Code verwenden, um eine Verbindung zu SQL Server herzustellen. Es wird empfohlen, die neueste Version für Anwendungen für die Integration in Fabric zu verwenden.
Weitere Informationen zur Microsoft Entra-Authentifizierung mit ODBC finden Sie unter Verwenden der Microsoft Entra ID mit dem ODBC-Treiberbeispielcode.
Authentifizierungsmodus | SQL-Verbindungszeichenfolge |
---|---|
Microsoft Entra interaktiv | DRIVER={ODBC Driver 18 for SQL Server};SERVER=<SQL Connection String>;DATABASE=<DB Name>;UID=<Client_ID@domain>;PWD=<Secret>;Authentication=ActiveDirectoryInteractive |
Microsoft Entra-Dienstprinzipal | DRIVER={ODBC Driver 18 for SQL Server};SERVER=<SQL Connection String>;DATABASE=<DBName>;UID=<Client_ID@domain>;PWD=<Secret>;Authentication=ActiveDirectoryServicePrincipal |
Microsoft Entra-Kennwort | DRIVER={ODBC Driver 18 for SQL Server};SERVER=<SQL Connection String>;DATABASE=<DBName>;UID=<Client_ID@domain>;PWD=<Secret>;Authentication=ActiveDirectoryPassword |
Einen Python-Codeschnipsel mit ODBC mit SPN-basierter Authentifizierung finden Sie unter pyodbc-dw-connectivity.py.
Der Microsoft JDBC-Treiber für SQL Server ist ein JDBC-Treiber vom Typ 4, der Datenbankkonnektivität über die JDBC-Standard-APIs (Anwendungsprogrammierschnittstellen) bereitstellt, die auf der Java-Plattform verfügbar sind.
Ab Version 9.2 führt mssql-jdbc
die Unterstützung für ActiveDirectoryInteractive
und ActiveDirectoryServicePrincipal
ein, wobei ActiveDirectoryPassword
in den Versionen 12.2 und höher unterstützt wird. Dieser Treiber erfordert zusätzliche Jars als Abhängigkeiten, die mit der in Ihrer Anwendung verwendeten Version von mssql-driver
kompatibel sein müssen. Weitere Informationen finden Sie unter Featureabhängigkeiten des JDBC-Treibers und der Client-Einrichtungsanforderung.
Authentifizierungsmodus | Weitere Informationen |
---|---|
Microsoft Entra interaktiv | Herstellen einer Verbindung mithilfe des Authentifizierungsmodus „ActiveDirectoryInteractive“ |
Microsoft Entra-Dienstprinzipal | Herstellen einer Verbindung im ActiveDirectoryServicePrincipal-Authentifizierungsmodus |
Microsoft Entra-Kennwort | Herstellen einer Verbindung im ActiveDirectoryPassword-Authentifizierungsmodus |
Einen Java-Codeausschnitt, der JDBC mit SPN-basierter Authentifizierung verwendet, finden Sie in fabrictoolbox/dw_connect.java und sample pom file pom.xml.
Der Microsoft.Data.SqlClient ist ein Datenanbieter für Microsoft SQL Server und Azure SQL-Datenbank. Es ist eine Vereinigung der beiden System.Data.SqlClient
-Komponenten, die unabhängig voneinander in .NET Framework und .NET Core vorhanden sind und bietet eine Reihe von Klassen für den Zugriff auf Microsoft SQL Server-Datenbanken. Microsoft.Data.SqlClient
wird für alle neuen und zukünftigen Entwicklungen empfohlen.
Authentifizierungsmodus | Weitere Informationen |
---|---|
Microsoft Entra interaktiv | Verwendung der interaktiven Authentifizierung |
Microsoft Entra-Dienstprinzipal | Verwenden der Dienstprinzipalauthentifizierung |
Microsoft Entra-Kennwort | Verwendung der Kennwortauthentifizierung |
Codeschnipsel mit SPNs: