Freigeben über


Herstellen einer Verbindung mit Azure SQL-Ressource mit Microsoft Entra-Authentifizierung

Gilt für: Azure SQL-Datenbank Azure SQL Managed Instance Azure Synapse Analytics

Dieser Artikel zeigt Ihnen, wie Sie die Microsoft Entra-Authentifizierung verwenden, um sich mit Azure SQL-Datenbank, Azure SQL Managed Instance und Azure Synapse Analytics zu verbinden.

Voraussetzungen

Um eine Verbindung mit Ihrer Azure SQL-Ressource herzustellen, müssen Sie die Microsoft Entra-Authentifizierung für Ihre Ressource konfiguriert haben.

Um zu prüfen, dass der Microsoft Entra-Administrator ordnungsgemäß eingerichtet ist, stellen Sie mit dem Microsoft Entra-Administratorkonto eine Verbindung mit der Datenbank master her. Zum Erstellen eines Microsoft Entra-basierten eigenständigen Datenbankbenutzers stellen Sie eine Verbindung mit der Datenbank mit einer Microsoft Entra-Identität her, die Zugriff auf die Datenbank und mindestens die ALTER ANY USER-Berechtigung hat.

Herstellen einer Verbindung mit SSMS oder SSDT

Das nachstehende Verfahren zeigt, wie Sie mithilfe einer Microsoft Entra-Identität und unter Verwendung von SQL Server Management Studio (SSMS) oder SQL Server Data Tools (SSDT) eine Verbindung mit SQL-­Datenbank herstellen.

Microsoft Entra Integriert

Verwenden Sie diese Methode, wenn Sie sich mit Ihren Windows-Anmeldedaten anmelden möchten, die in Microsoft Entra ID zusammengeführt werden. Weitere Informationen finden Sie unter Microsoft Entra nahtloses einmaliges Anmelden.

  1. Starten Sie SSMS oder SSDT und öffnen Sie auf der Registerkarte Anmelden des Dialogfelds Mit Server verbinden (oder Mit Datenbank-Engine verbinden) Folgendes:

    1. Geben Sie den Servernamen im Format <server-name>.database.windows.net an.
    2. Wählen Sie für Authentifizierung Microsoft Entra Integrated. Sie müssen kein Kennwort eingeben, da Ihre vorhandenen Anmeldeinformationen für die Verbindung angezeigt werden.
    3. Wählen Sie für die Verschlüsselung Strict (SQL Server 2022 und Azure SQL) aus, das zum Herstellen einer Verbindung mit Azure SQL-Ressourcen verwendet werden soll.

    Screenshot: SSMS mit integrierter Microsoft Entra-Authentifizierung.

  2. Geben Sie auf der Registerkarte Verbindungseigenschaften im Feld Mit Datenbank verbinden den Namen der Benutzerdatenbank ein, mit der Sie eine Verbindung herstellen möchten.

    Screenshot des SSMS-Optionsmenüs.

Microsoft Entra-Kennwort

Verwenden Sie diese Methode beim Herstellen einer Verbindung mit einem Microsoft Entra-Prinzipalnamen mithilfe der von Microsoft Entra verwalteten Domäne. Sie können diese Authentifizierungsmethode auch für ein Verbundkonto ohne Zugriff auf die Domäne verwenden, beispielsweise wenn Sie an einem Remotestandort arbeiten.

Verwenden Sie diese Methode, um sich bei SQL-Datenbank oder SQL Managed Instance mit reinen Microsoft Entra-Cloudidentitätsbenutzern oder solchen Benutzern bei der Datenbank zu authentifizieren, die Microsoft Entra-Hybrididentitäten verwenden. Diese Methode unterstützt Benutzer, die ihre Windows-Anmeldeinformationen verwenden möchten, deren lokaler Computer aber nicht mit der Domäne verbunden ist (z. B. über Remotezugriff). In diesem Fall kann ein Windows-Benutzer sein Domänenkonto mit dem zugehörigen Kennwort verwenden, um sich in SQL-Datenbank, SQL Managed Instance oder Azure Synapse bei der Datenbank zu authentifizieren.

  1. Starten Sie SSMS oder SSDT und öffnen Sie auf der Registerkarte Anmelden des Dialogfelds Mit Server verbinden (oder Mit Datenbank-Engine verbinden) Folgendes:

    1. Geben Sie den Servernamen im Format <server-name>.database.windows.net an.
    2. Wählen Sie für Authentifizierung Microsoft Entra-Passwort.
    3. Geben Sie im Feld Benutzername Ihren Microsoft Entra-Benutzernamen im Format username@domain.com ein. Benutzernamen müssen ein Konto aus Microsoft Entra ID oder ein Konto aus einer verwalteten oder Verbunddomäne Microsoft Entra ID sein.
    4. Geben Sie im Feld Kennwort Ihr Benutzerkennwort für das Microsoft Entra-Konto oder das Konto der verwalteten Domäne oder Verbunddomäne ein.
    5. Wählen Sie für die Verschlüsselung Strict (SQL Server 2022 und Azure SQL) aus, das zum Herstellen einer Verbindung mit Azure SQL-Ressourcen verwendet werden soll.

    Screenshot: SSMS mit Microsoft Entra-Kennwortauthentifizierung.

  2. Geben Sie auf der Registerkarte Verbindungseigenschaften im Feld Mit Datenbank verbinden den Namen der Benutzerdatenbank ein, mit der Sie eine Verbindung herstellen möchten.

    Screenshot des SSMS-Optionsmenüs.

Microsoft Entra MFA

Verwenden Sie diese Methode für die interaktive Authentifizierung mit Multi-Faktor-Authentifizierung (MFA), bei der das Kennwort interaktiv angefordert wird. Diese Methode kann verwendet werden, um sich bei SQL-Datenbank, SQL Managed Instance und Azure Synapse Analytics mit reinen Microsoft Entra-Cloudidentitätsbenutzern oder solchen Benutzern bei der Datenbank zu authentifizieren, die Microsoft Entra-Hybrididentitäten verwenden.

Die folgenden Schritte veranschaulichen, wie Sie eine Verbindung mit Multi-Faktor-Authentifizierung in der aktuellen SSMS-Version herstellen.

  1. Um eine Verbindung mit MFA herzustellen, wählen Sie im Dialogfeld Mit Server verbinden in SSMS Microsoft Entra MFA aus.

    Screenshot des Dialogfelds „Mit Server verbinden“ in SSMS. Im Dropdownlisten-Fenster für die Authentifizierung wird „Microsoft Entra MFA“ ausgewählt.

  2. Füllen Sie das Feld Servername mit dem Namen Ihres Servers aus. Füllen Sie das Feld Benutzername mit Ihren Microsoft Entra-Anmeldeinformationen im Format user_name@domain.com aus.

    Screenshot der Einstellungen im Dialogfeld „Verbindung mit Server herstellen“ in SSMS, wobei alle Felder ausgefüllt sind.

  3. Wählen Sie Verbinden.

  4. Wenn das Dialogfeld Bei Ihrem Konto anmelden angezeigt wird, sollte es mit dem Benutzernamen, den Sie in Schritt 2 angegeben haben, vorab aufgefüllt werden. Es ist kein Kennwort erforderlich, wenn ein Benutzer Mitglied einer Domäne im Verbund mit Microsoft Entra ID ist.

    Screenshot des Dialogfelds „Bei Ihrem Konto anmelden“ für Azure SQL-Datenbank und Data Warehouse. Das Feld für den Kontonamen ist ausgefüllt.

  5. Sie werden aufgefordert, sich mit einer der Methoden zu authentifizieren, die basierend auf der MFA-Administratoreinstellung konfiguriert sind.

  6. Wenn die Überprüfung abgeschlossen ist, stellt SSMS normalerweise eine Verbindung her, vorausgesetzt, die Anmeldeinformationen sind gültig und der Firewallzugriff ist möglich.

Microsoft Entra-Dienstprinzipal

Verwenden Sie diese Methode, um sich bei der Datenbank in der SQL-Datenbank oder SQL Managed Instance mit Microsoft Entra-Dienstprinzipalen (Microsoft Entra-Anwendungen) zu authentifizieren. Weitere Informationen finden Sie unter Microsoft Entra-Dienstprinzipal mit Azure SQL.

Microsoft Entra – verwaltete Identität

Verwenden Sie diese Methode, um sich bei der Datenbank in der SQL-Datenbank oder SQL Managed Instance mit verwalteten Microsoft Entra-Identitäten zu authentifizieren. Weitere Informationen finden Sie unter Verwaltete Identitäten in Microsoft Entra für Azure SQL.

Microsoft Entra – Standard

Die Standardauthentifizierungsoption mit Microsoft Entra ID ermöglicht die Authentifizierung, die über kennwortlose und nicht interaktive Mechanismen ausgeführt wird, einschließlich verwalteter Identitäten.

Herstellen einer Verbindung von einer Clientanwendung

Die folgenden Verfahren zeigen, wie Sie mit einer Microsoft Entra-Identität von einer Clientanwendung aus eine Verbindung mit einer SQL-Datenbank herstellen. Dies ist keine umfassende Liste der Authentifizierungsmethoden bei Verwendung einer Microsoft Entra-Identität. Weitere Informationen finden Sie unter Herstellen einer Verbindung mit Azure SQL mit Microsoft Entra-Authentifizierung und SqlClient.

Konfigurieren Ihrer Clientanwendungen

Hinweis

System.Data.SqlClient verwendet die Azure Active Directory-Authentifizierungsbibliothek (ADAL), die veraltet ist. Wenn Sie den Namespace System.Data.SqlClient für die Microsoft Entra-Authentifizierung verwenden, migrieren Sie Anwendungen zu Microsoft.Data.SqlClient und zur Microsoft-Authentifizierungsbibliothek (MSAL). Informationen zu den in .NET verfügbaren Verbindungsmethoden finden Sie unter Herstellen einer Verbindung mit Azure SQL mit Microsoft Entra-Authentifizierung und SqlClient.

Wenn Sie weiterhin ADAL.DLL in Ihren Anwendungen verwenden müssen, können Sie die Links in diesem Abschnitt verwenden, um den aktuellen ODBC- und OLE DB-Treiber zu installieren, die die aktuelle ADAL.DLL-Bibliothek enthalten.

Auf allen Clientcomputern, über die Ihre Anwendungen oder Benutzer unter Verwendung von Microsoft Entra-Identitäten eine Verbindung mit SQL-Datenbank oder Azure Synapse Analytics herstellen, muss die folgende Software installiert werden:

Sie können diese Anforderungen folgendermaßen erfüllen:

  • Durch das Installieren der aktuellen Version von SQL Server Management Studio oder SQL Server Data Tools wird die Anforderung erfüllt, dass .NET Framework 4.6 vorhanden sein muss.
    • SSMS installiert die x86-Version von ADAL.DLL.
    • SSDT installiert die amd64-Version von ADAL.DLL.
    • Die neueste Visual Studio-Version unter Visual Studio-Downloads erfüllt die .NET Framework 4.6-Anforderung, die erforderliche amd64-Version von ADAL.DLL wird jedoch nicht installiert.

Integrierte Microsoft Entra-Authentifizierung

Um integrierte Windows-Authentifizierung verwenden zu können, muss das Active Directory der Domäne einen Verbund mit Microsoft Entra ID bilden oder sollte eine verwaltete Domäne sein, die für nahtloses einmaliges Anmelden (SSO) für Passthrough- oder Kennworthashauthentifizierung konfiguriert ist. Weitere Informationen finden Sie unter Microsoft Entra nahtloses einmaliges Anmelden.

Ihre Client-Anwendung (oder ein Dienst), die eine Verbindung mit der Datenbank herstellt, muss unter den Domänenanmeldeinformationen eines Benutzers auf einem Computer ausgeführt werden, der der Domäne beigetreten ist.

Um mithilfe der integrierten Authentifizierung und einer Microsoft Entra-Identität eine Verbindung mit einer Datenbank herzustellen, muss das Authentication-Schlüsselwort in der Verbindungszeichenfolge für die Datenbank auf Active Directory Integrated festgelegt sein. Ersetzen Sie <server_name> durch den Namen Ihres logischen Servers. Im folgenden C#-Codebeispiel wird ADO .NET verwendet.

string ConnectionString = @"Data Source=<server-name>.database.windows.net; Authentication=Active Directory Integrated; Initial Catalog=testdb;";
SqlConnection conn = new SqlConnection(ConnectionString);
conn.Open();

Das Schlüsselwort Integrated Security=True in der Verbindungszeichenfolge wird nicht für die Verbindungsherstellung mit Azure SQL-Datenbank unterstützt. Beim Herstellen einer ODBC-Verbindung müssen Sie Leerzeichen entfernen und Authentifizierung auf ActiveDirectoryIntegrated festlegen.

Microsoft Entra-Authentifizierung mit Kennwort

Zum Herstellen einer Verbindung mit einer Datenbank mithilfe reiner Microsoft Entra-Cloudidentitäts-Benutzerkonten oder Konten, die Microsoft Entra-Hybrididentitäten verwenden, muss das Authentifizierungsschlüsselwort auf Active Directory Password festgelegt werden. Die Verbindungszeichenfolge muss Benutzer-ID/UID und Kennwort/PWD-Schlüsselwörter enthalten. Ersetzen Sie <server_name>, <email_address> und <password> durch die entsprechenden Werte. Im folgenden C#-Codebeispiel wird ADO .NET verwendet.

string ConnectionString =
@"Data Source=<server-name>.database.windows.net; Authentication=Active Directory Password; Initial Catalog=testdb; UID=<email_address>; PWD=<password>";
SqlConnection conn = new SqlConnection(ConnectionString);
conn.Open();

Erfahren Sie mehr über Microsoft Entra-Authentifizierungsmethoden, indem Sie die Demo-Codebeispiele unter Microsoft Entra Authentication GitHub Demo (GitHub-Demo zur Microsoft Entra-Authentifizierung) verwenden.

Microsoft Entra ID-Zugriffstoken

Dank dieser Authentifizierungsmethode können Dienste der mittleren Ebene JSON Webtoken (JWT) abrufen, um in SQL-Datenbank, SQL Managed Instance oder Azure Synapse eine Verbindung mit der Datenbank herzustellen, indem sie ein Token aus Microsoft Entra ID abrufen. Diese Methode ermöglicht verschiedene Anwendungsszenarien einschließlich Dienstidentitäten, Dienstprinzipalen und Anwendungen, die zertifikatbasierte Authentifizierung verwenden. Sie müssen vier grundlegende Schritte zum Verwenden der Microsoft Entra-Token-Authentifizierung ausführen:

  1. Registrieren Sie Ihre Anwendung in Microsoft Entra ID, und rufen Sie die Client-ID für Ihren Code ab.
  2. Erstellen Sie einen Datenbankbenutzer, der die Anwendung darstellt (wie im Abschnitt Erstellen enthaltener Benutzer erstellen, die Microsoft Entra-Identitäten zugeordnet sind.)
  3. Erstellen Sie ein Zertifikat auf dem Clientcomputer, auf dem die Anwendung ausgeführt wird.
  4. Fügen Sie das Zertifikat als Schlüssel für die Anwendung hinzu.

Beispiel-Verbindungszeichenfolge. Ersetzen Sie <server-name> durch den Namen Ihres logischen Servers:

string ConnectionString = @"Data Source=<server-name>.database.windows.net; Initial Catalog=testdb;";
SqlConnection conn = new SqlConnection(ConnectionString);
conn.AccessToken = "Your JWT token";
conn.Open();

Weitere Informationen finden Sie im SQL Server Security Blog(Blog zur Sicherheit von SQL Server). Informationen zum Hinzufügen eines Zertifikats finden Sie unter Erste Schritte mit zertifikatbasierter Authentifizierung in Microsoft Entra ID.

Multi-Faktor-Authentifizierung in Microsoft Entra

Die Multi-Faktor-Authentifizierung von Microsoft Entra ist eine unterstützte Authentifizierungsmethode für alle SQL-Tools. Informationen zur programmgesteuerten Authentifizierung mit Microsoft Entra ID finden Sie in der Übersicht über die Microsoft Authentication Library (MSAL).

sqlcmd

Die folgenden Anweisungen stellen eine Verbindung mit Version 13.1 von sqlcmd her. Herunterladen von Microsoft Command Line Utilities 14.0 für SQL Server

Hinweis

sqlcmd mit dem -G-Befehl funktioniert nicht mit Systemidentitäten und erfordert eine Benutzerprinzipalanmeldung.

sqlcmd -S <database or datawarehouse name>.<server-name>.database.windows.net -G
sqlcmd -S <database or datawarehouse name>.<server-name>.database.windows.net -U adrian@contoso.com -P <password> -G -l 30

Verbindung im Azure-Portal-Abfrage-Editor (Azure SQL-Datenbank)

Weitere Informationen zum Abfrage-Editor im Azure-Portal für Azure SQL-Datenbank finden Sie in der Schnellstartanleitung zum Verwenden des Abfrage-Editors im Azure-Portal zum Abfragen von Azure SQL-Datenbank.

  1. Navigieren Sie im Azure-Portal zu Ihrer SQL-Datenbank. Besuchen Sie beispielsweise Ihr Azure SQL-Dashboard.

  2. Wählen Sie auf der Seite Übersicht in Ihrer SQL-Datenbank im Azure-Portal im linken Menü den Abfrage-Editor aus.

  3. Wählen Sie auf dem Anmeldebildschirm unter Willkommen beim SQL-Datenbank-Abfrage-Editor die Option Als <Benutzer- oder Gruppen-ID>fortfahren aus.