Semion Vasilevitzky e Jonathan Elkabas

Nota do editor: Bem-vindo ao segundo tutorial prático da série «Compreender e prevenir ataques à identidade do agente Entra ID: Um guia abrangente». Este guia técnico, dividido em várias partes, ajuda-o a compreender a abordagem da Microsoft em relação às identidades dos agentes e a forma como pode protegê-las contra agentes maliciosos. Para rever os capítulos anteriores e as lições práticas, comece aqui.


No nosso primeiro «Practice Checkpoint», aprendeu a definir o ID do agente e a criar o seu primeiro utilizador de agente.

Agora que os objetos principais já existem, vamos configurar o modelo de permissões da mesma forma que aparece em implementações reais: permissões diretas exclusivas da aplicação na identidade do agente e permissões delegadas concedidas ao nível do blueprint e marcadas como herdáveis.

Este ponto de verificação define os dados de entrada exatos que iremos validar posteriormente nos tokens ao longo dos fluxos de autenticação.

Atribuir permissão à identidade do agente

Para demonstrar as permissões «diretas» exclusivas da aplicação ao nível da identidade do agente, atribua uma função de aplicação a <agent-identity-id> utilizando o mesmo appRoleAssignments padrão como anteriormente.

Nesta demonstração, o appRoleId representa User.Read.All. Vamos utilizá-la mais tarde para nos autenticarmos com a identidade do agente e para listar os utilizadores.

Figura 1. Atribuição de uma função de aplicação à identidade do agente

Configurar permissões herdáveis

Configure as permissões hereditárias para que o agente possa herdar os âmbitos delegados nos fluxos delegados.


Passo 1: Conceder a autorização delegada

Criar um oauth2PermissionGrants registo que concede Group.Read.All para o modelo de identidade do agente (fluxo padrão de consentimento delegado).

Figura 2. Atribuição do direito «Group.Read.All» à identidade do agente

Passo 2: Marcar como hereditário

Ligue para o /applications/microsoft.graph.agentIdentityBlueprint /<agent identity blueprint id>/inheritablePermissions ponto final e inclua o ID da aplicação do recurso do Graph. Utilize um âmbito enumerado para que a identidade do agente herde apenas o Group.Read.All permissões.

Figura 3. Limitação das permissões de leitura herdadas pela identidade do agente com um âmbito enumerado

Num cenário de autenticação delegada, iremos ver e utilizar essas permissões para listar os grupos de inquilinos. Se pretender que todas as permissões sejam herdadas, basta definir tipo para allAllowed em vez de enumerated e remova a propriedade «scopes».

Embora não esteja documentado, é possível herdar permissões enumeradas exclusivas da aplicação. Em vez de âmbitos, iremos utilizar appRoleIds, que exigem o GUID da função da aplicação. Assim, o pedido terá o seguinte aspeto:

Figura 4. Ativar a herança de permissões enumeradas exclusivas da aplicação

Também pode definir ambas ao mesmo tempo. Para atualizar as permissões herdáveis existentes, envie um pedido «Patch» para o recurso relevante que pretende atualizar.

Patch: /applications/microsoft.graph.agentIdentityBlueprint//inheritablePermissions/

A seguir: Vamos descobrir como a identidade do seu agente se autentica e funciona no Entra ID.


Explore o guia