Freigeben über


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.

Vorteile der Microsoft Entra-Authentifizierung in Fabric

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.

Fabric-Konfiguration

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.

Mandanteneinstellung

Ein Fabric-Administrator in Ihrem Mandanten muss SPN-Zugriff auf Fabric-APIs ermöglichen, die für die SPN-Schnittstelle für SQL-Verbindungszeichenfolgen für Fabric Warehouse- oder SQL-Analyseendpunktelemente erforderlich sind.

Diese Einstellung befindet sich im Abschnitt "Entwicklereinstellungen" und bezeichnet Dienstprinzipale können Fabric-APIs verwenden. Stellen Sie sicher, dass sie aktiviert ist.

Screenshot des Fabric-Portals der Seite Entwicklereinstellungen in den Mandanteneinstellungen.

Arbeitsbereichseinstellung

Ein Fabric-Administrator in Ihrem Arbeitsbereich muss einem Benutzer/SPN Zugriff gewähren, um auf Fabric-Elemente zuzugreifen.

Es gibt zwei Methoden, mit denen ein Benutzer/SPN Zugriff erhalten kann:

  • Gewähren sie einer Rolle eine Benutzer-/SPN-Mitgliedschaft: Jede Arbeitsbereichsrolle (Administrator, Mitglied, Mitwirkender oder Viewer) reicht aus, um eine Verbindung mit Lager- oder Lakehouse-Elementen mit einem SQL-Verbindungszeichenfolge herzustellen.

    1. Weisen Sie in der Option Zugriff verwalten im Arbeitsbereich die Teilnehmerrolle zu. Weitere Informationen finden Sie unter Service-Rollen.
  • Weisen Sie einem bestimmten Element einen 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.

    1. Navigieren Sie zum relevanten Warehouse- oder SQL-Analyseendpunktelement.
    2. Wählen Sie Weitere Optionen, dann Berechtigungen verwalten aus. Wählen Sie Benutzer hinzufügen.
    3. Fügen Sie den Benutzer/SPN auf der Seite Personen Zugriff gewähren hinzu.
    4. Weisen Sie einem Benutzer/SPN die erforderlichen Berechtigungen zu. Wählen Sie keine Zusätzlichen Berechtigungen aus, um nur Verbindungsberechtigungen zu erteilen.

    Screenshot des Fabric-Portals der Seite Personen Zugriff gewähren.

Sie können die Standardberechtigungen ändern, die dem Benutzer/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.

Unterstützung für Benutzeridentitäten und Dienstprinzipalnamen (SPNs)

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.

Unterstützung für Tabular Data Stream (TDS)

Fabric verwendet das TDS-Protokoll (Tabular Data Stream), das mit SQL Server identisch ist, wenn Sie eine Verbindung mit einem Verbindungszeichenfolge herstellen.

Fabric ist mit allen Anwendungen oder Tools kompatibel, die mit dem SQL-Datenbank Engine eine Verbindung mit einem Produkt herstellen können. Ähnlich wie bei einer SQL Server-Instanzverbindung arbeitet TDS an TCP-Port 1433. Weitere Informationen zur Fabric SQL-Konnektivität finden Sie unter Konnektivität.

Wählen Sie zum Abrufen der Verbindungszeichenfolge weitere Optionen für ein Fabric Warehouse- oder SQL-Analysen-Endpunktelement aus.

Screenshot aus dem Fabric-Portal des Kontextmenüs Weitere Optionen. Die Option SQL-Verbindungszeichenfolge kopieren ist hervorgehoben.

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.

Flussdiagramm mit Microsoft Entra-Authentifizierungsmodi und Entscheidungspunkten.

Treiber-Unterstützung für die Microsoft Entra-Authentifizierung

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 die Microsoft Entra-Authentifizierung unterstützen, und ein Schlüsselwort für den Authentifizierungsmodus in ihren SQL-Verbindungszeichenfolge hinzufügen, zActiveDirectoryInteractive. B. , ActiveDirectoryServicePrincipaloder 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.

Microsoft OLE DB

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-Treiber

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.

Microsoft JDBC-Treiber

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.

Microsoft.Data.SqlClient .NET Core (C#)

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: