Introdução à autenticação baseada em certificado no Microsoft Entra ID com federação
A CBA (autenticação baseada em certificado) com federação permite que você seja autenticado pelo Microsoft Entra ID com um certificado de cliente em um dispositivo Windows, Android ou iOS ao conectar sua conta do Exchange Online a:
- Aplicativos móveis da Microsoft, como Microsoft Outlook e Microsoft Word
- Clientes do EAS (Exchange ActiveSync)
Configurar esse recurso elimina a necessidade de digitar uma combinação de nome de usuário e senha em determinados emails e aplicativos do Microsoft Office no seu dispositivo móvel.
Observação
Como alternativa, as organizações podem implantar a CBA do Microsoft Entra sem precisar de federação. Para obter mais informações, consulte Visão geral de Microsoft Entra autenticação baseada em certificado em relação à ID de Microsoft Entra.
Este tópico:
- Este tópico mostra como configurar e utilizar a CBA para usuários de locatários nos planos Office 365 Enterprise, Business, Education e US Government.
- Pressupõe que você já tem uma infraestrutura de chave pública (PKI) e do AD FS configurada.
Requisitos
Para configurar a CBA com federação, as seguintes instruções precisam ser verdadeiras:
- A CBA com federação tem suporte apenas em ambientes Federados para aplicativos de navegador, clientes nativos que usam autenticação moderna ou bibliotecas MSAL. A exceção é EAS (Exchange Active Sync) para EXO, que pode ser usada para contas gerenciadas e federadas. Para configurar o CBA do Microsoft Entra sem a necessidade de federação, consulte Como configurar a autenticação baseada em certificado do Microsoft Entra.
- A autoridade de certificação raiz e qualquer autoridade de certificação intermediária devem ser configuradas no Microsoft Entra ID.
- Cada autoridade de certificação deve ter uma CRL (Lista de Certificados Revogados) que pode ser referenciada por meio de uma URL para a Internet.
- Você deve ter pelo menos uma autoridade de certificação configurada em Microsoft Entra ID. Você pode encontrar etapas relacionadas na seção Configuração de autoridades de certificação.
- Para clientes do Exchange ActiveSync, o certificado de cliente deve ter o email roteável do usuário no Exchange Online, seja no valor Nome principal ou Nome RFC822 do campo Nome Alternativo da Entidade. O Microsoft Entra ID mapeia o valor de RFC822 para o atributo Endereço de Proxy no diretório.
- O dispositivo do cliente deve ter acesso a pelo menos uma autoridade de certificação que emite certificados de cliente.
- Um certificado de cliente para autenticação de cliente deve ter sido emitido para seu cliente.
Importante
O tamanho máximo de uma CRL para o Microsoft Entra ID a ser baixada com êxito e o armazenada em cache é de 20 MB, e o tempo necessário para baixar a CRL não deve exceder 10 segundos. Se o Microsoft Entra ID não puder baixar uma CRL, as autenticações baseadas em certificado que usarem certificados emitidos pela autoridade de certificação correspondente falharão. As melhores práticas para garantir que os arquivos de CRL estejam dentro das restrições de tamanho são manter os tempos de vida dos certificados dentro dos limites razoáveis e limpar os certificados expirados.
Etapa 1: selecione a plataforma do dispositivo
Para a plataforma do dispositivo sob sua responsabilidade, a primeira etapa é examinar o seguinte:
- O suporte a aplicativos móveis do Office
- Os requisitos específicos de implementação
As informações relacionadas existentes para as seguintes plataformas de dispositivos:
Etapa 2: Configuração de autoridades de certificação
Para configurar as autoridades de certificação no Microsoft Entra ID, carregue o seguinte para cada autoridade de certificação:
- A parte pública do certificado, no formato .cer
- As URLs para a Internet, em que as CRLs (Listas de Certificados Revogados) residem
Veja abaixo o esquema de uma autoridade de certificação:
class TrustedCAsForPasswordlessAuth
{
CertificateAuthorityInformation[] certificateAuthorities;
}
class CertificateAuthorityInformation
{
CertAuthorityType authorityType;
X509Certificate trustedCertificate;
string crlDistributionPoint;
string deltaCrlDistributionPoint;
string trustedIssuer;
string trustedIssuerSKI;
}
enum CertAuthorityType
{
RootAuthority = 0,
IntermediateAuthority = 1
}
Na configuração, você pode usar o PowerShell do Microsoft Graph:
Inicie o Windows PowerShell com os privilégios de administrador.
Instale o PowerShell do Microsoft Graph:
Install-Module Microsoft.Graph
Como essa é a primeira etapa de configuração, você precisa estabelecer uma conexão com seu locatário. Como existe uma conexão com o seu locatário, você pode revisar, adicionar, excluir e modificar autoridades de certificação confiáveis que são definidas em seu diretório.
Conectar
Para estabelecer uma conexão com seu locatário, use Connect-MgGraph:
Connect-MgGraph
Recuperar
Para recuperar as autoridades de certificação confiáveis que são definidas em seu diretório, use Get-MgOrganizationCertificateBasedAuthConfiguration.
Get-MgOrganizationCertificateBasedAuthConfiguration
Para adicionar, modificar ou remover uma AC, use o Centro de administração do Microsoft Entra:
-
Entre no centro de administração do Microsoft Entra como Administrador global.
Navegue até Proteção>Mostrar mais>Central de Segurança (ou Classificação de Segurança de Identidade) >Autoridades de certificação.
Para carregar uma AC, selecione Carregar:
Selecione o arquivo da AC.
Selecione Sim se a AC for um certificado raiz, caso contrário, selecione Não.
Em URL da Lista de Revogação de Certificados, defina a URL voltada para a Internet para a CRL base da AC que contém todos os certificados revogados. Se a URL não estiver definida, a autenticação com certificados revogados não falhará.
Em URL da Lista de Revogação de Certificados Delta, defina a URL voltada para a Internet para a CRL que contém todos os certificados revogados desde que a última CRL base foi publicada.
Selecione Adicionar.
Para excluir um certificado de AC, selecione o certificado e Excluir.
Selecione Colunas para adicionar ou excluir colunas.
Etapa 3: configurar a revogação
Para revogar um certificado do cliente, o Microsoft Entra ID busca a CRL (Lista de Certificados Revogados) nas URLs carregadas como parte das informações da autoridade de certificado e a armazena em cache. O carimbo de data/hora da última publicação (propriedadeEffective Date ) na CRL é usado para garantir que a CRL continua sendo válida. A CRL é referenciada periodicamente para revogar o acesso a certificados que fazem parte da lista.
Se uma revogação mais imediata for necessária (por exemplo, se um usuário perder um dispositivo), o token de autorização do usuário poderá ser invalidado. Para invalidar o token de autorização, defina o campo StsRefreshTokenValidFrom para esse usuário específico usando o Windows PowerShell. Você deve atualizar o campo StsRefreshTokenValidFrom para cada usuário do qual deseja revogar o acesso.
Para garantir que a revogação persista, é preciso definir Effective Date da CRL para uma data posterior ao valor definido por StsRefreshTokenValidFrom e garantir que o certificado em questão esteja na CRL.
Observação
Os módulos Azure AD e MSOnline PowerShell estão preteridos desde 30 de março de 2024. Para saber mais, leia a atualização de preterição. Após essa data, o suporte a esses módulos se limitará à assistência à migração para o SDK do Microsoft Graph PowerShell e às correções de segurança. Os módulos preteridos continuarão funcionando até 30 de março de 2025.
Recomendamos migrar para o Microsoft Graph PowerShell para interagir com o Microsoft Entra ID (antigo Azure AD). Para perguntas comuns sobre migração, consulte as Perguntas Frequentes sobre Migração. Observação: as versões 1.0.x do MSOnline poderão sofrer interrupções após 30 de junho de 2024.
As etapas a seguir descrevem o processo para atualizar e invalidar o token de autorização pela definição do campo StsRefreshTokenValidFrom .
Conecte-se ao PowerShell:
Connect-MgGraph
Recupere o valor StsRefreshTokensValidFrom atual para um usuário:
$user = Get-MsolUser -UserPrincipalName test@yourdomain.com` $user.StsRefreshTokensValidFrom
Configure um novo valor StsRefreshTokensValidFrom para o usuário igual ao carimbo de data/hora atual:
Set-MsolUser -UserPrincipalName test@yourdomain.com -StsRefreshTokensValidFrom ("03/05/2021")
A data que você define deve estar no futuro. Se a data não estiver no futuro, a propriedade StsRefreshTokensValidFrom não será definida. Se a data estiver no futuro, StsRefreshTokensValidFrom será definida para a hora atual (não a data indicada pelo comando Set-MsolUser).
Etapa 4: testar a sua configuração
Teste do seu certificado
Como primeiro teste de configuração, entre no Outlook Web Access ou no SharePoint Online usando seu navegador no dispositivo.
Se a entrada for bem-sucedida, você saberá que:
- O certificado de usuário foi provisionado para o seu dispositivo de teste
- O AD FS está configurado corretamente
Testando aplicativos móveis do Office
- No seu dispositivo de teste, instale um aplicativo móvel do Office (por exemplo, OneDrive).
- Inicie o aplicativo.
- Insira seu nome de usuário e escolha o certificado de usuário que deseja usar.
Você deve se conectar com êxito.
Testando aplicativos cliente do Exchange ActiveSync
Para acessar o Exchange ActiveSync (EAS) por meio da autenticação baseada em certificado, um perfil do EAS que contém o certificado de cliente deve estar disponível para o aplicativo.
O perfil do EAS deve conter as seguintes informações:
O certificado do usuário a ser usado para autenticação
O ponto de extremidade do EAS (por exemplo, outlook.office365.com)
Um perfil do EAS pode ser configurado e colocado no dispositivo por meio da utilização de um gerenciamento de dispositivo móvel (MDM), como o Microsoft Intune, ou colocando o certificado manualmente no perfil do EAS no dispositivo.
Testando os aplicativos cliente do EAS no Android
- Configure um perfil EAS no aplicativo que atenda aos requisitos da seção anterior.
- Abra o aplicativo e verifique a sincronização de email.
Próximas etapas
Informações adicionais sobre autenticação baseada em certificado nos dispositivos Android.
Informações adicionais sobre autenticação baseada em certificado nos dispositivos iOS.