Partilhar via


Obter funções de utilizador para um cliente

Obtenha uma lista de todas as funções/permissões anexadas a uma conta de usuário. As variações incluem obter uma lista de todas as permissões em todas as contas de usuário para um cliente e obter uma lista de usuários que têm uma determinada função.

Pré-requisitos

  • Credenciais conforme descrito na autenticação do Partner Center. Este cenário suporta autenticação apenas com credenciais App+User.

  • Um ID de cliente (customer-tenant-id). Se não souber o ID do cliente, pode procurá-lo no Partner Center selecionando a área de trabalho Clientes e, em seguida, o cliente na lista de clientes e, em seguida, Conta. Na página Conta do cliente, procure a ID da Microsoft na seção Informações da Conta do Cliente. A ID da Microsoft é a mesma que a ID do cliente (customer-tenant-id).

Funções GDAP

Você precisará de pelo menos uma das seguintes funções GDAP:

  • Leitor de Diretórios
  • Leitor global
  • Administrador de Utilizadores
  • Administrador de Funções com Privilégios
  • Escritores de Diretórios

C#

Para recuperar todas as funções de diretório para um cliente especificado, primeiro recupere o ID do cliente especificado. Em seguida, use sua coleção IAggregatePartner.Customers e chame o método ById(). Em seguida, chame a propriedade DirectoryRoles, seguida pelo método Get() ou GetAsync().

// string selectedCustomerId;
// IAggregatePartner partnerOperations;

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

Exemplo: Aplicativo de teste de console. Projeto: Exemplo de SDK do Partner Center Classe: GetCustomerDirectoryRoles.cs

Para recuperar uma lista de usuários clientes que têm uma determinada função, primeiro recupere o ID do cliente especificado e o ID da função de diretório. Em seguida, use sua coleção IAggregatePartner.Customers e chame o método ById(). Em seguida, chame a propriedade DirectoryRoles, depois o método ById(), depois a propriedade UserMembers, seguido pelo método Get() ou GetAsync().

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

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

Exemplo: Aplicativo de teste de console. Projeto: PartnerSDK.FeatureSamples Classe: GetCustomerDirectoryRoleUserMembers.cs

Pedido REST

Sintaxe da solicitação

Método URI do pedido
GET {baseURL}/v1/customers/{customer-tenant-id}/users/{user-id}/directoryroles HTTP/1.1
GET {baseURL}/v1/customers/{customer-tenant-id}/directoryroles HTTP/1.1
GET {baseURL}/v1/customers/{customer-tenant-id}/directoryroles/{role-ID}/usermembers

Parâmetro URI

Use o parâmetro de consulta a seguir para identificar o cliente correto.

Nome Type Obrigatório Descrição
ID do cliente-locatário GUID Y O valor é um ID de cliente-locatário formatado em GUID que permite ao revendedor filtrar os resultados de um determinado cliente que pertence ao revendedor.
ID de utilizador GUID N O valor é um ID de usuário formatado em GUID que pertence a uma única conta de usuário.
ID da função GUID N O valor é um ID de função formatado em GUID que pertence a um tipo de função. Você pode obter essas IDs consultando todas as funções de diretório de um cliente, em todas as contas de usuário. (O segundo cenário, acima).

Cabeçalhos do pedido

Para obter mais informações, consulte Cabeçalhos REST do Partner Center.

Corpo do pedido

Exemplo de solicitação

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: aaaa0000-bb11-2222-33cc-444444dddddd

Resposta do REST

Se for bem-sucedido, esse método retornará uma lista das funções associadas à conta de usuário fornecida.

Códigos de sucesso e erro de resposta

Cada resposta vem com um código de status HTTP que indica sucesso ou falha e informações adicionais de depuração. Use uma ferramenta de rastreamento de rede para ler esse código, tipo de erro e parâmetros adicionais. Para obter a lista completa, consulte Códigos de erro.

Exemplo de resposta

HTTP/1.1 200 OK
Content-Length: 31942
Content-Type: application/json
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
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" }
}