O Azure AD Connect , solução que usei no artigo “Gerenciamento de Identidade com Azure – Primeiros Passos” faz a sincronização das identidades de usuário entre o seu AD Local e o Azure AD na nuvem, isso é o que permite que possamos usar os recursos como logon único, MFA e redefinição de senha (self service) .
Neste artigo vamos explorar o que acontece com as senhas dos usuários.
O Active Directory armazena senhas usando um valor de hash, da senha do usuário. Um valor de hash é o resultado de uma função matemática unidirecional (o algoritmo de hash). Não há método para reverter o resultado de uma função unidirecional para a versão em texto sem formatação de uma senha. Somente usando um dicionario Rainbow Tables se não houver a técnica de salt.
🔸 Sincronização do Hash de Senha
A cada dois minutos o AD Connect solicita os hashes de senha usando o atributo unicodePwd. A parte mais legal é antes de enviar o DC criptografa o hash de senha que está em MD4 usando uma chave que é um hash MD5 da chave de sessão do RPC e faz um salt.
O agente de sincronização combina o hash MD4 mais o salt por usuário e o insere na função de criptografia PBKDF2 ( https://www.ietf.org/rfc/rfc2898.txt ) 1000 iterações do algoritmo de hash com chave HMAC-SHA256.
Assim o hash MD4 original não é transmitido para o Azure AD. Em vez disso, o hash SHA256 do hash MD4 original é transmitido. Como resultado, se o hash armazenado no Azure AD for obtido, ele não poderá ser usado em um ataque de passagem no hash local.
Quando um usuário tenat logar no AAD e digita a senha então a sequencia MD4+salt+PBKDF2+HMAC-SHA256 será novamente executada e se senha estiver certa ele será autenticado.
Quando alguém digita a senha para se autenticar no Azure AD, o mesmo algoritmo é executado nessa senha e o sistema compara o hash para ver se ele corresponde ao hash sincronizado do AD local, se for igual então o sistema sabe que a senha corresponde e o usuário é autenticado.
🔸 Password write-back
O Azure AD Connect sincroniza novos hashes quando você altera sua senha no AD local , com o password write-back habilitado, você pode alterar sua senha na nuvem e escrever um novo hash de volta no AD, para permitir que as pessoas redefinam suas próprias senhas.
Esse é um requerimento para habilitar o Self-service Password Reset (SSPR) que logo teremos um artigo sobre.
🔸 Azure AD Pass-through Authentication
Com o Pass-through Authentication, não estamos sincronizando nenhum hash de senha . Em vez disso, uma solicitação para autenticação no AAD será transmitida por meio de um agente ao seu AD Local. O Active Directory local faz a autenticação e informa ao Azure AD se foi bem-sucedido ou não.
Isso é ótimo para organizações que não têm permissão para sincronizar seus hashes de senha com a nuvem por motivos de conformidade.
Vale lembrar que o Azure AD Identity Protection requer Sincronização de Hash de Senha
Na imagem acima está marcado também a opção de Single sign-on. Isso é o que chamamos de “Azure Active Directory Seamless Single Sign-On (Azure AD Seamless SSO)
Assim, quando você estiver no seu dispositivo corporativo conectado à sua rede corporativa, não precisará digitar seu nome de usuário e senha novamente para acessar os recursos protegidos pelo Azure AD.
Para o Windows 10, a recomendação é usar o Ingresso do Azure AD para obter a experiência ideal de logon único com o Azure AD.
- https://docs.microsoft.com/pt-br/azure/active-directory/hybrid/how-to-connect-password-hash-synchronization
- https://docs.microsoft.com/pt-br/azure/active-directory/hybrid/how-to-connect-pta
- https://docs.microsoft.com/pt-br/azure/active-directory/hybrid/how-to-connect-sso
- https://docs.microsoft.com/pt-br/azure/active-directory/hybrid/how-to-connect-sso-how-it-works
1 Trackback / Pingback