Listar as afiliações diretas de um usuário

Namespace: microsoft.graph

Obtenha os grupos, funções de diretório e unidades administrativas das quais o usuário é membro direto. Essa operação não é transitiva. Para recuperar grupos, funções de diretório e unidades administrativas que o usuário é membro por meio de associação transitiva, use a API List user transitive memberOf.

Essa API está disponível nas seguintes implantações nacionais de nuvem.

Serviço global Governo dos EUA L4 GOVERNO DOS EUA L5 (DOD) China operada pela 21Vianet

Permissões

Escolha a permissão ou as permissões marcadas como menos privilegiadas para essa API. Use uma permissão ou permissões privilegiadas mais altas somente se o aplicativo exigir. Para obter detalhes sobre permissões delegadas e de aplicativo, consulte Tipos de permissão. Para saber mais sobre essas permissões, consulte a referência de permissões.

Tipo de permissão Permissões menos privilegiadas Permissões privilegiadas mais altas
Delegado (conta corporativa ou de estudante) User.Read Directory.Read.All, Directory.ReadWrite.All, GroupMember.Read.All
Delegado (conta pessoal da Microsoft) Sem suporte. Sem suporte.
Aplicativo Sem suporte. Sem suporte.

Observação: Para listar os membros de um grupo com afiliação oculta, a permissão Member.Read.Hidden é necessária.

Quando um aplicativo consulta uma relação que retorna uma coleção de tipos directoryObject , se não tiver permissão para ler um determinado tipo derivado (como dispositivo), os membros desse tipo serão retornados, mas com informações limitadas. Com esse comportamento, os aplicativos podem solicitar as permissões menos privilegiadas de que precisam, em vez de depender do conjunto de Diretório.*Permissões. Para obter mais detalhes, confira Informações limitadas retornadas para objetos membro inacessíveis.

Solicitação HTTP

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

Parâmetros de consulta opcionais

Este método dá suporte a Parâmetros de consulta OData para ajudar a personalizar a resposta, incluindo $search, $count, e $filter. A conversão do OData também está habilitada; por exemplo, você pode lançar para obter apenas o diretórioRoles do qual o usuário é membro. Você pode usar $searchna propriedadedisplayName. Os itens adicionados ou atualizados para esse recurso são especialmente indexados para uso com os $count parâmetros e $search consulta. Pode haver um pequeno atraso entre quando um item é adicionado ou atualizado e quando ele está disponível no índice.

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 das quais o usuário é membro direto

Solicitação

O exemplo a seguir mostra uma solicitação.

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

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

{
  "value": [
    {
      "@odata.type": "#microsoft.graph.group",
      "displayName": "All Users",
      "mailEnabled": false,
      "securityEnabled": true
    }
  ]
}

Exemplo 2: Obtenha apenas uma contagem de todos os grupos, funções de diretório e unidades administrativas dos quais o usuário é membro direto

Solicitação

O exemplo a seguir mostra uma solicitação.

GET https://graph.microsoft.com/v1.0/users/{id}/memberOf/$count
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: text/plain

17

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

Solicitação

O exemplo a seguir mostra uma solicitação.

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

Resposta

O exemplo a seguir mostra a resposta.

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

16

Exemplo 4: Utilize $search e conversão OData para obter associação em grupos com nomes de exibição que contenham as letras 'camada', incluindo uma contagem de objetos retornados

Solicitação

O exemplo a seguir mostra uma solicitação.

GET https://graph.microsoft.com/v1.0/users/{id}/memberOf/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 a conversão OData para obter grupos com um nome de exibição que começa com 'a' incluindo uma contagem de objetos retornados

Solicitação

O exemplo a seguir mostra uma solicitação.

GET https://graph.microsoft.com/v1.0/users/{id}/memberOf/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
    }
  ]
}

Exemplo 6: usar $filter e OData para obter grupos com pelo menos uma atribuição de função de aplicativo

Solicitação

O exemplo a seguir mostra uma solicitação.

GET https://graph.microsoft.com/v1.0/users/{id}/memberOf/microsoft.graph.group?$filter=appRoleAssignments/$count gt 0&$select=id,displayName

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",
  "value":[
    {
      "id": "c11b732b-0e16-46c1-b0fa-bd32c8a42455",
      "displayName":"All users"
    },
    {
      "id": "3f927b40-06f8-4352-b8e4-37a7ba04b7ff",
      "displayName":"AAD Contoso Users"
    }
  ]
}