Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Namespace: microsoft.graph
Importante
As APIs na versão /beta no Microsoft Graph estão sujeitas a alterações. Não há suporte para o uso dessas APIs em aplicativos de produção. Para determinar se uma API está disponível na v1.0, use o seletor Versão.
Leia as propriedades e relações de um objeto appRoleAssignment .
Essa API está disponível nas seguintes implantações de nuvem nacional.
| Serviço global | Governo dos EUA L4 | US Government L5 (DOD) | China operada pela 21Vianet |
|---|---|---|---|
| ✅ | ✅ | ✅ | ✅ |
Permissões
A tabela a seguir mostra a permissão ou permissões menos privilegiadas necessárias para chamar essa API em cada tipo de recurso com suporte. Siga as práticas recomendadas para solicitar permissões com privilégios mínimos. 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.
| Recurso com suporte | Delegada (conta corporativa ou de estudante) | Delegada (conta pessoal da Microsoft) | Application |
|---|---|---|---|
| grupo | Group.Read.All | Sem suporte. | Group.Read.All |
| servicePrincipal | Application.Read.All | Sem suporte. | Application.Read.All |
| usuário | User.Read | Sem suporte. | Directory.Read.All |
Importante
Para acesso delegado usando contas corporativas ou de estudante, o usuário conectado deve receber uma função do Microsoft Entra com suporte ou uma função personalizada que conceda as permissões necessárias para esta operação. Esta operação dá suporte às seguintes funções internas, que fornecem apenas o menor privilégio necessário:
- Emissor de convites independente - ler atribuições de função de aplicativo somente para usuários
- Leitores de Diretório
- Contas de sincronização de diretório - para serviços do Microsoft Entra Connect e do Microsoft Entra Cloud Sync
- Escritor de Diretórios
- Administrador de Identidade Híbrida
- Administrador de Governança de Identidade
- Administrador de Função Privilegiada
- Administrador do usuário
- Administrador de Aplicativos
- Administrador de Aplicativos de Nuvem
- ID do agente Administrador - somente para usuários do agente
Outras permissões com suporte
As seguintes permissões privilegiadas mais altas têm suporte de cada recurso:
- Grupos:
- Permissões delegadas e de aplicativo: Directory.Read.All, AppRoleAssignment.ReadWrite.All, Directory.ReadWrite.All
- Usuários:
- Permissões delegadas: User.ReadBasic.All, Directory.Read.All, AppRoleAssignment.ReadWrite.All
- Permissões de aplicativo: Directory.Read.All, AppRoleAssignment.ReadWrite.All
- Entidades de serviço:
- Permissões delegadas: Directory.Read.All, Application.ReadWrite.All, Directory.ReadWrite.All
- Permissões do aplicativo: Application.ReadWrite.OwnedBy, Application.ReadWrite.All, Directory.ReadWrite.All
Solicitação HTTP
Para obter detalhes de um appRole concedido a uma entidade de serviço:
GET /servicePrincipals/{client-serviceprincipal-id}/appRoleAssignments/{appRoleAssignment-id}
GET /servicePrincipals(appId='{client-servicePrincipal-appId}')/appRoleAssignments/{appRoleAssignment-id}
Para obter detalhes de um appRole concedido a um usuário, grupo ou entidade de serviço do cliente para a entidade de serviço de recurso determinada:
GET /servicePrincipals(appId='{resource-servicePrincipal-appId}')/appRoleAssignedTo/{appRoleAssignment-id}
GET /servicePrincipals/{resource-serviceprincipal-id}/appRoleAssignedTo/{appRoleAssignment-id}
Para obter detalhes de um appRole concedido a um grupo:
GET /groups/{group-id}/appRoleAssignments/{appRoleAssignment-id}
Para obter detalhes de um appRole concedido a um usuário:
GET /users/{user-id}/appRoleAssignments/{appRoleAssignment-id}
GET /me/appRoleAssignments/{appRoleAssignment-id}
Observação
Chamar o ponto de extremidade /me exige um usuário conectado e, portanto, uma permissão delegada. Não há suporte para permissões de aplicativo ao usar o /me ponto de extremidade.
Parâmetros de consulta opcionais
Esse método dá suporte $select ao parâmetro de consulta OData para ajudar a personalizar a resposta. Para obter informações gerais, acesse Parâmetros de consulta OData.
Cabeçalhos de solicitação
| Nome | Descrição |
|---|---|
| Autorização | {token} de portador. Obrigatório. Saiba mais sobre autenticação e autorização. |
Corpo da solicitação
Não forneça um corpo de solicitação para esse método.
Resposta
Se tiver êxito, este método retornará um código de resposta 200 OK e um objeto appRoleAssignment no corpo da resposta.
Exemplos
Exemplo 1: obter detalhes de uma função de aplicativo concedida a um usuário, grupo ou entidade de serviço do cliente para a entidade de serviço de recurso especificada
Solicitação
A solicitação a seguir consulta a entidade de serviço de recurso para obter detalhes de uma função de aplicativo que ela concedeu a um cliente que pode ser um usuário, grupo ou entidade de serviço ao cliente no locatário.
GET https://graph.microsoft.com/beta/servicePrincipals(appId='00000003-0000-0000-c000-000000000000')/appRoleAssignedTo/ep6PKgGvOkGVksMuwOXBpxV3dkHvwM1ElSjMUzZtaIA
Resposta
O exemplo a seguir mostra a resposta. Ele mostra que uma entidade de serviço de atendimento ao cliente chamada Postman recebeu uma função de aplicativo com a ID df021288-bdef-4463-88db-98f22de89214 , que é a permissão do aplicativo User.Read.All , para a entidade de serviço de recurso chamada Microsoft Graph.
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/beta/$metadata#servicePrincipals('00000003-0000-0000-c000-000000000000')/appRoleAssignedTo/$entity",
"id": "ep6PKgGvOkGVksMuwOXBpxV3dkHvwM1ElSjMUzZtaIA",
"deletedDateTime": null,
"appRoleId": "df021288-bdef-4463-88db-98f22de89214",
"createdDateTime": "2023-02-24T17:01:47.0988029Z",
"principalDisplayName": "Postman",
"principalId": "2a8f9e7a-af01-413a-9592-c32ec0e5c1a7",
"principalType": "ServicePrincipal",
"resourceDisplayName": "Microsoft Graph",
"resourceId": "7408235b-7540-4850-82fe-a5f15ed019e2"
}
Exemplo 2: Obter detalhes de uma função de aplicativo concedida a uma entidade de serviço
Solicitação
A solicitação a seguir consulta a entidade de serviço ao cliente para obter detalhes de uma função de aplicativo concedida a ela. Nesse caso, a função de aplicativo representa a permissão do aplicativo.
GET https://graph.microsoft.com/beta/servicePrincipals(appId='ceb96a54-de95-49a0-b38c-c55263fcf421')/appRoleAssignments/ep6PKgGvOkGVksMuwOXBpxV3dkHvwM1ElSjMUzZtaIA
Resposta
O exemplo a seguir mostra a resposta. Ele mostra que uma entidade de serviço de atendimento ao cliente chamada Postman recebeu uma função de aplicativo com a ID df021288-bdef-4463-88db-98f22de89214 , que é a permissão do aplicativo User.Read.All , para a entidade de serviço de recurso chamada Microsoft Graph.
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/beta/$metadata#servicePrincipals('ceb96a54-de95-49a0-b38c-c55263fcf421')/appRoleAssignments/$entity",
"id": "ep6PKgGvOkGVksMuwOXBpxV3dkHvwM1ElSjMUzZtaIA",
"deletedDateTime": null,
"appRoleId": "df021288-bdef-4463-88db-98f22de89214",
"createdDateTime": "2023-02-24T17:01:47.0988029Z",
"principalDisplayName": "Postman",
"principalId": "2a8f9e7a-af01-413a-9592-c32ec0e5c1a7",
"principalType": "ServicePrincipal",
"resourceDisplayName": "Microsoft Graph",
"resourceId": "7408235b-7540-4850-82fe-a5f15ed019e2"
}
Exemplo 3: obter detalhes de uma função de aplicativo concedida ao usuário conectado
Solicitação
A solicitação a seguir consulta o appRoleAssignments do usuário conectado.
GET https://graph.microsoft.com/beta/me/appRoleAssignments/Lo6gEKI-4EyAy9X91LBepo6Aq0Rt6QxBjWRl76txk8I
Resposta
O exemplo a seguir mostra a resposta. Ele mostra que o usuário conectado tem a função de aplicativo padrão para uma entidade de serviço de recurso chamada Postman.
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/beta/$metadata#users('10a08e2e-3ea2-4ce0-80cb-d5fdd4b05ea6')/appRoleAssignments/$entity",
"id": "Lo6gEKI-4EyAy9X91LBepo6Aq0Rt6QxBjWRl76txk8I",
"deletedDateTime": null,
"appRoleId": "00000000-0000-0000-0000-000000000000",
"createdDateTime": "2022-09-08T17:43:57.8423817Z",
"principalDisplayName": "MOD Administrator",
"principalId": "10a08e2e-3ea2-4ce0-80cb-d5fdd4b05ea6",
"principalType": "User",
"resourceDisplayName": "Postman",
"resourceId": "2a8f9e7a-af01-413a-9592-c32ec0e5c1a7"
}