O Microsoft Outlook usa bibliotecas de autenticação para se conectar aos serviços do Microsoft 365. A biblioteca mais antiga, Azure Active Directory Authentication Library (ADAL), está sendo substituída pela Microsoft Authentication Library (MSAL). A ADAL deixará de funcionar com o Exchange Online em 2025. Este artigo explica a diferença entre ADAL e MSAL, por que o MSAL é o caminho de autenticação obrigatório e como forçar o Outlook a usar MSAL em vez de ADAL no Windows 10 e Windows 11.
Principais conclusões: Forçando MSAL no Outlook
- Chave de registro HKEY_CURRENT_USER\Software\Microsoft\Exchange\AlwaysUseMSOAuthForAutoDiscover: Defina este valor DWORD como 1 para forçar o Outlook a usar a Autenticação Moderna baseada em MSAL em vez de ADAL.
- Valor de registro ADALDisable em HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Common\Identity: Defina este DWORD como 0 para garantir que a ADAL esteja ativada antes da mudança para MSAL.
- Outlook versão 2304 ou mais recente: Apenas essas compilações suportam o caminho MSAL. Versões mais antigas do Outlook ignoram a substituição do registro e voltam para ADAL.
Por que a Microsoft substituiu ADAL por MSAL
ADAL foi a primeira biblioteca de autenticação para o Azure Active Directory, introduzida com o Office 2013. Ela lidava com solicitações de token para Exchange Online, SharePoint Online e Skype for Business. ADAL funciona apenas com endpoints do Azure Active Directory v1.0, que não suportam recursos modernos de segurança como acesso condicional, avaliação contínua de acesso e autenticação sem senha.
MSAL usa o endpoint da plataforma de identidade da Microsoft v2.0. Este endpoint suporta contas pessoais da Microsoft, contas corporativas e de estudante, e Azure AD B2C. MSAL também suporta fluxo de código de dispositivo, autenticação de broker em dispositivos móveis e melhorias no cache de token que reduzem solicitações repetidas de login. A Microsoft anunciou em 2022 que o Exchange Online bloqueará solicitações baseadas em ADAL a partir de 2025. O Outlook deve usar MSAL para autenticar após essa data.
ADAL vs MSAL: Principais diferenças técnicas
ADAL usa o endpoint v1.0 do Azure AD. Este endpoint aceita apenas contas corporativas e de estudante. Ele não suporta diretamente a API do Microsoft Graph. MSAL usa o endpoint v2.0, que aceita contas corporativas e pessoais e suporta a API do Microsoft Graph. MSAL também lida com a renovação de tokens de forma mais eficiente usando um cache de token distribuído que funciona em Outlook, Teams e outros aplicativos do Office.
ADAL envia o nome de usuário como uma dica durante o login. MSAL envia o nome de usuário como uma dica de login e suporta o parâmetro login_hint para autenticação silenciosa. MSAL também suporta o parâmetro claims, que permite que políticas de acesso condicional solicitem declarações específicas do usuário, como autenticação multifator ou conformidade do dispositivo.
Passos para forçar o Outlook a usar MSAL em vez de ADAL
Antes de forçar o MSAL, confirme que sua versão do Outlook é 2304 ou mais recente. Abra o Outlook, vá em Arquivo > Conta do Office > Sobre o Outlook. O número da compilação aparece na caixa de diálogo. Se a compilação for inferior a 2304, atualize o Outlook através de Arquivo > Conta do Office > Opções de Atualização > Atualizar Agora.
As etapas a seguir modificam o Registro do Windows para forçar o Outlook a usar a autenticação MSAL. Faça backup do registro antes de fazer alterações.
- Abra o Editor de Registro como Administrador
Pressione a tecla Windows + R, digiteregedite pressione Enter. Clique em Sim no prompt de Controle de Conta de Usuário. - Navegue até a chave Identity
Vá paraHKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Common\Identity. Se a chave Identity não existir, clique com o botão direito na chave Common, selecione Novo > Chave e nomeie como Identity. - Ative a ADAL primeiro (necessário para fallback do MSAL)
Clique com o botão direito na chave Identity, selecione Novo > Valor DWORD (32 bits) e nomeie comoADALDisable. Defina o valor como0. Isso garante que a ADAL esteja ativada como fallback se o MSAL falhar. - Navegue até a chave Exchange
Vá paraHKEY_CURRENT_USER\Software\Microsoft\Exchange. Se a chave Exchange não existir, clique com o botão direito na chave Microsoft, selecione Novo > Chave e nomeie como Exchange. - Crie o valor de registro para forçar MSAL
Clique com o botão direito na chave Exchange, selecione Novo > Valor DWORD (32 bits) e nomeie comoAlwaysUseMSOAuthForAutoDiscover. Defina o valor como1. - Feche o Editor de Registro e reinicie o Outlook
Saia do Editor de Registro. Feche o Outlook completamente. Aguarde 30 segundos e reinicie o Outlook. A próxima tentativa de autenticação usará MSAL.
Verifique se o MSAL está sendo usado
Abra o Outlook enquanto segura a tecla Ctrl. Na caixa de diálogo de inicialização do Outlook, selecione o perfil que você usa para o Exchange Online. Quando o prompt de login aparecer, verifique a barra de endereços do navegador. Se a URL contiver login.microsoftonline.com e incluir microsoft_auth ou msal na string de consulta, o MSAL está ativo. Se a URL contiver login.windows.net ou login.live.com, a ADAL ainda está sendo usada.
Se o Outlook ainda usar ADAL após a alteração no registro
Algumas configurações substituem a configuração do registro. Os seguintes problemas explicam por que o Outlook ainda pode usar ADAL e como corrigir cada um.
Versão do Outlook é anterior à 2304
Compilações do Outlook anteriores à 2304 ignoram o valor de registro AlwaysUseMSOAuthForAutoDiscover. Atualize o Outlook para a versão 2304 ou mais recente. Abra Arquivo > Conta do Office > Opções de Atualização > Atualizar Agora. Após a atualização, reinicie o Outlook e teste a autenticação novamente.
Tenant do Exchange Online tem ADAL desabilitado no nível do tenant
Alguns tenants desabilitam a Autenticação Moderna para Exchange Online. Execute o seguinte comando no Exchange Online PowerShell: Get-OrganizationConfig | fl Name, OAuth. Se OAuth2ClientProfileEnabled estiver definido como False, execute Set-OrganizationConfig -OAuth2ClientProfileEnabled $true. Isso ativa o OAuth 2.0 para todo o tenant.
Perfil do Outlook está usando autenticação básica com POP3 ou IMAP
O caminho MSAL funciona apenas com contas do Exchange Online configuradas como Exchange ActiveSync ou MAPI sobre HTTP. Se o perfil usar POP3 ou IMAP, o Outlook não pode usar MSAL. Remova a conta POP3 ou IMAP e adicione-a como uma conta do Exchange. Vá em Arquivo > Configurações de Conta > Configurações de Conta, selecione a conta e clique em Alterar. Certifique-se de que o tipo de servidor seja Microsoft Exchange.
ADAL vs MSAL: Tabela comparativa de recursos
| Item | ADAL | MSAL |
|---|---|---|
| Endpoint do Azure AD | v1.0 (login.windows.net) | v2.0 (login.microsoftonline.com) |
| Tipos de conta suportados | Apenas corporativas e de estudante | Corporativas, de estudante e contas pessoais da Microsoft |
| Suporte a acesso condicional | Limitado | Completo (baseado em declarações, CAE, sem senha) |
| Cache de token | Cache por aplicativo | Cache distribuído entre aplicativos do Office |
| Suporte ao Microsoft Graph | Não | Sim |
| Fluxo de código de dispositivo | Não | Sim |
| Data de fim de vida | 2025 (Exchange Online bloqueia ADAL) | Desenvolvimento ativo |
Conclusão
Você pode forçar o Outlook a usar a autenticação MSAL definindo o valor de registro AlwaysUseMSOAuthForAutoDiscover como 1 na chave Exchange. Essa alteração requer a versão 2304 ou mais recente do Outlook e que a Autenticação Moderna esteja ativada no seu tenant. Após a alteração no registro, o Outlook usa o endpoint v2.0, que suporta acesso condicional, avaliação contínua de acesso e logins sem senha. Se o Outlook ainda usar ADAL, verifique a versão do Outlook, as configurações de OAuth do tenant e o tipo de protocolo da conta. Teste o caminho MSAL segurando Ctrl ao iniciar o Outlook e inspecionando a URL de login.