Définir des rôles d’utilisateur pour un client

Dans un compte client, il existe un ensemble de rôles d’annuaire. Vous pouvez affecter des comptes d’utilisateur à ces rôles.

Prerequisites

  • Informations d’identification, comme décrit dans Authentification auprès de l’Espace partenaires. Ce scénario prend en charge l’authentification avec les informations d’identification de l’application et de l’utilisateur uniquement.

  • ID du client (customer-tenant-id). Si vous ne connaissez pas l’ID du client, vous pouvez le rechercher dans l’Espace de partenaires en sélectionnant l’espace de travail Clients, puis le client dans la liste des clients, puis compte. Dans la page Compte du client, recherchez l’ID Microsoft dans la section Informations sur le compte client. L’ID Microsoft est le même que l’ID de client (customer-tenant-id).

Rôles GDAP

Vous aurez besoin du rôle GDAP suivant :

  • Administrateur de rôle privilégié

C#

Pour attribuer un rôle d’annuaire à un utilisateur client, créez un UtilisateurMember avec les détails de l’utilisateur appropriés. Ensuite, appelez la méthode IAggregatePartner.Customers.ById avec l’ID client spécifié pour identifier le client. À partir de là, utilisez la méthode DirectoryRoles.ById avec l’ID de rôle d’annuaire pour spécifier le rôle. Ensuite, accédez à la collection UserMembers et utilisez la méthode Create pour ajouter le nouveau membre utilisateur à la collection de membres utilisateur affectés à ce rôle.

// UserMember createdUser;
// IAggregatePartner partnerOperations;
// Customer selectedCustomer;
// IDirectoryRole selectedRole;

// Create the new user member.
UserMember userMemberToAdd = new UserMember()
{
    UserPrincipalName = createdUser.UserPrincipalName,
    DisplayName = createdUser.DisplayName,
    Id = createdUser.Id
};

// Add the new user member to the role.
var userMemberAdded = partnerOperations.Customers.ById(selectedCustomer.Id).DirectoryRoles.ById(selectedRole.Id).UserMembers.Create(userMemberToAdd);

Exemple : Application de test de console. Projet : Classe d’exemples sdk de l’Espace partenaires : AddUserMemberToDirectoryRole.cs

Demande REST

Syntaxe de la requête

Method URI de demande
POST {baseURL}/v1/customers/{customer-tenant-id}/directoryroles/{role-ID}/usermembers HTTP/1.1

Paramètre d’URI

Pour identifier le rôle et le client appropriés, utilisez les paramètres d’URI suivants. Pour identifier l’utilisateur auquel attribuer le rôle, fournissez les informations d’identification dans le corps de la demande.

Nom Type Obligatoire Description
id-locataire-client guid O La valeur est un ID client au format GUID qui permet au revendeur de filtrer les résultats d’un client donné qui appartient au revendeur.
role-id guid O La valeur est un ID de rôle au format GUID qui identifie le rôle à affecter à l’utilisateur.

En-têtes de demande

Pour plus d’informations, consultez En-têtes REST de l’Espace Partenaires.

Corps de la demande

Ce tableau décrit les propriétés requises dans le corps de la requête.

Nom Type Obligatoire Description
Id string O ID de l’utilisateur à ajouter au rôle.
DisplayName string O Nom complet convivial de l’utilisateur.
UserPrincipalName string O Nom d’utilisateur principal.
Attributs object O Contient " ObjectType »:"UserMember »

Exemple de requête

POST https://api.partnercenter.microsoft.com/v1/customers/4d3cf487-70f4-4e1e-9ff1-b2bfce8d9f04/directoryroles/f023fd81-a637-4b56-95fd-791ac0226033/usermembers HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: a56cb2e5-a156-4f68-9155-57ffe2b93d18
MS-CorrelationId: 90bda268-7929-4ad6-be01-89c5af5fc504
X-Locale: en-US
Content-Type: application/json
Host: api.partnercenter.microsoft.com
Content-Length: 180
Expect: 100-continue

{
    "Id": "a9ef48bb-8758-4590-a312-d4a47bfaded4",
    "DisplayName": "Daniel Tsai",
    "UserPrincipalName": "Daniel@dtdemocspcustomer005.onmicrosoft.com",
    "Attributes": {
        "ObjectType": "UserMember"
    }
}

Réponse REST

Cette méthode retourne le compte d’utilisateur avec l’ID de rôle attaché lorsque l’utilisateur a correctement affecté le rôle.

Codes d’erreur et de réussite de la réponse

Chaque réponse est accompagnée d’un code d’état HTTP qui indique la réussite ou l’échec ainsi que des informations de débogage supplémentaires. Utilisez un outil de trace réseau pour lire ce code, le type d’erreur et des paramètres supplémentaires. Pour obtenir la liste complète, consultez Codes d’erreur REST de l’Espace partenaires.

Exemple de réponse

HTTP/1.1 201 Created
Content-Length: 231
Content-Type: application/json; charset=utf-8
MS-CorrelationId: 90bda268-7929-4ad6-be01-89c5af5fc504
MS-RequestId: a56cb2e5-a156-4f68-9155-57ffe2b93d18
MS-CV: aia94+gnrEeQqkGr.0
MS-ServerId: 101112202
Date: Tue, 20 Dec 2016 23:36:55 GMT

{
    "displayName": "Daniel Tsai",
    "userPrincipalName": "Daniel@dtdemocspcustomer005.onmicrosoft.com",
    "roleId": "f023fd81-a637-4b56-95fd-791ac0226033",
    "id": "a9ef48bb-8758-4590-a312-d4a47bfaded4",
    "attributes": {
        "objectType": "UserMember"
    }
}