Teilen über


Tutorial: Zuweisen der Rolle „Verzeichnisleseberechtigte“ zu einer Microsoft Entra-Gruppe und Verwalten von Rollenzuweisungen

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

In diesem Artikel erfahren Sie, wie Sie eine Gruppe in Microsoft Entra ID (früher Azure Active Directory) erstellen und dieser Gruppe die Rolle Verzeichnisleseberechtigte zuweisen. Mit den Berechtigungen vom Typ „Verzeichnisleseberechtigte“ können die Gruppenbesitzer weitere Mitglieder zur Gruppe hinzufügen – beispielsweise eine verwaltete Identität von Azure SQL-Datenbank, Azure SQL Managed Instance und Azure Synapse Analytics. Das bedeutet, die Rolle „Verzeichnisleseberechtigte“ muss nicht mehr von einem Benutzer vom Typ Globaler Administrator oder Administrator für privilegierte Rollen direkt für jede Identität des logischen Servers im Mandanten zugewiesen werden.

Hinweis

Microsoft Entra ID war zuvor als Azure Active Directory (Azure AD) bekannt.

Dieses Tutorial verwendet das Feature, das in Verwenden von Microsoft Entra-Gruppen zum Verwalten von Rollenzuweisungen eingeführt wurde.

Weitere Informationen zu den Vorteilen, die das Zuweisen der Rolle „Verzeichnisleseberechtigte“ zu einer Microsoft Entra-Gruppe für Azure SQL mit sich bringt, finden Sie unter Rolle „Verzeichnisleseberechtigte“ in Microsoft Entra ID für Azure SQL.

Hinweis

Bei Microsoft Graph-Unterstützung für Azure SQL kann die Rolle „Verzeichnisleseberechtigte“ durch die Verwendung von Berechtigungen auf niedrigerer Ebene ersetzt werden. Weitere Informationen finden Sie unter Benutzerseitig zugewiesene verwaltete Identität in Microsoft Entra ID für Azure SQL.

Voraussetzungen

Zuweisen der Rolle „Verzeichnisleseberechtigte“ über das Azure-Portal

Erstellen einer neuen Gruppe und Zuweisen von Besitzern und Rolle

  1. Für diesen ersten Einrichtungsschritt ist ein Benutzer mit Berechtigungen vom Typ Globaler Administrator oder Administrator für privilegierte Rollen erforderlich.

  2. Bitten Sie den privilegierten Benutzer, sich beim Azure-Portal anzumelden.

  3. Gehen Sie zur Microsoft Entra ID-Ressource. Navigieren Sie unter Verwalten zu Gruppen. Wählen Sie Neue Gruppe aus, um eine neue Gruppe zu erstellen.

  4. Wählen Sie als Gruppentyp die Option Sicherheit aus, und füllen Sie die restlichen Felder aus. Achten Sie darauf, dass die Einstellung Microsoft Entra-Rollen können der Gruppe zugewiesen werden auf Ja festgelegt ist. Weisen Sie der Gruppe als Nächstes die Microsoft Entra ID-Rolle Verzeichnisleseberechtigte zu.

  5. Weisen Sie der erstellten Gruppe Microsoft Entra-Benutzer als Besitzer zu. Ein Gruppenbesitzer kann ein regulärer AD-Benutzer ohne Microsoft Entra-Administratorrolle sein. Der Besitzer sollte ein Benutzer sein, der SQL-Datenbank, SQL Managed Instance oder Azure Synapse verwaltet.

    Microsoft Entra ID - neue Gruppe

  6. Klicken Sie auf Erstellen

Überprüfen der erstellten Gruppe

Hinweis

Vergewissern Sie sich, dass der Gruppentyp auf Sicherheit festgelegt ist. Gruppen vom Typ Microsoft 365 werden für Azure SQL nicht unterstützt.

Navigieren Sie zum Überprüfen und Verwalten der erstellten Gruppe im Azure-Portal wieder zum Bereich Gruppen, und suchen Sie nach dem Gruppennamen. Weitere Besitzer und Mitglieder können nach dem Auswählen der Gruppe unter der Einstellung Verwalten über das Menü Besitzer bzw. Mitglieder hinzugefügt werden. Unter Zugewiesene Rollen können Sie außerdem die zugewiesenen Rollen der Gruppe überprüfen.

Screenshot: Gruppenbereich mit den Links, über die die Menüs „Einstellungen“ für die hervorgehobenen Rollen „Mitglieder“, „Besitzer“ und „Zugewiesene Rollen“ geöffnet werden

Hinzufügen einer verwalteten Azure SQL-Identität zur Gruppe

Hinweis

In diesem Beispiel wird SQL Managed Instance verwendet. Für SQL-Datenbank oder Azure Synapse können jedoch mit ähnlichen Schritten die gleichen Ergebnisse erzielt werden.

Für die folgenden Schritte wird der Benutzer vom Typ „Globaler Administrator“ oder „Administrator für privilegierte Rollen“ nicht mehr benötigt.

  1. Melden Sie sich beim Azure-Portal als Benutzer an, der SQL Managed Instance verwaltet und einer der Besitzer der zuvor erstellten Gruppe ist.

  2. Suchen Sie im Azure-Portal nach dem Namen Ihrer Ressource vom Typ SQL Managed Instance.

    Screenshot: Bildschirm der verwalteten SQL-Instanzen, auf dem der Name „ssomitest“ der SQL-Instanz und der Subnetzname „ManagedInstance“ hervorgehoben sind

    Während der Bereitstellung von SQL Managed Instance wird eine Microsoft Entra-Identität für Ihre Instanz erstellt und als Microsoft Entra-Anwendung registriert. Die Identität hat den gleichen Namen wie das Präfix Ihres SQL Managed Instance-Namens. Sie finden die Identität (auch als „Dienstprinzipal“ bezeichnet) für Ihre SQL Managed Instance wie folgt:

    • Gehen Sie zur Microsoft Entra ID-Ressource. Wählen Sie unter der Einstellung Verwalten die Option Unternehmensanwendungen aus. Die Objekt-ID ist die Identität der Instanz.

    Screenshot: Seite „Unternehmensanwendungen“ für eine Microsoft Entra ID-Ressource mit hervorgehobener Objekt-ID der verwalteten SQL-Instanz.

  3. Gehen Sie zur Microsoft Entra ID-Ressource. Navigieren Sie unter Verwalten zu Gruppen. Wählen Sie die von Ihnen erstellte Gruppe aus. Wählen Sie unter der Einstellung Verwalten Ihrer Gruppe die Option Mitglieder aus. Wählen Sie Mitglieder hinzufügen aus, und fügen Sie Ihren SQL Managed Instance-Dienstprinzipal als Gruppenmitglied hinzu, indem Sie nach dem oben gefundenen Namen suchen.

    Screenshot: Seite „Mitglieder“ für eine Microsoft Entra-Ressource mit hervorgehobenen Optionen zum Hinzufügen einer verwalteten SQL-Instanz als neues Mitglied.

Hinweis

Es kann einige Minuten dauern, bis die Berechtigungen des Dienstprinzipals im gesamten Azure-System verteilt wurden und auf die Microsoft Graph-API zugegriffen werden kann. Warten Sie ggf. einige Minuten, bevor Sie einen Microsoft Entra-Administrator für SQL Managed Instance bereitstellen.

Hinweise

Bei SQL-Datenbank und Azure Synapse kann die Serveridentität im Rahmen der Erstellung des logischen Azure SQL-Servers oder nach der Erstellung des Servers erstellt werden. Weitere Informationen zum Erstellen oder Festlegen der Serveridentität in SQL-Datenbank oder Azure Synapse finden Sie unter Aktivieren von Dienstprinzipalen zum Erstellen von Microsoft Entra-Benutzern.

Bei SQL Managed Instance muss die Rolle Verzeichnisleseberechtigte der Identität der verwalteten Instanz zugewiesen werden, damit Sie einen Microsoft Entra-Administrator für die verwaltete Instanz einrichten können.

Bei SQL-Datenbank und Azure Synapse ist die Zuweisung der Rolle Verzeichnisleseberechtigte zur Serveridentität nicht erforderlich, wenn Sie einen Microsoft Entra-Administrator für den logischen Server einrichten. Wenn Sie allerdings die Erstellung eines Microsoft Entra-Objekts in SQL-Datenbank oder Azure Synapse im Auftrag einer Microsoft Entra-Anwendung ermöglichen möchten, ist die Rolle Verzeichnisleseberechtigte erforderlich. Ist die Rolle nicht der Identität des logischen Servers zugewiesen, tritt beim Erstellen von Microsoft Entra-Benutzern in Azure SQL ein Fehler auf. Weitere Informationen finden Sie unter Microsoft Entra-Dienstprinzipal mit Azure SQL.

Zuweisen der Rolle „Verzeichnisleseberechtigte“ mithilfe von PowerShell

Wichtig

Diese ersten Schritte müssen von einem Benutzer vom Typ Globaler Administrator oder Administrator für privilegierte Rollen ausgeführt werden. Neben PowerShell bietet Microsoft Entra ID die Microsoft Graph-API zum Erstellen einer Gruppe, der Rollen zugewiesen werden können, in Microsoft Entra ID.

  1. Laden Sie das Microsoft Graph PowerShell-Modul mithilfe der folgenden Befehle herunter. PowerShell muss ggf. mit Administratorrechten ausgeführt werden.

    Install-Module Microsoft.Graph.Authentication
    Import-Module Microsoft.Graph.Authentication
    # To verify that the module is ready to use, run the following command:
    Get-Module Microsoft.Graph.Authentication
    
  2. Stellen Sie eine Verbindung zu Ihrem Microsoft Entra-Mandanten her.

    Connect-MgGraph
    
  3. Erstellen Sie eine Sicherheitsgruppe, um die Rolle Verzeichnisleseberechtigte zuzuweisen.

    • DirectoryReaderGroup, Directory Reader Group und DirRead können nach Belieben geändert werden.
    $group = New-MgGroup -DisplayName "DirectoryReaderGroup" -Description "Directory Reader Group" -SecurityEnabled:$true -IsAssignableToRole:$true -MailEnabled:$false -MailNickname "DirRead"
    $group
    
  4. Weisen Sie der Gruppe die Rolle Verzeichnisleseberechtigte zu.

    # Displays the Directory Readers role information
    $roleDefinition = Get-MgRoleManagementDirectoryRoleDefinition -Filter "DisplayName eq 'Directory Readers'"
    $roleDefinition
    
    # Assigns the Directory Readers role to the group
    $roleAssignment = New-MgRoleManagementDirectoryRoleAssignment -DirectoryScopeId '/' -RoleDefinitionId $roleDefinition.Id -PrincipalId $group.Id
    $roleAssignment
    
  5. Weisen Sie der Gruppe Besitzer zu.

    • Ersetzen Sie <username> durch den Benutzer, der als Besitzer dieser Gruppe fungieren soll. Falls Sie mehrere Besitzer hinzufügen möchten, können Sie diese Schritte wiederholen.
    $newGroupOwner = Get-MgUser -UserId "<username>"
    $newGroupOwner
    
    $GrOwner = New-MgGroupOwnerByRef -GroupId $group.Id -DirectoryObjectId $newGroupOwner.Id
    

    Besitzer der Gruppe überprüfen:

    Get-MgGroupOwner -GroupId $group.Id
    

    Die Besitzer der Gruppe können auch im Azure-Portal überprüft werden. Gehen Sie dazu wie unter Überprüfen der erstellten Gruppe beschrieben vor.

Zuweisen des Dienstprinzipals als Mitglied der Gruppe

Für die folgenden Schritte wird der Benutzer vom Typ „Globaler Administrator“ oder „Administrator für privilegierte Rollen“ nicht mehr benötigt.

  1. Führen Sie als Besitzer der Gruppe, der auch die Azure SQL-Ressource verwaltet, den folgenden Befehl aus, um eine Verbindung mit Microsoft Entra ID herzustellen.

    Connect-MgGraph
    
  2. Weisen Sie den Dienstprinzipal als Mitglied der erstellten Gruppe zu.

    # Returns the service principal of your Azure SQL resource
    $managedIdentity = Get-MgServicePrincipal -Filter "displayName eq '<ServerName>'"
    $managedIdentity
    
    # Adds the service principal to the group
    New-MgGroupMember -GroupId $group.Id -DirectoryObjectId $managedIdentity.Id
    

    Der folgende Befehl gibt die Objekt-ID des Dienstprinzipals zurück, was bedeutet, dass er der Gruppe hinzugefügt wurde:

    Get-MgGroupMember -GroupId $group.Id -Filter "Id eq '$($managedIdentity.Id)'"
    

Nächste Schritte