Listar as associações de um utilizador (direta e transitiva)

Namespace: microsoft.graph

Obtenha grupos, funções de diretório e unidades administrativas dos quais o utilizador seja membro através de associações diretas ou transitivas.

Esta API está disponível nas seguintes implementações de cloud nacionais.

Serviço global US Government L4 US Government L5 (DOD) China operada pela 21Vianet

Permissões

Escolha a permissão ou permissões marcadas como menos privilegiadas para esta API. Utilize uma permissão ou permissões com privilégios mais elevados apenas se a sua aplicação o exigir. Para obter detalhes sobre as permissões delegadas e de aplicação, veja Tipos de permissão. Para saber mais sobre estas permissões, veja a referência de permissões.

Permissões para as associações do utilizador com sessão iniciada

Tipo de permissão Permissões com menos privilégios Permissões com privilégios superiores
Delegado (conta corporativa ou de estudante) User.Read Directory.Read.All, Directory.ReadWrite.All, Group.Read.All, GroupMember.Read.All, User.Read.All
Delegado (conta pessoal da Microsoft) Sem suporte. Sem suporte.
Aplicativo Sem suporte. Sem suporte.

Permissões para associações de outro utilizador

Tipo de permissão Permissões com menos privilégios Permissões com privilégios superiores
Delegado (conta corporativa ou de estudante) User.Read.All Directory.Read.All, Directory.ReadWrite.All, Group.Read.All, GroupMember.Read.All
Delegado (conta pessoal da Microsoft) Sem suporte. Sem suporte.
Aplicativo User.Read.All Directory.Read.All, Directory.ReadWrite.All, Group.Read.All, GroupMember.Read.All

Importante

Quando uma aplicação consulta uma relação que devolve uma coleção de tipo directoryObject , se não tiver permissão para ler um determinado tipo de recurso, os membros desse tipo são devolvidos, mas com informações limitadas. Por exemplo, apenas a propriedade @odata.type para o tipo de objeto e o ID é devolvido, enquanto outras propriedades são indicadas como null. Com este comportamento, as aplicações podem pedir as permissões menos privilegiadas de que precisam, em vez de dependerem do conjunto de Diretórios.* permissões. Para obter mais detalhes, confira Informações limitadas retornadas para objetos membro inacessíveis.

Dica

  • Chamar o ponto de extremidade /me/transitiveMemberOf exige um usuário conectado e, portanto, uma permissão delegada. As permissões de aplicação não são suportadas quando utiliza o /me/transitiveMemberOf ponto final.
  • Para listar os membros de um grupo com associação oculta, é necessária a Member.Read.Hidden permissão.

Solicitação HTTP

GET /me/transitiveMemberOf
GET /users/{id | userPrincipalName}/transitiveMemberOf

Parâmetros de consulta opcionais

Este método dá suporte a Parâmetros de consulta OData para ajudar a personalizar a resposta, incluindo $select, $search, e $count. O cast OData também está ativado, por exemplo, pode ser lançado para obter apenas a associação transitiva em grupos. Você pode usar $searchna propriedadedisplayName. Os tamanhos de página predefinidos e máximos são 100 e 999 objetos, respetivamente.

Cabeçalhos de solicitação

Cabeçalho Valor
Autorização {token} de portador. Obrigatório. Saiba mais sobre autenticação e autorização.
ConsistencyLevel eventualmente. Este cabeçalho e $count são necessários quando se utiliza $search, $filter, $orderby ou os parâmetros de consulta de conversão OData. Ele usa um índice que pode não estar atualizado com as alterações recentes no objeto.

Corpo da solicitação

Não forneça um corpo de solicitação para esse método.

Resposta

Se bem-sucedido, este método retorna um código de resposta 200 OK e uma coleção de objetos directoryObject no corpo da resposta.

Exemplos

Exemplo 1: obter grupos, funções de diretório e unidades administrativas dos quais o utilizador é membro

Solicitação

O exemplo a seguir mostra uma solicitação.

GET https://graph.microsoft.com/v1.0/users/6e7b768e-07e2-4810-8459-485f84f8f204/transitiveMemberOf

Resposta

O exemplo a seguir mostra a resposta.

Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.

HTTP/1.1 200 OK
Content-type: application/json

{
  "@odata.context":"https://graph.microsoft.com/v1.0/$metadata#directoryObjects",
  "value":[
    {
      "@odata.type":"#microsoft.graph.group",
      "displayName":"All_Contoso_Licensing",
      "mailEnabled":true,
      "mailNickname":"ContosoMailNickName",
      "securityEnabled":true
    }
  ]
}

Exemplo 2: Obter apenas uma contagem de associações transitivas em grupos, funções de diretório e unidades administrativas

Solicitação

O exemplo a seguir mostra uma solicitação.

GET https://graph.microsoft.com/v1.0/users/{id}/transitiveMemberOf/$count
ConsistencyLevel: eventual

Resposta

O exemplo a seguir mostra a resposta.

HTTP/1.1 200 OK
Content-type: text/plain

893

Exemplo 3: Usar a conversão OData para obter apenas uma contagem de associação transitiva em grupos

Solicitação

O exemplo a seguir mostra uma solicitação.

GET https://graph.microsoft.com/v1.0/users/{id}/transitiveMemberOf/microsoft.graph.group/$count
ConsistencyLevel: eventual

Resposta

O exemplo a seguir mostra a resposta.

HTTP/1.1 200 OK
Content-type: text/plain

588

Exemplo 4: Utilize $search e cast OData para obter associação transitiva em grupos com nomes a apresentar que contenham as letras "camada", incluindo uma contagem de objetos devolvidos

Solicitação

O exemplo a seguir mostra uma solicitação.

GET https://graph.microsoft.com/v1.0/users/{id}/transitiveMemberOf/microsoft.graph.group?$count=true&$orderby=displayName&$search="displayName:tier"&$select=displayName,id
ConsistencyLevel: eventual

Resposta

O exemplo a seguir mostra a resposta.

Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.

HTTP/1.1 200 OK
Content-type: application/json

{
  "@odata.context":"https://graph.microsoft.com/v1.0/$metadata#groups(displayName,id)",
  "@odata.count":7,
  "value":[
    {
      "displayName":"Contoso-tier Query Notification",
      "id":"11111111-2222-3333-4444-555555555555"
    }
  ]
}

Exemplo 5: Utilize $filter e cast OData para obter associação transitiva em grupos com um nome a apresentar que começa com "a", incluindo uma contagem de objetos devolvidos

Solicitação

O exemplo a seguir mostra uma solicitação.

GET https://graph.microsoft.com/v1.0/users/{id}/transitiveMemberOf/microsoft.graph.group?$count=true&$orderby=displayName&$filter=startswith(displayName, 'a')
ConsistencyLevel: eventual

Resposta

O exemplo a seguir mostra a resposta.

Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.

HTTP/1.1 200 OK
Content-type: application/json

{
  "@odata.context":"https://graph.microsoft.com/v1.0/$metadata#groups",
  "@odata.count":76,
  "value":[
    {
      "displayName":"AAD Contoso Users",
      "mail":"AADContoso_Users@contoso.com",
      "mailEnabled":true,
      "mailNickname":"AADContoso_Users",
      "securityEnabled":true
    }
  ]
}