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.
Configure permissões herdáveis em um blueprint de identidade do agente para pré-autorizar um conjunto base de escopos delegados e funções de aplicativo. As identidades do agente criadas a partir do blueprint herdam automaticamente essas permissões sem avisos de consentimento interativos.
Para obter informações conceituais sobre como as permissões herdáveis se relacionam com o acesso aos recursos necessários e as concessões de permissão direta, consulte as permissões herdáveis e o acesso necessário aos recursos.
Pré-requisitos
- Um modelo de identidade de agente existente já foi criado e configurado
- Uma das seguintes permissões:
- Função de desenvolvedor para ID do agente para gerenciar blueprints de identidade do agente de propriedade do usuário
- Função de Administrador de ID de Agente para gerenciar modelos de identidade do agente
Como funcionam as permissões herdáveis
Durante a emissão de um token para a identidade de um agente, a plataforma mescla os escopos qualificados herdados com os escopos delegados solicitados pelo agente. Escopos herdados aparecem na declaração scp do token de acesso e as funções herdadas aparecem na declaração de funções . Para obter detalhes sobre as condições de herança e a relação entre declarações, concessões e permissões efetivas, consulte as permissões herdáveis e o acesso necessário aos recursos.
Padrões de herança
O artigo de conceito descreve padrões de herança em um alto nível. A tabela a seguir mostra os valores específicos kind usados na API ao configurar a herança por aplicativo de recurso:
| Herança | Variante | Descrição |
|---|---|---|
| Tudo Permitido | allAllowed |
Herda todos os escopos delegados disponíveis ou funções de aplicativo para o aplicativo de recursos especificado. Os escopos ou funções concedidos recentemente na entidade do blueprint de identidade do agente são incluídos automaticamente. |
| None | none |
Não herde escopos ou funções para o aplicativo de recurso especificado. Use isso para desabilitar explicitamente a herança para escopos (noScopes) ou funções (noRoles) de forma independente. |
Você pode configurar escopos e funções independentemente no mesmo recurso. Por exemplo, você pode herdar todos os escopos sem herdar nenhum papel, ou vice-versa.
Limitações de permissões herdáveis
- No máximo, 50 aplicativos de recursos por blueprint de identidade de agente (por exemplo, até 50 entradas na coleção inheritablePermissions). Se você exceder esse limite, reduza o número de aplicativos de recursos para permanecer dentro do limite com suporte.
Examine e monitore regularmente a configuração de permissões herdáveis. Reavaliar escopos e funções herdados para garantir que permaneçam apropriados para seu caso de uso. Audite quais escopos e funções herdados estão sendo usados pelos agentes e remova quaisquer permissões não utilizadas tanto da entidade do blueprint de identidade do agente quanto da lista de permissões herdáveis para manter a higiene de segurança.
Configurar permissões herdáveis (usando Microsoft Graph)
Para configurar permissões herdáveis, use a propriedade de navegação inheritablePermissions no recurso do aplicativo agentIdentityBlueprint. Cada entrada especifica a configuração de herança de escopos e funções para um único aplicativo de recurso. Documente suas decisões de configuração acompanhando por que cada escopo ou função é herdável e quem a aprovou para fins de auditoria.
Ao especificar o resourceAppId em suas solicitações, verifique se você fornece um formato GUID válido. GUIDs inválidos resultam em Erro 400 de Solicitação Inválida.
Adicionar todos os escopos e a herança de funções para o Microsoft Graph
Solicitação
POST https://graph.microsoft.com/v1.0/applications/microsoft.graph.agentIdentityBlueprint/bc057821-f236-49d6-9f2c-1ebf43e9437a/inheritablePermissions
Content-Type: application/json
OData-Version: 4.0
{
"resourceAppId": "00000003-0000-0000-c000-000000000000",
"inheritableScopes": {
"@odata.type": "#microsoft.graph.allAllowedScopes",
"kind": "allAllowed"
},
"inheritableRoles": {
"@odata.type": "#microsoft.graph.allAllowedRoles",
"kind": "allAllowed"
}
}
Resposta
HTTP/1.1 201 Created
Content-Type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#applications('bc057821-f236-49d6-9f2c-1ebf43e9437a')/inheritablePermissions/$entity",
"resourceAppId": "00000003-0000-0000-c000-000000000000",
"inheritableScopes": {
"@odata.type": "microsoft.graph.allAllowedScopes",
"kind": "allAllowed"
},
"inheritableRoles": {
"@odata.type": "microsoft.graph.allAllowedRoles",
"kind": "allAllowed"
}
}
Adicionar todos os escopos e herança de funções para vários recursos
Você pode configurar permissões herdáveis para vários aplicativos de recursos no mesmo blueprint. Cada recurso requer uma solicitação POST separada. O exemplo a seguir adiciona herança para Microsoft Graph e SharePoint Online.
Request (Microsoft Graph)
POST https://graph.microsoft.com/v1.0/applications/microsoft.graph.agentIdentityBlueprint/bc057821-f236-49d6-9f2c-1ebf43e9437a/inheritablePermissions
Content-Type: application/json
OData-Version: 4.0
{
"resourceAppId": "00000003-0000-0000-c000-000000000000",
"inheritableScopes": {
"@odata.type": "#microsoft.graph.allAllowedScopes",
"kind": "allAllowed"
},
"inheritableRoles": {
"@odata.type": "#microsoft.graph.allAllowedRoles",
"kind": "allAllowed"
}
}
Resposta
HTTP/1.1 201 Created
Content-Type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#applications('bc057821-f236-49d6-9f2c-1ebf43e9437a')/inheritablePermissions/$entity",
"resourceAppId": "00000003-0000-0000-c000-000000000000",
"inheritableScopes": {
"@odata.type": "microsoft.graph.allAllowedScopes",
"kind": "allAllowed"
},
"inheritableRoles": {
"@odata.type": "microsoft.graph.allAllowedRoles",
"kind": "allAllowed"
}
}
Request (SharePoint Online)
POST https://graph.microsoft.com/v1.0/applications/microsoft.graph.agentIdentityBlueprint/bc057821-f236-49d6-9f2c-1ebf43e9437a/inheritablePermissions
Content-Type: application/json
OData-Version: 4.0
{
"resourceAppId": "00000003-0000-0ff1-ce00-000000000000",
"inheritableScopes": {
"@odata.type": "#microsoft.graph.allAllowedScopes",
"kind": "allAllowed"
},
"inheritableRoles": {
"@odata.type": "#microsoft.graph.allAllowedRoles",
"kind": "allAllowed"
}
}
Resposta
HTTP/1.1 201 Created
Content-Type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#applications('bc057821-f236-49d6-9f2c-1ebf43e9437a')/inheritablePermissions/$entity",
"resourceAppId": "00000003-0000-0ff1-ce00-000000000000",
"inheritableScopes": {
"@odata.type": "microsoft.graph.allAllowedScopes",
"kind": "allAllowed"
},
"inheritableRoles": {
"@odata.type": "microsoft.graph.allAllowedRoles",
"kind": "allAllowed"
}
}
Adicionar somente herança de escopos (sem funções)
Para herdar escopos delegados, mas não funções de aplicativo, defina inheritableRoles como noRoles.
Solicitação
POST https://graph.microsoft.com/v1.0/applications/microsoft.graph.agentIdentityBlueprint/bc057821-f236-49d6-9f2c-1ebf43e9437a/inheritablePermissions
Content-Type: application/json
OData-Version: 4.0
{
"resourceAppId": "00000003-0000-0000-c000-000000000000",
"inheritableScopes": {
"@odata.type": "#microsoft.graph.allAllowedScopes",
"kind": "allAllowed"
},
"inheritableRoles": {
"@odata.type": "#microsoft.graph.noRoles",
"kind": "none"
}
}
Resposta
HTTP/1.1 201 Created
Content-Type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#applications('bc057821-f236-49d6-9f2c-1ebf43e9437a')/inheritablePermissions/$entity",
"resourceAppId": "00000003-0000-0000-c000-000000000000",
"inheritableScopes": {
"@odata.type": "microsoft.graph.allAllowedScopes",
"kind": "allAllowed"
},
"inheritableRoles": {
"@odata.type": "microsoft.graph.noRoles",
"kind": "none"
}
}
Adicionar somente herança de funções (sem escopos)
Para herdar funções de aplicativo, mas não escopos delegados, defina inheritableScopes como noScopes.
Solicitação
POST https://graph.microsoft.com/v1.0/applications/microsoft.graph.agentIdentityBlueprint/bc057821-f236-49d6-9f2c-1ebf43e9437a/inheritablePermissions
Content-Type: application/json
OData-Version: 4.0
{
"resourceAppId": "00000003-0000-0000-c000-000000000000",
"inheritableScopes": {
"@odata.type": "#microsoft.graph.noScopes",
"kind": "none"
},
"inheritableRoles": {
"@odata.type": "#microsoft.graph.allAllowedRoles",
"kind": "allAllowed"
}
}
Resposta
HTTP/1.1 201 Created
Content-Type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#applications('bc057821-f236-49d6-9f2c-1ebf43e9437a')/inheritablePermissions/$entity",
"resourceAppId": "00000003-0000-0000-c000-000000000000",
"inheritableScopes": {
"@odata.type": "microsoft.graph.noScopes",
"kind": "none"
},
"inheritableRoles": {
"@odata.type": "microsoft.graph.allAllowedRoles",
"kind": "allAllowed"
}
}
Atualizar para desabilitar a herança de funções
Se já existir uma entrada para um resourceAppId, use PATCH para atualizá-la em vez de tentar criar uma entrada duplicada, o que resultaria em um erro de conflito 409. O exemplo a seguir desabilita a herança de função mantendo a herança de escopo habilitada.
Solicitação
PATCH https://graph.microsoft.com/v1.0/applications/microsoft.graph.agentIdentityBlueprint/bc057821-f236-49d6-9f2c-1ebf43e9437a/inheritablePermissions/00000003-0000-0000-c000-000000000000
Content-Type: application/json
OData-Version: 4.0
{
"inheritableRoles": {
"@odata.type": "#microsoft.graph.noRoles",
"kind": "none"
}
}
Resposta
HTTP/1.1 200 OK
Content-Type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#applications('bc057821-f236-49d6-9f2c-1ebf43e9437a')/inheritablePermissions/$entity",
"resourceAppId": "00000003-0000-0000-c000-000000000000",
"inheritableScopes": {
"@odata.type": "microsoft.graph.allAllowedScopes",
"kind": "allAllowed"
},
"inheritableRoles": {
"@odata.type": "microsoft.graph.noRoles",
"kind": "none"
}
}
Atualizar para desativar a herança de escopos
O exemplo a seguir desabilita a herança de escopo mantendo a herança de função habilitada.
Solicitação
PATCH https://graph.microsoft.com/v1.0/applications/microsoft.graph.agentIdentityBlueprint/bc057821-f236-49d6-9f2c-1ebf43e9437a/inheritablePermissions/00000003-0000-0000-c000-000000000000
Content-Type: application/json
OData-Version: 4.0
{
"inheritableScopes": {
"@odata.type": "#microsoft.graph.noScopes",
"kind": "none"
}
}
Resposta
HTTP/1.1 200 OK
Content-Type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#applications('bc057821-f236-49d6-9f2c-1ebf43e9437a')/inheritablePermissions/$entity",
"resourceAppId": "00000003-0000-0000-c000-000000000000",
"inheritableScopes": {
"@odata.type": "microsoft.graph.noScopes",
"kind": "none"
},
"inheritableRoles": {
"@odata.type": "microsoft.graph.allAllowedRoles",
"kind": "allAllowed"
}
}
Excluir permissões herdáveis existentes
Solicitação
DELETE https://graph.microsoft.com/v1.0/applications/microsoft.graph.agentIdentityBlueprint/bc057821-f236-49d6-9f2c-1ebf43e9437a/inheritablePermissions/00000003-0000-0000-c000-000000000000
OData-Version: 4.0
Resposta
HTTP/1.1 204 No Content