Obter as funções de usuário para um clienteGet user roles for a customer

Aplica-se aApplies To

  • Partner CenterPartner Center

Obter uma lista de todas as funções/permissões anexadas a uma conta de usuário.Get a list of all the roles/permissions attached to a user account. As variações incluem obter uma lista de todas as permissões em todas as contas de usuário de um cliente e obter uma lista de usuários que têm uma determinada função.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.

Pré-requisitosPrerequisites

  • Credenciais, conforme descrito em Autenticação do Partner Center.Credentials as described in Partner Center authentication. Este cenário dá suporte somente à autenticação com credenciais de aplicativo + de usuário.This scenario supports authentication with App+User credentials only.

  • Uma ID do cliente (customer-tenant-id).A customer ID (customer-tenant-id). Se você não souber a ID do cliente, poderá procurar no painel do Partner Center.If you don't know the customer's ID, you can look it up in the Partner Center dashboard. Selecione CSP no menu do Partner Center e, em seguida, Clientes.Select CSP from the Partner Center menu, followed by Customers. Selecione o cliente na lista de clientes e selecione Conta.Select the customer from the customer list, then select Account. Na página Conta do cliente, procure a ID da Microsoft na seção Informações da Conta do Cliente.On the customer’s Account page, look for the Microsoft ID in the Customer Account Info section. A ID da Microsoft é igual à ID do cliente (customer-tenant-id).The Microsoft ID is the same as the customer ID (customer-tenant-id).

C#C#

Para recuperar todas as funções de diretório para um cliente especificado, primeiro recupere a ID de cliente especificada.To retrieve all the directory roles for a specified customer, first retrieve the specified customer ID. Em seguida, use a coleção IAggregatePartner. Customers e chame o método ById () .Then, use your IAggregatePartner.Customers collection and call the ById() method. Em seguida, chame a propriedade DirectoryRoles , seguida pelo método Get () ou 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();

Exemplo: aplicativo de teste do console.Sample: Console test app. Projeto: classede exemplos do SDK do Partner Center: GetCustomerDirectoryRoles.csProject: Partner Center SDK Samples Class: GetCustomerDirectoryRoles.cs

Para recuperar uma lista de usuários de clientes que têm uma determinada função, primeiro recupere a ID de cliente especificada e a ID da função de diretório.To retrieve a list of customer users that have a given role, first retrieve the specified customer ID and the directory role ID. Em seguida, use a coleção IAggregatePartner. Customers e chame o método ById () .Then, use your IAggregatePartner.Customers collection and call the ById() method. Em seguida, chame a propriedade DirectoryRoles , em seguida, o método ById () e, em seguida, a propriedade usermembers , seguida pelo método Get () ou 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();

Exemplo: aplicativo de teste do console.Sample: Console test app. Projeto: classePartnerSDK. FeatureSamples: GetCustomerDirectoryRoleUserMembers.csProject: PartnerSDK.FeatureSamples Class: GetCustomerDirectoryRoleUserMembers.cs

Solicitação RESTREST request

Sintaxe da solicitaçãoRequest syntax

MétodoMethod URI da solicitaçãoRequest 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 do URIURI parameter

Use o parâmetro de consulta a seguir para identificar o cliente correto.Use the following query parameter to identify the correct customer.

NomeName TipoType ObrigatórioRequired DescriçãoDescription
customer-tenant-idcustomer-tenant-id guidguid SY O valor é um GUID formatado Customer-Tenant-ID que permite ao revendedor filtrar os resultados de um determinado cliente que pertence ao revendedor.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.
ID do usuáriouser-id guidguid NN O valor é uma ID de usuário formatada GUID que pertence a uma única conta de usuário.The value is a GUID formatted user-id that belongs to a single user account.
ID da funçãorole-id guidguid NN O valor é uma ID de função formatada pelo GUID que pertence a um tipo de função.The value is a GUID formatted role-id that belongs to a type of role. Você pode obter esses IDs consultando todas as funções de diretório de um cliente, em todas as contas de usuário.You can get these IDs by querying all the directory roles for a customer, across all user accounts. (O segundo cenário, acima).(The second scenario, above).

Cabeçalhos de solicitaçãoRequest headers

Para obter mais informações, confira Cabeçalhos REST do Partner Center.For more information, see Partner Center REST headers.

Corpo da solicitaçãoRequest body

Exemplo de solicitaçãoRequest 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

Resposta RESTREST response

Se for bem-sucedido, esse método retornará uma lista das funções associadas à conta de usuário determinada.If successful, this method returns a list of the roles associated with the given user account.

Códigos de êxito e de erro de respostaResponse success and error codes

Cada resposta vem com um código de status HTTP que indica êxito ou falha e informações de depuração adicionais.Each response comes with an HTTP status code that indicates success or failure and additional debugging information. Use uma ferramenta de rastreamento de rede para ler esse código, o tipo de erro e os parâmetros adicionais.Use a network trace tool to read this code, error type, and additional parameters. Para obter a lista completa, confira Códigos de Erro.For the full list, see Error Codes.

Exemplo de respostaResponse 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" }
}