Visão geral
Muitas organizações perguntaram se é possível determinar se um utilizador concluiu a autenticação multifator (MFA) com base nas notificações (claims) de um token de segurança, como uma resposta SAML ou um token OAuth. Neste artigo, vou explicar como o Entra ID (anteriormente Azure AD) inclui esta informação nos tokens de segurança e como pode verificá-la para o seu caso de uso.
Compreender as notificações de autenticação
Notificações de autenticação SAML e OAuth
- Tokens SAML: o Entra ID usa o nome de notificação
http://schemas.microsoft.com/claims/authnmethodsreferencespara indicar o método de autenticação usado durante o processo de início de sessão. - Tokens OAuth: o valor
amr(Authentication Methods References, referências de métodos de autenticação) é usado para especificar o método de autenticação nos tokens OAuth.
Configuração do Entra ID
A boa notícia é que o Entra ID inclui a notificação http://schemas.microsoft.com/claims/authnmethodsreferences por predefinição para indicar se a MFA foi concluída. Não é necessária qualquer configuração adicional no lado do Entra ID.
Como verificar as notificações de MFA nos tokens de segurança
Caso 1: início de sessão apenas com palavra-passe (sem MFA)
Se um utilizador iniciar sessão apenas com a sua palavra-passe (sem MFA), a notificação http://schemas.microsoft.com/claims/authnmethodsreferences terá um único valor:
- Valor da notificação:
http://schemas.microsoft.com/ws/2008/06/identity/authenticationmethod/password
Exemplo da notificação no token:
<Attribute Name="http://schemas.microsoft.com/claims/authnmethodsreferences">
<AttributeValue>http://schemas.microsoft.com/ws/2008/06/identity/authenticationmethod/password</AttributeValue>
</Attribute>
Caso 2: início de sessão com palavra-passe e MFA
Se um utilizador iniciar sessão com palavra-passe e MFA (por exemplo, uma aplicação de autenticação ou outro método de verificação), a notificação http://schemas.microsoft.com/claims/authnmethodsreferences incluirá dois valores:
- Valores da notificação:
http://schemas.microsoft.com/ws/2008/06/identity/authenticationmethod/passwordhttp://schemas.microsoft.com/claims/multipleauthn
Exemplo da notificação no token:
<Attribute Name="http://schemas.microsoft.com/claims/authnmethodsreferences">
<AttributeValue>http://schemas.microsoft.com/ws/2008/06/identity/authenticationmethod/password</AttributeValue>
<AttributeValue>http://schemas.microsoft.com/claims/multipleauthn</AttributeValue>
</Attribute>
Como verificar a conclusão da MFA
Para verificar se a MFA foi concluída, basta verificar a presença do valor http://schemas.microsoft.com/claims/multipleauthn no nome de notificação http://schemas.microsoft.com/claims/authnmethodsreferences.
- Se o valor estiver presente: a MFA foi concluída.
- Se o valor não estiver presente: o utilizador iniciou sessão apenas com a sua palavra-passe.
Porque é que isto importa
Ao verificar as notificações nos tokens de segurança, pode confirmar programaticamente se a MFA foi aplicada durante a autenticação. Isto é particularmente útil para organizações que precisam de garantir a conformidade com as políticas de segurança ou de se integrar com fornecedores terceiros que exigem a verificação da MFA.
Conclusão
O Entra ID torna simples a verificação das notificações de MFA nos tokens de segurança, ao incluir por predefinição a informação necessária. Quer esteja a trabalhar com tokens SAML ou OAuth, a notificação http://schemas.microsoft.com/claims/authnmethodsreferences fornece os detalhes necessários para determinar se a MFA foi concluída durante o início de sessão de um utilizador.
Se estiver a implementar isto na sua organização ou precisar de partilhá-lo com um parceiro ou fornecedor, basta remeter para os valores de notificação correspondentes indicados acima.