Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Namespace: microsoft.graph
Atribuir uma função de aplicativo a uma entidade de serviço de recurso, a um usuário, grupo ou entidade de serviço de cliente.
As funções do aplicativo atribuídas às entidades de serviço também são conhecidas como permissões de aplicativo. As permissões de aplicativo podem ser concedidas diretamente com atribuições de função de aplicativo ou por meio de uma experiência de consentimento.
Para conceder uma atribuição de função de aplicativo, você precisará de três identificadores:
-
principalId: Aiddo usuário, grupo ou cliente servicePrincipal ao qual você está atribuindo a função de aplicativo. -
resourceId: Aiddo recurso servicePrincipal que definiu a função do aplicativo. -
appRoleId: Aiddo appRole (definida na entidade de serviço de recurso) para atribuir a um usuário, grupo ou entidade de serviço.
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
Escolha a(s) permissão(s) marcada(s) como menos privilegiada(s) para essa API. Use uma permissão ou permissões com privilégios mais altos 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 com privilégios mais elevados |
|---|---|---|
| Delegado (conta corporativa ou de estudante) | AppRoleAssignment.ReadWrite.All e Application.Read.All | AppRoleAssignment.ReadWrite.All and Directory.Read.All, Application.ReadWrite.All |
| Delegado (conta pessoal da Microsoft) | Sem suporte. | Sem suporte. |
| Application | AppRoleAssignment.ReadWrite.All e Application.Read.All | AppRoleAssignment.ReadWrite.All and Directory.Read.All, Application.ReadWrite.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:
- 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 - a função menos privilegiada com suporte para funções de aplicativo Microsoft Graph e Azure AD Graph
- Administrador do usuário
- Administrador de Aplicativos
- Administrador de Aplicativos de Nuvem
- ID do agente Administrador - somente para usuários do agente
Solicitação HTTP
Você pode endereçar a entidade de serviço usando sua id ou appId. id e appId são chamados de ID do Objeto e ID do Aplicativo (Cliente), respectivamente, em registros de aplicativo no centro de administração do Microsoft Entra.
POST /servicePrincipals/{id}/appRoleAssignedTo
POST /servicePrincipals(appId='{appId}')/appRoleAssignedTo
Cabeçalhos de solicitação
| Nome | Descrição |
|---|---|
| Autorização | {token} de portador. Obrigatório. Saiba mais sobre autenticação e autorização. |
| Content-type | application/json. Obrigatório. |
Corpo da solicitação
No corpo da solicitação, forneça uma representação JSON de um objeto appRoleAssignment.
Resposta
Se tiver êxito, este método retornará um código de resposta 201 Created e um objeto appRoleAssignment no corpo da resposta.
Exemplos
Solicitação
O exemplo a seguir mostra uma solicitação.
POST https://graph.microsoft.com/v1.0/servicePrincipals/9028d19c-26a9-4809-8e3f-20ff73e2d75e/appRoleAssignedTo
Content-Type: application/json
{
"principalId": "33ad69f9-da99-4bed-acd0-3f24235cb296",
"resourceId": "9028d19c-26a9-4809-8e3f-20ff73e2d75e",
"appRoleId": "ef7437e6-4f94-4a0a-a110-a439eb2aa8f7"
}
Neste exemplo, {id} e {resourceId-value} seriam os id da entidade de serviço de recurso e {principalId} seria o id do objeto de serviço de cliente, grupo ou cliente atribuído.
Resposta
O exemplo a seguir mostra a resposta.
Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.
HTTP/1.1 201 Created
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#servicePrincipals('9028d19c-26a9-4809-8e3f-20ff73e2d75e')/appRoleAssignedTo/$entity",
"id": "-WmtM5na7Uus0D8kI1yylpU9Mdo0Pb9OoBJvd3T5eKc",
"deletedDateTime": null,
"appRoleId": "ef7437e6-4f94-4a0a-a110-a439eb2aa8f7",
"createdDateTime": "2021-02-15T16:14:59.8643039Z",
"principalDisplayName": "Parents of Contoso",
"principalId": "33ad69f9-da99-4bed-acd0-3f24235cb296",
"principalType": "Group",
"resourceDisplayName": "Fabrikam App",
"resourceId": "9028d19c-26a9-4809-8e3f-20ff73e2d75e"
}