Set user roles for a customer (Configurar los roles de usuario de un cliente)

Dentro de una cuenta de cliente, hay un conjunto de roles de directorio. Puede asignar cuentas de usuario a esos roles.

Requisitos previos

  • Credenciales tal como se describen en el artículo Autenticación del Centro de partners. Este escenario admite la autenticación solo con credenciales de aplicación y usuario.

  • Un id. de cliente (customer-tenant-id). Si no conoce el identificador del cliente, puede buscarlo en el Centro de partners seleccionando el área de trabajo Clientes , luego el cliente de la lista de clientes y, a continuación , Cuenta. En la página Cuenta del cliente, busque el identificador de Microsoft en la sección Información de la cuenta de cliente. El id. de Microsoft es el mismo que el de cliente (customer-tenant-id).

Roles de GDAP

Necesitará en el siguiente rol de GDAP:

  • Administrador de roles con privilegios

C#

Para asignar un rol de directorio a un usuario cliente, cree un nuevo UserMember con los detalles de usuario pertinentes. A continuación, llame al método IAggregatePartner.Customers.ById con el identificador de cliente especificado para identificar al cliente. Desde allí, use el método DirectoryRoles.ById con el identificador de rol de directorio para especificar el rol. A continuación, acceda a la colección UserMembers y use el método Create para agregar el nuevo miembro de usuario a la colección de miembros de usuario asignados a ese rol.

// 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);

Ejemplo: Aplicación de prueba de consola. Project: Partner Center SDK Samples Class: AddUserMemberToDirectoryRole.cs

Solicitud REST

Sintaxis de la solicitud

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

Parámetro de URI

Para identificar el cliente y el rol correctos, use los parámetros URI siguientes. Para identificar al usuario al que asignar el rol, proporcione la información de identificación en el cuerpo de la solicitud.

Nombre Tipo Obligatorio Descripción
customer-tenant-id guid Y El valor es un GUID con formato customer-tenant-id que permite al revendedor filtrar los resultados de un cliente determinado que pertenece al revendedor.
role-id guid Y El valor es un identificador de rol con formato GUID que identifica el rol que se va a asignar al usuario.

Encabezados de solicitud

Para obtener más información, consulta Encabezados REST del Centro de partners.

Cuerpo de la solicitud

En esta tabla se describen las propiedades necesarias en el cuerpo de la solicitud.

Nombre Tipo Obligatorio Descripción
Id string Y Identificador del usuario que se va a agregar al rol.
DisplayName string Y Nombre para mostrar descriptivo del usuario.
UserPrincipalName string Y El nombre de la entidad de seguridad de usuario.
Atributos object Y Contiene "ObjectType":"UserMember"

Ejemplo de solicitud

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"
    }
}

Respuesta REST

Este método devuelve la cuenta de usuario con el identificador de rol adjunto cuando el usuario tiene asignado correctamente el rol.

Códigos de error y de respuesta correctos

Cada respuesta incluye un código de estado HTTP que indica si la operación se ha realizado correctamente o con errores y proporciona información de depuración adicional. Use una herramienta de seguimiento de red para leer este código, el tipo de error y los parámetros adicionales. Para obtener la lista completa, consulta Códigos de error de REST del Centro de partners.

Ejemplo de respuesta

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"
    }
}