Partager via


Tutoriel : attribuer le rôle de lecteurs de répertoire à un groupe Microsoft Entra et gérer les attributions de rôles

S’applique à : Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics

Cet article vous guide tout au long de la création d’un groupe dans Microsoft Entra ID (anciennement Azure Active Directory) et de l’affectation de ce groupe au rôle Lecteurs de répertoire. Les autorisations Lecteurs d’annuaires permettent aux propriétaires de groupe d’ajouter des membres au groupe, par exemple, une identité managée d’Azure SQL Database, Azure SQL Managed Instance et Azure Synapse Analytics. Ainsi, il n’est pas nécessaire qu’un administrateur général ou un administrateur de rôle privilégié attribue le rôle Lecteurs de répertoire directement pour chaque identité de serveur logique Azure SQL dans le locataire.

Remarque

Microsoft Entra ID était précédemment connu sous le nom d’Azure Active Directory (Azure AD).

Ce tutoriel utilise la fonctionnalité présentée dans Utiliser des groupes Microsoft Entra pour gérer les attributions de rôles.

Pour plus d’informations sur les avantages de l’attribution du rôle Lecteurs de répertoire à un groupe Microsoft Entra pour Azure SQL, consultez Rôle de Lecteurs de répertoire dans Microsoft Entra ID pour Azure SQL.

Remarque

Avec la prise en charge Microsoft Graph d’Azure SQL, le rôle Lecteurs d’annuaire peut être remplacé par l’utilisation d’autorisations de niveau inférieur. Pour plus d’informations, consultez Identité managée affectée par l’utilisateur dans Microsoft Entra ID pour Azure SQL.

Prérequis

Attribution du rôle Lecteurs d’annuaires à l’aide du portail Azure

Créer un groupe et affecter des propriétaires et un rôle

  1. Un utilisateur disposant des autorisations Administrateur général ou Administrateur de rôle privilégié est nécessaire pour cette configuration initiale.

  2. En tant qu’utilisateur privilégié, connectez-vous au portail Azure.

  3. Accédez à la ressource Microsoft Entra ID. Sous Géré, accédez à Groupes. Sélectionnez Nouveau groupe pour créer un groupe.

  4. Sélectionnez Sécurité comme type de groupe et renseignez le reste des champs. Assurez-vous que le paramètre stipulant que les Rôles Microsoft Entra peuvent être attribués au groupe est défini sur Oui. Ensuite, affectez au groupe le rôle Microsoft Entra ID Lecteurs de répertoire.

  5. Désignez des utilisateurs Microsoft Entra comme propriétaire(s) du groupe qui a été créé. Un propriétaire de groupe peut être un utilisateur AD ordinaire dépourvu de tout rôle administratif de Microsoft Entra. Le propriétaire doit être un utilisateur qui gère votre instance SQL Database, SQL Managed Instance ou Azure Synapse.

    ID de nouveau groupe Microsoft Entra

  6. Sélectionnez Créer

Vérification du groupe qui a été créé

Notes

Assurez-vous que le Type de groupe est Sécurité. Les groupes Microsoft 365 ne sont pas pris en charge pour Azure SQL.

Pour vérifier et gérer le groupe qui a été créé, revenez au volet Groupes dans le portail Azure et recherchez le nom de votre groupe. Après avoir sélectionné votre groupe, vous pouvez ajouter des propriétaires et des membres sous le menu Propriétaires et Membres du paramètre Gérer. Vous pouvez également consulter les Rôles affectés pour le groupe.

Capture d’écran d’un volet Groupe mettant en évidence les liens ouvrant les menus Paramètres pour Membres, Propriétaires et Rôles affectés.

Ajouter une identité managée Azure SQL au groupe

Notes

Nous utilisons SQL Managed Instance pour cet exemple, mais vous pouvez obtenir les mêmes résultats en suivant des étapes similaires pour SQL Database ou Azure Synapse.

Pour les étapes suivantes, l’utilisateur doté de l’autorisation Administrateur général ou Administrateur de rôle privilégié n’est plus nécessaire.

  1. Connectez-vous au portail Azure en tant qu’utilisateur gérant l’instance SQL Managed Instance, qui est propriétaire du groupe créé.

  2. Recherchez le nom votre ressource SQL Managed Instance dans le portail Azure.

    Capture de l’écran Instances managées SQL avec le nom d’instance SQL ssomitest et le nom de sous-réseau ManagedInstance mis en évidence.

    Pendant l’approvisionnement de SQL Managed Instance, une identité Microsoft Entra est créée pour votre instance, étant inscrite comme application Microsoft Entra. L’identité créée porte le même nom que le préfixe du nom de votre instance SQL Managed Instance. Pour trouver l’identité (aussi appelée principal de service) SQL Managed Instance, suivez ces étapes :

    • Accédez à la ressource Microsoft Entra ID. Sous le paramètre Gérer, sélectionnez Applications d’entreprise. L’ID d’objet est l’identité de l’instance.

    Capture d’écran de la page Applications d’entreprise pour une ressource Microsoft Entra avec l’ID d’objet de l’instance managée SQL mis en évidence.

  3. Accédez à la ressource Microsoft Entra ID. Sous Géré, accédez à Groupes. Sélectionnez le groupe que vous avez créé. Sous le paramètre Géré de votre groupe, sélectionnez Membres. Sélectionnez Ajouter des membres et ajoutez le principal de service de votre instance SQL Managed Instance en tant que membre du groupe en recherchant le nom trouvé ci-dessus.

    Capture d’écran de la page Membres d’une ressource Microsoft Entra avec les options mises en surbrillance pour l’ajout d’une instance managée SQL en tant que nouveau membre.

Remarque

Plusieurs minutes peuvent être nécessaires pour propager les autorisations du principal de service via le système Azure et autoriser l’accès à l’API Microsoft Graph. Vous devrez peut-être patienter quelques minutes avant de provisionner un administrateur Microsoft Entra pour votre instance SQL Managed Instance.

Notes

Pour SQL Database et Azure Synapse, l’identité du serveur peut être obtenue pendant ou après la création du serveur logique. Pour plus d’informations sur la création ou la définition de l’identité de serveur dans une instance SQL Database ou Azure Synapse, consultez Permettre aux principaux de service de créer des utilisateurs Microsoft Entra.

Pour votre instance SQL Managed Instance, vous devez affecter le rôle Lecteurs de répertoire à l’identité de l’instance managée avant de pouvoir configurer un administrateur Microsoft Entra pour l’instance managée.

L’attribution du rôle Lecteurs de répertoire à l’identité du serveur n’est pas nécessaire pour SQL Database ou Azure Synapse lors de la configuration d’un administrateur Microsoft Entra pour le serveur logique. Cependant, pour permettre la création d’un objet Microsoft Entra dans SQL Database ou Azure Synapse pour le compte d’une application Microsoft Entra, le rôle Lecteurs de répertoire est requis. Si le rôle n’est pas attribué à l’identité du serveur logique, la création d’utilisateurs Microsoft Entra dans Azure SQL échouera. Pour plus d’informations, consultez Principal de service Microsoft Entra avec Azure SQL.

Attribution du rôle Lecteurs d’annuaires à l’aide de PowerShell

Important

Un administrateur général ou un administrateur de rôle privilégié doit exécuter ces étapes initiales. En plus de PowerShell, Microsoft Entra ID offre l’API Microsoft Graph pour créer un groupe avec attribution de rôle dans Microsoft Entra ID.

  1. Téléchargez le module PowerShell Microsoft Graph à l’aide des commandes suivantes. Vous devrez peut-être exécuter PowerShell en tant qu’administrateur.

    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. Connecter à votre locataire Microsoft Entra.

    Connect-MgGraph
    
  3. Créez un groupe de sécurité pour affecter le rôle Lecteurs d’annuaires.

    • Vous pouvez changer DirectoryReaderGroup, Directory Reader Groupet DirRead en fonction de vos préférences.
    $group = New-MgGroup -DisplayName "DirectoryReaderGroup" -Description "Directory Reader Group" -SecurityEnabled:$true -IsAssignableToRole:$true -MailEnabled:$false -MailNickname "DirRead"
    $group
    
  4. Attribuer le rôle Lecteurs d’annuaires au groupe.

    # 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. Attribuez des propriétaires au groupe.

    • Remplacez <username> par l’utilisateur qui doit posséder ce groupe. Vous pouvez ajouter plusieurs propriétaires en répétant ces étapes.
    $newGroupOwner = Get-MgUser -UserId "<username>"
    $newGroupOwner
    
    $GrOwner = New-MgGroupOwnerByRef -GroupId $group.Id -DirectoryObjectId $newGroupOwner.Id
    

    Vérifiez les propriétaires du groupe :

    Get-MgGroupOwner -GroupId $group.Id
    

    Vous pouvez également vérifier les propriétaires du groupe dans le portail Azure. Suivez les étapes indiquées dans Vérification du groupe qui a été créé.

Attribution du principal de service en tant que membre du groupe

Pour les étapes suivantes, l’utilisateur doté de l’autorisation Administrateur général ou Administrateur de rôle privilégié n’est plus nécessaire.

  1. À l’aide d’un propriétaire du groupe, qui gère également la ressource Azure SQL, exécutez la commande suivante pour vous connecter à Microsoft Entra ID.

    Connect-MgGraph
    
  2. Attribuez le principal de service en tant que membre du groupe que vous avez créé.

    # 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
    

    La commande suivante retourne l’ID d’objet du principal de service indiquant que ce dernier a été ajouté au groupe :

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

Étapes suivantes