Get user roles for a customer (Obtener los roles de usuario de un cliente)Get user roles for a customer

Se aplica aApplies To

  • Centro de partnersPartner Center

Obtiene una lista de todos los roles y permisos adjuntos a una cuenta de usuario.Get a list of all the roles/permissions attached to a user account. Las variaciones incluyen la obtención de una lista de todos los permisos en todas las cuentas de usuario para un cliente y la obtención de una lista de usuarios que tienen un rol determinado.Variations include getting a list of all permissions across all user accounts for a customer, and getting a list of users that have a given role.

Requisitos previosPrerequisites

  • Credenciales tal como se describen en el artículo Autenticación del Centro de partners.Credentials as described in Partner Center authentication. Este escenario admite la autenticación solo con credenciales de aplicación y usuario.This scenario supports authentication with App+User credentials only.

  • Un id. de cliente (customer-tenant-id).A customer ID (customer-tenant-id). Si no conoces el identificador del cliente, puedes buscarlo en el panel del Centro de partners.If you don't know the customer's ID, you can look it up in the Partner Center dashboard. Selecciona CSP en el menú del Centro de partners, seguido de Clientes.Select CSP from the Partner Center menu, followed by Customers. En la lista de clientes, selecciona el cliente y, a continuación, elige Cuenta.Select the customer from the customer list, then select Account. En la página Cuenta del cliente, busca el Id. de Microsoft en la sección Información de la cuenta del cliente.On the customer’s Account page, look for the Microsoft ID in the Customer Account Info section. El identificador de Microsoft es el mismo que el de cliente (customer-tenant-id).The Microsoft ID is the same as the customer ID (customer-tenant-id).

C#C#

Para recuperar todos los roles de directorio de un cliente especificado, recupere primero el ID. de cliente especificado.To retrieve all the directory roles for a specified customer, first retrieve the specified customer ID. A continuación, use la colección colección iaggregatepartner. customers y llame al método ById () .Then, use your IAggregatePartner.Customers collection and call the ById() method. Después, llame a la propiedad DirectoryRoles , seguido del método get () o GetAsync ().Then call the DirectoryRoles property, followed by the Get() or GetAsync() method.

// string selectedCustomerId;
// IAggregatePartner partnerOperations;

var directoryRoles = partnerOperations.Customers.ById(selectedCustomerId).DirectoryRoles.Get();

Ejemplo: aplicación de prueba de consola.Sample: Console test app. Proyecto: SDK del centro de Partners ( clase): GetCustomerDirectoryRoles.CSProject: Partner Center SDK Samples Class: GetCustomerDirectoryRoles.cs

Para recuperar una lista de usuarios de cliente que tienen un rol determinado, recupere primero el identificador de cliente especificado y el identificador del rol de directorio.To retrieve a list of customer users that have a given role, first retrieve the specified customer ID and the directory role ID. A continuación, use la colección colección iaggregatepartner. customers y llame al método ById () .Then, use your IAggregatePartner.Customers collection and call the ById() method. Después, llame a la propiedad DirectoryRoles , después al método ById () , a continuación a la propiedad UserMembers , seguida del método get () o GetAsync () .Then call the DirectoryRoles property, then ById() method, then the UserMembers property, the followed by the Get() or GetAsync() method.

// string selectedCustomerId;
// IAggregatePartner partnerOperations;
// string selectedDirectoryRoleId;

var userMembers = partnerOperations.Customers.ById(selectedCustomerId).DirectoryRoles.ById(selectedDirectoryRoleId).UserMembers.Get();

Ejemplo: aplicación de prueba de consola.Sample: Console test app. Proyecto: PartnerSDK. FeatureSamples ( clase): GetCustomerDirectoryRoleUserMembers.CSProject: PartnerSDK.FeatureSamples Class: GetCustomerDirectoryRoleUserMembers.cs

Solicitud RESTREST request

Sintaxis de la solicitudRequest syntax

MétodoMethod URI de la solicitudRequest URI
GETGET {baseurl}/v1/customers/{customer-tenant-ID}/users/{User-ID}/directoryroles http/1.1{baseURL}/v1/customers/{customer-tenant-id}/users/{user-id}/directoryroles HTTP/1.1
GETGET {baseurl}/v1/customers/{customer-tenant-ID}/directoryroles http/1.1{baseURL}/v1/customers/{customer-tenant-id}/directoryroles HTTP/1.1
GETGET {baseurl}/v1/customers/{customer-tenant-ID}/directoryroles/{role-ID}/usermembers{baseURL}/v1/customers/{customer-tenant-id}/directoryroles/{role-ID}/usermembers

Parámetro de URIURI parameter

Use el siguiente parámetro de consulta para identificar al cliente correcto.Use the following query parameter to identify the correct customer.

NombreName TipoType ObligatorioRequired DescripciónDescription
customer-tenant-idcustomer-tenant-id guidguid YY El valor es un identificador de inquilino de cliente con formato de GUID que permite que el revendedor filtre los resultados de un determinado cliente que pertenece al distribuidor.The value is a GUID formatted customer-tenant-id that allows the reseller to filter the results for a given customer that belongs to the reseller.
identificador de usuariouser-id guidguid NN El valor es un identificador de usuario con formato GUID que pertenece a una cuenta de usuario único.The value is a GUID formatted user-id that belongs to a single user account.
identificador de rolrole-id guidguid NN El valor es un identificador de rol con formato GUID que pertenece a un tipo de rol.The value is a GUID formatted role-id that belongs to a type of role. Puede obtener estos identificadores si consulta todos los roles de directorio de un cliente a través de todas las cuentas de usuario.You can get these IDs by querying all the directory roles for a customer, across all user accounts. (El segundo escenario, arriba).(The second scenario, above).

Encabezados de solicitudRequest headers

Para obtener más información, consulta Encabezados REST del Centro de partners.For more information, see Partner Center REST headers.

Cuerpo de la solicitudRequest body

Ejemplo de solicitudRequest example

GET https://api.partnercenter.microsoft.com/v1/customers/<customer-tenant-id>/users/<user-id>/directoryroles HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: b1317092-f087-471e-a637-f66523b2b94c
MS-CorrelationId: 8a53b025-d5be-4d98-ab20-229d1813de76

Respuesta RESTREST response

Si es correcto, este método devuelve una lista de los roles asociados a la cuenta de usuario especificada.If successful, this method returns a list of the roles associated with the given user account.

Códigos de error y de respuesta correctosResponse success and error codes

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.Each response comes with an HTTP status code that indicates success or failure and additional debugging information. Use una herramienta de seguimiento de red para leer este código, el tipo de error y los parámetros adicionales.Use a network trace tool to read this code, error type, and additional parameters. Para obtener la lista completa, consulte Códigos de error.For the full list, see Error Codes.

Ejemplo de respuestaResponse example

HTTP/1.1 200 OK
Content-Length: 31942
Content-Type: application/json
MS-CorrelationId: 8a53b025-d5be-4d98-ab20-229d1813de76
MS-RequestId: b1317092-f087-471e-a637-f66523b2b94c
Date: June 24 2016 22:00:25 PST

{
      "totalCount": 2,
      "items": [
        {
          "name": "Helpdesk Administrator",
          "id": "729827e3-9c14-49f7-bb1b-9608f156bbb8",
          "attributes": { "objectType": "DirectoryRole" }
        },
        {
          "name": "User Account Administrator",
          "id": "fe930be7-5e62-47db-91af-98c3a49a38b1",
          "attributes": { "objectType": "DirectoryRole" }
        }
      ],
      "attributes": { "objectType": "Collection" }
}