Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Espace de noms: microsoft.graph
Importante
Les API sous la version /beta dans Microsoft Graph sont susceptibles d’être modifiées. L’utilisation de ces API dans des applications de production n’est pas prise en charge. Pour déterminer si une API est disponible dans v1.0, utilisez le sélecteur Version .
Ajoutez un membre à un groupe de sécurité ou Microsoft 365. Lorsque vous utilisez l’API pour ajouter plusieurs membres en une seule requête, vous pouvez ajouter jusqu’à 20 membres uniquement.
Remarque
Cette demande peut entraîner des retards de réplication pour les groupes récemment créés. Lorsqu’un groupe est créé, la réplication complète de l’objet sur les réplicas de répertoire Microsoft Entra ID peut prendre un court laps de temps. Pendant cette fenêtre, les demandes d’ajout de membres au groupe peuvent retourner une 400 Bad Request erreur avec le message : « L’objet de ressource source ou l’un des objets référencés n’existe pas ».
Pour atténuer ce comportement :
- Réessayez après un bref délai . Attendez quelques secondes et relancez la demande. Le délai est généralement bref.
Pour plus d’informations, consultez Conception pour la cohérence éventuelle de Microsoft Entra.
Le tableau suivant présente les types de membres qui peuvent être ajoutés à des groupes de sécurité ou à des groupes Microsoft 365.
| Type d’objet | Membre du groupe de sécurité | Membre du groupe Microsoft 365 |
|---|---|---|
| Utilisateur |
|
|
| Groupe de sécurité |
|
|
| Groupe Microsoft 365 |
|
|
| Appareil |
|
|
| Principal de service |
|
|
| Contact de l’organisation |
|
|
Cette API est disponible dans les déploiements cloud nationaux suivants.
| Service global | Gouvernement américain L4 | Gouvernement américain L5 (DOD) | Chine exploitée par 21Vianet |
|---|---|---|---|
| ✅ | ✅ | ✅ | ✅ |
Autorisations
Le tableau suivant indique l’autorisation de moindre privilège requise pour chaque type de ressource lors de l’appel de cette API. Pour plus d’informations, notamment sur la façon de choisir les autorisations, voir Autorisations.
| Ressource prise en charge | Déléguée (compte professionnel ou scolaire) | Déléguée (compte Microsoft personnel) | Application |
|---|---|---|---|
| appareil | GroupMember.ReadWrite.All et Device.Read.All | Non prise en charge. | GroupMember.ReadWrite.All et Device.ReadWrite.All |
| groupe | GroupMember.ReadWrite.All | Non prise en charge. | GroupMember.ReadWrite.All |
| orgContact | GroupMember.ReadWrite.All et OrgContact.Read.All | Non prise en charge. | GroupMember.ReadWrite.All et OrgContact.Read.All |
| servicePrincipal | GroupMember.ReadWrite.All et Application.ReadWrite.All | Non prise en charge. | GroupMember.ReadWrite.All et Application.ReadWrite.All |
| utilisateur | GroupMember.ReadWrite.All | Non prise en charge. | GroupMember.ReadWrite.All |
Importante
Dans les scénarios délégués, un rôle Microsoft Entra pris en charge ou un rôle personnalisé doit également être affecté à l’utilisateur connecté avec l’autorisation de microsoft.directory/groups/members/update rôle. Les rôles suivants sont les rôles les moins privilégiés pris en charge pour cette opération, à l’exception des groupes assignables à des rôles :
- Propriétaires du groupe
- Rédacteurs d'annuaires
- Administrateur de groupes
- Administrateur de gouvernance des identités
- Administrateur d’utilisateurs
- Administrateur Exchange - uniquement pour les groupes Microsoft 365
- Administrateur SharePoint - uniquement pour les groupes Microsoft 365
- Administrateur Teams - uniquement pour les groupes Microsoft 365
- Administrateur Yammer - uniquement pour les groupes Microsoft 365
- Administrateur Intune - uniquement pour les groupes de sécurité
Pour ajouter des membres à un groupe assignable à un rôle, l’application doit également disposer de l’autorisation RoleManagement.ReadWrite.Directory et l’utilisateur appelant doit disposer d’un rôle Microsoft Entra pris en charge. L’administrateur de rôle privilégié est le rôle le moins privilégié pris en charge pour cette opération.
Requête HTTP
POST /groups/{group-id}/members/$ref
PATCH /groups/{group-id}
En-têtes de demande
| Nom | Description |
|---|---|
| Autorisation | Porteur {token}. Obligatoire. En savoir plus sur l’authentification et les autorisations. |
| Content-type | application/json. Obligatoire. |
Corps de la demande
Lors de l’utilisation de la POST /groups/{group-id}/members/$ref syntaxe, fournissez un objet JSON contenant une propriété @odata.id avec une référence par ID à un type d’objet membre du groupe pris en charge.
Lors de l’utilisation de la PATCH /groups/{group-id} syntaxe, fournissez un objet JSON qui contient une members@odata.bind propriété avec une ou plusieurs références par ID à un type d’objet membre du groupe pris en charge. C’est-à-dire :
- Pour les groupes Microsoft 365, seul
https://graph.microsoft.com/v1.0/directoryObjects/{id}ethttps://graph.microsoft.com/v1.0/groups/{id}est autorisé où{id}doit être un utilisateur, car seuls les utilisateurs peuvent être membres de groupes Microsoft 365. - Pour les groupes de sécurité, les références d’ID suivantes sont autorisées :
-
https://graph.microsoft.com/v1.0/directoryObjects/{id}où{id}doit appartenir à un utilisateur, un groupe de sécurité, un appareil, un principal de service ou un contact organisationnel. -
https://graph.microsoft.com/v1.0/groups/{id}où{id}doit appartenir à un autre groupe de sécurité. Les groupes Microsoft 365 ne peuvent pas être membres des groupes de sécurité. -
https://graph.microsoft.com/v1.0/devices/{id}où{id}appartient à un appareil. -
https://graph.microsoft.com/v1.0/servicePrincipal/{id}où{id}appartient à un principal du service. -
https://graph.microsoft.com/v1.0/orgContact/{id}où{id}appartient à un contact d’organisation.
-
Réponse
Si elle réussit, cette méthode renvoie un code de réponse 204 No Content. Il renvoie un 400 Bad Request code de réponse lorsque l’objet est déjà membre du groupe, n’est pas pris en charge en tant que membre du groupe, ou lorsque le groupe a été récemment créé et n’a pas entièrement répliqué (message d’erreur : « L’objet de ressource source ou l’un des objets référencés n’existe pas. » — réessayez après un bref délai). Il renvoie un 404 Not Found code de réponse lorsque l’objet ajouté n’existe pas. Elle retourne 403 Forbidden dans l’un des scénarios suivants :
- Vous essayez d’ajouter un membre à un groupe qui ne peut pas être géré via Microsoft Graph. Cette API prend uniquement en charge la sécurité et les groupes Microsoft 365.
- Vous essayez d’ajouter un membre que vous n’êtes pas autorisé à ajouter. Reportez-vous à la section précédente Autorisations pour connaître les autorisations requises pour ajouter différents types de membres.
- Vous essayez d’ajouter un membre à un groupe assignable à un rôle et vous ne disposez pas des autorisations requises.
Exemple
Exemple 1: Ajouter un membre à un groupe
Demande
L’exemple suivant illustre une requête qui utilise la référence directoryObjects pour ajouter un membre à un groupe.
POST https://graph.microsoft.com/beta/groups/{group-id}/members/$ref
Content-type: application/json
{
"@odata.id": "https://graph.microsoft.com/beta/directoryObjects/{id}"
}
Réponse
L’exemple suivant illustre la réponse.
HTTP/1.1 204 No Content
Exemple 2 : Ajouter plusieurs membres à un groupe dans une seule demande
Cet exemple montre comment ajouter plusieurs membres à un groupe avec le support de la liaison OData dans une opération de correctif. Il est possible d’ajouter jusqu’à 20 membres en une seule requête. Si une condition d’erreur existe dans le corps de la demande, nous n’ajouterons aucun membre et renverrons le code de réponse approprié.
Demande
L’exemple suivant illustre une demande.
PATCH https://graph.microsoft.com/beta/groups/{group-id}
Content-type: application/json
{
"members@odata.bind": [
"https://graph.microsoft.com/beta/directoryObjects/{id}",
"https://graph.microsoft.com/beta/directoryObjects/{id}",
"https://graph.microsoft.com/beta/directoryObjects/{id}"
]
}
Réponse
L’exemple suivant illustre la réponse.
HTTP/1.1 204 No Content