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. |
Importante
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 de recurso, os membros desse tipo serão retornados, mas com informações limitadas. Por exemplo, somente a propriedade @odata.type para o tipo de objeto e a ID é retornada , enquanto outras propriedades são indicadas como null
. 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.
Dica
- Chamar o ponto de extremidade
/me/memberOf
exige um usuário conectado e, portanto, uma permissão delegada. Não há suporte para permissões de aplicativo quando você usa o/me/memberOf
ponto de extremidade. - Para listar os membros de um grupo com associação oculta, a
Member.Read.Hidden
permissão é necessária.
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 $search
na 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"
}
]
}
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários