Gilt für:
Azure SQL-Datenbank
Azure SQL Managed Instance
Dieser Artikel beschreibt die Vorgehensweise zur Aktivierung der reinen Microsoft Entra-Authentifizierung in Azure SQL-Datenbank und Azure SQL Managed Instance. Wenn Sie eine SQL-Datenbank- oder eine SQL Managed Instance-Instanz bereitstellen möchten, für die ausschließlich die Microsoft Entra-Authentifizierung aktiviert ist, finden Sie weitere Informationen unter Erstellen eines Servers mit aktivierter reiner Microsoft Entra-Authentifizierung in Azure SQL.
In diesem Tutorial lernen Sie Folgendes:
- Zuweisen einer Rolle zum Aktivieren der reinen Microsoft Entra-Authentifizierung
- Aktivieren der reinen Microsoft Entra-Authentifizierung mithilfe von Azure-Portal, Azure CLI oder PowerShell
- Prüfen, ob die Option für die reine Microsoft Entra-Authentifizierung aktiviert ist
- Testen der Verbindung mit Azure SQL-DB
- Deaktivieren der reinen Microsoft Entra-Authentifizierung mithilfe von Azure-Portal, Azure CLI oder PowerShell
Zuweisen einer Rolle zum Aktivieren der reinen Microsoft Entra-Authentifizierung
Um die reine Microsoft Entra-Authentifizierung zu aktivieren oder zu deaktivieren, sind ausgewählte integrierte Rollen für die Microsoft Entra-Benutzer erforderlich, die diese Vorgänge in diesem Tutorial ausführen. In diesem Tutorial weisen wir dem Benutzer die Rolle SQL Security Manager zu.
Weitere Informationen zum Zuweisen von Rollen zu einem Microsoft Entra-Konto finden Sie unter Zuweisen von Administrator- und anderen Rollen zu Benutzern mithilfe von Microsoft Entra ID.
Weitere Informationen über die erforderliche Berechtigung zum Aktivieren oder Deaktivieren der reinen Microsoft Entra-Authentifizierung finden Sie im Abschnitt „Berechtigungen“ des Artikels zur reinen Microsoft Entra-Authentifizierung.
In unserem Beispiel weisen wir dem Benutzer UserSqlSecurityManager@contoso.onmicrosoft.com
die Rolle SQL Security Manager zu. Melden Sie sich mit dem privilegierten Benutzer, der Microsoft Entra-Rollen zuweisen kann, beim Azure-Portal an.
Wechseln Sie zu Ihrer SQL-Serverressource, und wählen Sie im Menü Zugriffssteuerung (IAM) aus. Klicken Sie auf die Schaltfläche Hinzufügen und dann im Dropdownmenü auf Rollenzuweisung hinzufügen.
Wählen Sie im Bereich Rollenzuweisung hinzufügen die Rolle SQL Security Manager aus, und wählen Sie dann den Benutzer aus, der die Berechtigung zum Aktivieren und Deaktivieren der reinen Microsoft Entra-Authentifizierung haben soll.
Klicken Sie auf Speichern.
Aktivieren der reinen Microsoft Entra-Authentifizierung
Aktivieren in der SQL-Datenbank mithilfe von Azure-Portal
Führen Sie diese Schritte aus, um die reine Microsoft Entra-Authentifizierung im Azure-Portal zu aktivieren:
Melden Sie sich mit dem Benutzer mit der zugewiesenen Rolle SQL Security Manager im Azure-Portal an.
Wechseln Sie zu Ihrer SQL Server-Ressource, und wählen Sie im Menü Einstellungen die Option Microsoft Entra ID aus.
Wenn Sie keinen Microsoft Entra-Administrator hinzugefügt haben, müssen Sie diesen festlegen, bevor Sie die reine Microsoft Entra-Authentifizierung aktivieren können.
Aktivieren Sie das Kontrollkästchen Nur Microsoft Entra-Authentifizierung für diesen Server unterstützen.
Das Popupfenster Reine Microsoft Entra-Authentifizierung aktivieren wird angezeigt. Klicken Sie auf Ja, um das Feature zu aktivieren, und speichern Sie die Einstellung.
Aktivierung in SQL Managed Instance mithilfe des Azure-Portals
Führen Sie die folgenden Schritte aus, um die reine Microsoft Entra-Authentifizierung im Azure-Portal zu aktivieren.
Melden Sie sich mit dem Benutzer mit der zugewiesenen Rolle SQL Security Manager im Azure-Portal an.
Wechseln Sie zu Ihrer SQL Managed Instance-Ressource, und wählen Sie im Menü Einstellungen die Option Microsoft Entra-Administrator aus.
Wenn Sie keinen Microsoft Entra-Administrator hinzugefügt haben, müssen Sie diesen festlegen, bevor Sie die reine Microsoft Entra-Authentifizierung aktivieren können.
Aktivieren Sie das Kontrollkästchen Nur Microsoft Entra-Authentifizierung für diese verwaltete Instanz unterstützen.
Das Popupfenster Reine Microsoft Entra-Authentifizierung aktivieren wird angezeigt. Klicken Sie auf Ja, um das Feature zu aktivieren, und speichern Sie die Einstellung.
Aktivieren in der SQL-Datenbank mithilfe von Azure CLI
Verwenden Sie die folgenden Befehle, um die reine Microsoft Entra-Authentifizierung in Azure SQL-Datenbank mithilfe von Azure CLI zu aktivieren. Installieren Sie die neueste Version der Azure-Befehlszeilenschnittstelle. Sie benötigen mindestens die Azure CLI-Version 2.14.2. Weitere Informationen über diese Befehle finden Sie unter az sql server ad-only-auth.
Weitere Informationen über das Verwalten der reinen Microsoft Entra-Authentifizierung mithilfe von APIs finden Sie unter Verwalten der reinen Microsoft Entra-Authentifizierung mithilfe von APIs.
Hinweis
Der Microsoft Entra-Administrator muss für den Server festgelegt werden, bevor die reine Microsoft Entra-Authentifizierung aktiviert wird. Andernfalls wird der Azure CLI-Befehl nicht erfolgreich ausgeführt.
Informationen über Berechtigungen und Aktionen, die für das Ausführen dieser Befehle zur Aktivierung der reinen Microsoft Entra-Authentifizierung durch den Benutzer erforderlich sind, finden Sie im Artikel Reine Microsoft Entra-Authentifizierung.
Melden Sie sich bei Azure mit dem Konto mit der Rolle SQL Security Manager an.
az login
Führen Sie den folgenden Befehl aus, und ersetzen Sie dabei <myserver>
durch ihren SQL-Servernamen und <myresource>
durch Ihre Azure-Ressource, die den SQL-Server enthält.
az sql server ad-only-auth enable --resource-group <myresource> --name <myserver>
Aktivieren in SQL Managed Instance mithilfe von Azure CLI
Verwenden Sie die folgenden Befehle, um die reine Microsoft Entra-Authentifizierung in Azure SQL Managed Instance mithilfe von Azure CLI zu aktivieren. Installieren Sie die neueste Version der Azure-Befehlszeilenschnittstelle.
Melden Sie sich bei Azure mit dem Konto mit der Rolle SQL Security Manager an.
az login
Führen Sie den folgenden Befehl aus, und ersetzen Sie dabei <myserver>
durch ihren SQL-Servernamen und <myresource>
durch Ihre Azure-Ressource, die den SQL-Server enthält.
az sql mi ad-only-auth enable --resource-group <myresource> --name <myserver>
Aktivieren in der SQL-Datenbank mithilfe von PowerShell
Verwenden Sie die folgenden Befehle, um die reine Microsoft Entra-Authentifizierung in Azure SQL-Datenbank mithilfe von PowerShell zu aktivieren. Zum Ausführen dieser Befehle ist das Modul Az.Sql 2.10.0 oder höher erforderlich. Weitere Informationen über diese Befehle finden Sie unter Enable-AzSqlInstanceActiveDirectoryOnlyAuthentication.
Weitere Informationen über das Verwalten der reinen Microsoft Entra-Authentifizierung mithilfe von APIs finden Sie unter Verwalten der reinen Microsoft Entra-Authentifizierung mithilfe von APIs.
Hinweis
Der Microsoft Entra-Administrator muss für den Server festgelegt werden, bevor die reine Microsoft Entra-Authentifizierung aktiviert wird. Andernfalls wird der PowerShell-Befehl nicht erfolgreich ausgeführt.
Informationen über Berechtigungen und Aktionen, die für das Ausführen dieser Befehle zur Aktivierung der reinen Microsoft Entra-Authentifizierung durch den Benutzer erforderlich sind, finden Sie im Artikel Reine Microsoft Entra-Authentifizierung. Wenn der Benutzer nicht über ausreichende Berechtigungen verfügt, erhalten Sie die folgende Fehlermeldung:
Enable-AzSqlServerActiveDirectoryOnlyAuthentication : The client
'UserSqlServerContributor@contoso.onmicrosoft.com' with object id
'<guid>' does not have authorization to perform
action 'Microsoft.Sql/servers/azureADOnlyAuthentications/write' over scope
'/subscriptions/<guid>...'
Melden Sie sich bei Azure mit dem Konto mit der Rolle SQL Security Manager an.
Connect-AzAccount
Führen Sie den folgenden Befehl aus, und ersetzen Sie dabei <myserver>
durch ihren SQL-Servernamen und <myresource>
durch Ihre Azure-Ressource, die den SQL-Server enthält.
Enable-AzSqlServerActiveDirectoryOnlyAuthentication -ServerName <myserver> -ResourceGroupName <myresource>
Aktivieren in SQL Managed Instance mithilfe von PowerShell
Verwenden Sie die folgenden Befehle, um die reine Microsoft Entra-Authentifizierung in Azure SQL Managed Instance mithilfe von PowerShell zu aktivieren. Zum Ausführen dieser Befehle ist das Modul Az.Sql 2.10.0 oder höher erforderlich.
Weitere Informationen über das Verwalten der reinen Microsoft Entra-Authentifizierung mithilfe von APIs finden Sie unter Verwalten der reinen Microsoft Entra-Authentifizierung mithilfe von APIs.
Melden Sie sich bei Azure mit dem Konto mit der Rolle SQL Security Manager an.
Connect-AzAccount
Führen Sie den folgenden Befehl aus, und ersetzen Sie dabei <myinstance>
durch den Namen Ihrer SQL Managed Instance-Instanz und <myresource>
durch Ihre Azure-Ressource, die die SQL Managed Instance-Instanz enthält.
Enable-AzSqlInstanceActiveDirectoryOnlyAuthentication -InstanceName <myinstance> -ResourceGroupName <myresource>
Überprüfen des Status der reinen Microsoft Entra-Authentifizierung
Überprüfen Sie, ob die reine Microsoft Entra-Authentifizierung für Ihren Server oder Ihre Instanz aktiviert ist.
Überprüfen des Status in SQL-Datenbank
Navigieren Sie im Azure-Portal zu Ihrer SQL Server-Ressource. Wählen Sie im Menü Einstellungen die Option Microsoft Entra ID aus.
Überprüfen des Status in SQL Managed Instance
Öffnen Sie Ihre SQL Managed Instance-Ressource im Azure-Portal. Wählen Sie im Menü Einstellungen die Option Microsoft Entra-Administrator aus.
Mit diesen Befehlen kann überprüft werden, ob die reine Microsoft Entra-Authentifizierung für den logischen Server für Azure SQL-Datenbank oder SQL Managed Instance aktiviert ist. Mitglieder der Rollen SQL Server-Mitwirkender und SQL Managed Instance-Mitwirkender können diese Befehle verwenden, um den Status der reinen Microsoft Entra-Authentifizierung zu überprüfen. Sie können das Feature allerdings nicht aktivieren oder deaktivieren.
Überprüfen des Status in SQL-Datenbank
Melden Sie sich bei Azure mit dem Konto mit der Rolle SQL Security Manager an. Weitere Informationen über das Verwalten der reinen Microsoft Entra-Authentifizierung mithilfe von APIs finden Sie unter Verwalten der reinen Microsoft Entra-Authentifizierung mithilfe von APIs.
az login
Führen Sie den folgenden Befehl aus, und ersetzen Sie dabei <myserver>
durch ihren SQL-Servernamen und <myresource>
durch Ihre Azure-Ressource, die den SQL-Server enthält.
az sql server ad-only-auth get --resource-group <myresource> --name <myserver>
Die folgende Ausgabe wird angezeigt.
{
"azureAdOnlyAuthentication": true,
"/subscriptions/<guid>/resourceGroups/mygroup/providers/Microsoft.Sql/servers/myserver/azureADOnlyAuthentications/Default",
"name": "Default",
"resourceGroup": "myresource",
"type": "Microsoft.Sql/servers"
}
Überprüfen des Status in SQL Managed Instance
Melden Sie sich bei Azure mit dem Konto mit der Rolle SQL Security Manager an.
az login
Führen Sie den folgenden Befehl aus, und ersetzen Sie dabei <myserver>
durch ihren SQL-Servernamen und <myresource>
durch Ihre Azure-Ressource, die den SQL-Server enthält.
az sql mi ad-only-auth get --resource-group <myresource> --name <myserver>
Die folgende Ausgabe wird angezeigt.
{
"azureAdOnlyAuthentication": true,
"id": "/subscriptions/<guid>/resourceGroups/myresource/providers/Microsoft.Sql/managedInstances/myinstance/azureADOnlyAuthentications/Default",
"name": "Default",
"resourceGroup": "myresource",
"type": "Microsoft.Sql/managedInstances"
}
Mit diesen Befehlen kann überprüft werden, ob die reine Microsoft Entra-Authentifizierung für den logischen Server für Azure SQL-Datenbank oder SQL Managed Instance aktiviert ist. Mitglieder der Rollen SQL Server-Mitwirkender und SQL Managed Instance-Mitwirkender können diese Befehle verwenden, um den Status der reinen Microsoft Entra-Authentifizierung zu überprüfen. Sie können das Feature allerdings nicht aktivieren oder deaktivieren.
Der Status gibt True zurück, wenn die Funktion aktiviert ist, und False, wenn sie deaktiviert ist.
Überprüfen des Status in SQL-Datenbank
Melden Sie sich bei Azure mit dem Konto mit der Rolle SQL Security Manager an. Weitere Informationen über das Verwalten der reinen Microsoft Entra-Authentifizierung mithilfe von APIs finden Sie unter Verwalten der reinen Microsoft Entra-Authentifizierung mithilfe von APIs.
Connect-AzAccount
Führen Sie den folgenden Befehl aus, und ersetzen Sie dabei <myserver>
durch ihren SQL-Servernamen und <myresource>
durch Ihre Azure-Ressource, die den SQL-Server enthält.
Get-AzSqlServerActiveDirectoryOnlyAuthentication -ServerName <myserver> -ResourceGroupName <myresource>
Überprüfen des Status in SQL Managed Instance
Melden Sie sich bei Azure mit dem Konto mit der Rolle SQL Security Manager an.
Connect-AzAccount
Führen Sie den folgenden Befehl aus, und ersetzen Sie dabei <myinstance>
durch den Namen Ihrer SQL Managed Instance-Instanz und <myresource>
durch Ihre Azure-Ressource, die die SQL Managed Instance-Instanz enthält.
Get-AzSqlInstanceActiveDirectoryOnlyAuthentication -InstanceName <myinstance> -ResourceGroupName <myresource>
Testen der SQL-Authentifizierung mit Verbindungsfehler
Nachdem Sie die reine Microsoft Entra-Authentifizierung aktiviert haben, testen Sie mithilfe von SQL Server Management Studio (SSMS), ob Sie eine Verbindung mit Ihrer SQL-Datenbank oder SQL Managed Instance herstellen können. Verwenden Sie die SQL-Authentifizierung für die Verbindung.
Es wird in etwa folgende „Anmeldung fehlgeschlagen“-Meldung angezeigt:
Cannot connect to <myserver>.database.windows.net.
Additional information:
Login failed for user 'username'. Reason: Azure Active Directory only authentication is enabled.
Please contact your system administrator. (Microsoft SQL Server, Error: 18456)
Deaktivieren der reinen Microsoft Entra-Authentifizierung
Wenn Sie die reine Microsoft Entra-Authentifizierung deaktivieren, ermöglichen Sie sowohl die SQL-Authentifizierung als auch die Microsoft Entra-Authentifizierung für Azure SQL.
Deaktivierung in SQL-Datenbank mithilfe des Azure-Portals
- Melden Sie sich mit dem Benutzer mit der zugewiesenen Rolle SQL Security Manager im Azure-Portal an.
- Wechseln Sie zu Ihrer SQL Server-Ressource, und wählen Sie im Menü Einstellungen die Option Microsoft Entra ID aus.
- Deaktivieren Sie das Kontrollkästchen Nur Microsoft Entra-Authentifizierung für diesen Server unterstützen, und speichern Sie die Einstellung, um die reine Microsoft Entra-Authentifizierung zu deaktivieren.
Deaktivierung in SQL Managed Instance mithilfe des Azure-Portals
- Melden Sie sich mit dem Benutzer mit der zugewiesenen Rolle SQL Security Manager im Azure-Portal an.
- Wechseln Sie zu Ihrer SQL Managed Instance-Ressource, und wählen Sie im Menü Einstellungen die Option Active Directory-Administrator aus.
- Deaktivieren Sie das Kontrollkästchen Nur Microsoft Entra-Authentifizierung für diese verwaltete Instanz unterstützen, und speichern Sie die Einstellung, um die reine Microsoft Entra-Authentifizierung zu deaktivieren.
Deaktivieren in der SQL-Datenbank mithilfe von Azure CLI
Verwenden Sie die folgenden Befehle, um die reine Microsoft Entra-Authentifizierung in Azure SQL-Datenbank mithilfe von Azure CLI zu deaktivieren.
Melden Sie sich bei Azure mit dem Konto mit der Rolle SQL Security Manager an.
az login
Führen Sie den folgenden Befehl aus, und ersetzen Sie dabei <myserver>
durch ihren SQL-Servernamen und <myresource>
durch Ihre Azure-Ressource, die den SQL-Server enthält.
az sql server ad-only-auth disable --resource-group <myresource> --name <myserver>
Nachdem Sie die reine Microsoft Entra-Authentifizierung deaktiviert haben, sollte beim Überprüfen des Status die folgende Ausgabe angezeigt werden:
{
"azureAdOnlyAuthentication": false,
"/subscriptions/<guid>/resourceGroups/mygroup/providers/Microsoft.Sql/servers/myserver/azureADOnlyAuthentications/Default",
"name": "Default",
"resourceGroup": "myresource",
"type": "Microsoft.Sql/servers"
}
Deaktivieren in SQL Managed Instance mithilfe von Azure CLI
Verwenden Sie die folgenden Befehle, um die reine Microsoft Entra-Authentifizierung in Azure SQL Managed Instance mithilfe von Azure CLI zu deaktivieren.
Melden Sie sich bei Azure mit dem Konto mit der Rolle SQL Security Manager an.
az login
Führen Sie den folgenden Befehl aus, und ersetzen Sie dabei <myserver>
durch ihren SQL-Servernamen und <myresource>
durch Ihre Azure-Ressource, die den SQL-Server enthält.
az sql mi ad-only-auth disable --resource-group <myresource> --name <myserver>
Nachdem Sie die reine Microsoft Entra-Authentifizierung deaktiviert haben, sollte beim Überprüfen des Status die folgende Ausgabe angezeigt werden:
{
"azureAdOnlyAuthentication": false,
"id": "/subscriptions/<guid>/resourceGroups/myresource/providers/Microsoft.Sql/managedInstances/myinstance/azureADOnlyAuthentications/Default",
"name": "Default",
"resourceGroup": "myresource",
"type": "Microsoft.Sql/managedInstances"
}
Deaktivieren in der SQL-Datenbank mithilfe von PowerShell
Verwenden Sie die folgenden Befehle, um die reine Microsoft Entra-Authentifizierung in Azure SQL-Datenbank mithilfe von PowerShell zu deaktivieren.
Melden Sie sich bei Azure mit dem Konto mit der Rolle SQL Security Manager an.
Connect-AzAccount
Führen Sie den folgenden Befehl aus, und ersetzen Sie dabei <myserver>
durch ihren SQL-Servernamen und <myresource>
durch Ihre Azure-Ressource, die den SQL-Server enthält.
Disable-AzSqlServerActiveDirectoryOnlyAuthentication -ServerName <myserver> -ResourceGroupName <myresource>
Deaktivieren in SQL Managed Instance mithilfe von PowerShell
Verwenden Sie die folgenden Befehle, um die reine Microsoft Entra-Authentifizierung in Azure SQL Managed Instance mithilfe von PowerShell zu deaktivieren.
Melden Sie sich bei Azure mit dem Konto mit der Rolle SQL Security Manager an.
Connect-AzAccount
Führen Sie den folgenden Befehl aus, und ersetzen Sie dabei <myinstance>
durch den Namen Ihrer SQL Managed Instance-Instanz und <myresource>
durch Ihre Azure-Ressource, die die verwaltete Instanz enthält.
Disable-AzSqlInstanceActiveDirectoryOnlyAuthentication -InstanceName <myinstance> -ResourceGroupName <myresource>
Wiederholtes Testen der Verbindung mit Azure SQL-DB
Nachdem Sie die reine Microsoft Entra-Authentifizierung deaktiviert haben, testen Sie, ob Sie über die Anmeldedaten für die SQL-Authentifizierung eine Verbindung herstellen können. Sie sollten nun eine Verbindung mit Ihrem Server oder Ihrer Instanz herstellen können.