Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
By: Caio Ribeiro César e César Augusto Hara
Com o aumento da utilização do Outlook 2016, mais organizações estão utilizando a funcionalidade de Modern Authentication. O que é o Modern Authentication?
Para entender o Modern Authentication, vamos primeiro explicar quais são os outros métodos de autenticação, também conhecidos como “legacy”, disponíveis para o O365.
1 - Autenticação Ativa (WSTRUST)
Modelo de autenticação utilizado por versões mais antigas de Outlook (2010 + 2013 sem as atualizações necessárias) ou até protocolos como ActiveSync, POP3, IMAP, SMTP.
O Exchange Online é o responsável pela comunicação com o Identity Provider (ADFS). O Outlook em si não faz parte do processo de autenticação, apenas dos resultados do processo. Já discutimos anteriormente neste post, porém vamos revisar de uma maneira mais simples:
• Usuário final faz o request para a utilização de um recurso no Exchange Online (Ol2010);
• Exchange Online faz o pedido de credencial;
• O usuário adiciona a informação para a autenticação (usuário e senha). Estas informações são armazenadas pelo Exchange Online;
• Exchange Online faz o contato com o OrgID (O365). Se a conta é comum/cloud, o usuário é autenticado – caso contrário seguimos com o passo de autenticação ativa e a comunicação é redirecionada para o Identity Provider (ADFS);
• Exchange Online faz contato com o IDP;
• O SAML token é enviado do IDP para o Exchange Online;
• Exchange Online envia o SAML token para o OrgId;
• OrgId retorna o O365 token;
• Exchange Online consome o token e concede acesso para o usuário final.
2 - Autenticação Passiva (WSFED)
Modelo mais simples de autenticação, utilizado no OWA e no Portal. Cada passo de autenticação é exposto para o cliente (browser).
• Usuário efetua o acesso para o OWA sem estar logado (importante lembrar que usuários utilizando um cookie persistente com o keep me signed não terão que readicionar as informações de login);
• OWA efetua o redirecionamento para o OrgID (login.microsoftonline.com);
• O usuário adiciona o User Principal Name. Como estamos falando de um ambiente federado, assim que o usuário selecionar a opção de senha, o browser irá redirecionar para a página de acesso “\adfs\ls” da organização;
• Usuário insere as credenciais;
• O Identity Provider retorna o SAML token para o browser e efetua o redirecionamento para o OrgId;
• Browser efetua um POST do Token para o OrgId, que retorna um cookie de autenticação;
• Com o cookie, o browser acessa o OWA.
Por ser um modelo mais simples, o troubleshoot geralmente é feito apenas com traces de Fiddler.
Explicamos para os engenheiros de suporte que o processo em si pode ser explicado com apenas uma imagem:
Brincadeiras a parte, vamos ao último método de autenticação!
3 - Modern Authentication
O modelo “moderno” de autenticação já é utilizado por muitos de nossos clientes de O365. Também conhecido como “OAuth” ou “ADAL”, utiliza as bibliotecas de autenticação do ADAL (Azure Active Directory Authentication Libraries). Quem lida com o processo de autenticação não é o Exchange Online, e sim o Cliente (Outlook).
Para validar se a sua organização possui o Modern Authentication habilitado, basta executar o procedimento via PowerShell.
Get-OrganizationConfig | fl *oau*
Caso o resultado seja “False”, execute o comando:
Set-OrganizationConfig - OAuth2ClientProfileEnabled $True
Vale ressaltar que as conexões não serão forçadas para Modern Authentication. Se a sua organização ainda possui clientes que utilizam a autenticação Ativa, as comunicações não serão afetadas (iremos apenas aceitar Modern Auth para as versões abaixo).
As versões que suportam este modelo são:
• Outlook 2016 + Outlook 2016 for Mac (15.20);
• Outlook Mobile para IOS/Android;
• PowerShell;
• Outlook 2013, desde que:
a) A versão esteja atualizada. O requerimento mínimo é 15.0.4701, porém sempre recomendamos a última release do produto.
b) O Outlook tenha esta configuração manualmente ativada (hardcoded) no registro:
HKCU\SOFTWARE\Microsoft\Office\15.0\Common\Identity\EnableADAL
REG_DWORD 1
HKCU\SOFTWARE\Microsoft\Office\15.0\Common\Identity\Version
REG_DWORD 1
• Usuário acessa o Outlook, que faz o query autodiscover + conexão para o ExO;
• Exchange Online envia um “401”: token necessário para conexão Outlook;
• Outlook envia um “GET” realm pra o O365, que responde com a informação do STS (Identity Provider);
• Outlook entra em contato com o IDP (sts.domain.com);
• Outlook recebe o prompt de autenticação do IDP;
• A credencial é inserida e enviada ao IDP;
• SAML token enviado do IDP para o Outlook;
• POST do token efetuado do Outlook para o O365;
• Refresh token enviado do O365 para o Outlook;
• Acesso garantido Outlook <> Exchange Online.
Dicas de troubleshooting para Modern Authentication
1) Fiddler
O Fiddler trace ajuda a entender as etapas de autenticação. Geralmente, filtramos para o que ocorre durante ou após o “401”:
x-ms-diagnostics: 4000000;reason="Flighting is not enabled for domain contoso.com.";error_category="oauth_not_available"
trusted_issuers="", error="invalid_token"
2) Credential Manager
Como a autenticação é “trabalhada” pelo Outlook, as credenciais podem ser removidas manualmente via “Control Panel\User Accounts\Credential Manager\Windows Credentials”:
* Os tokens estão localizados em:
HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Common\Identity\Identities
Comments
- Anonymous
October 11, 2017
Excelente post. Modern Auth é show!


