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 a ID do Microsoft Entra autentique você com um certificado de cliente em um dispositivo Windows, Android ou iOS ao conectar sua conta online do Exchange a:
- Aplicativos móveis da Microsoft, como o Microsoft Outlook e o Microsoft Word
- Clientes do EAS (Exchange ActiveSync)
Configurar esse recurso elimina a necessidade de inserir uma combinação de nome de usuário e senha em determinados aplicativos de email e do Microsoft Office em seu dispositivo móvel.
Nota
Como alternativa, as organizações podem implantar o Microsoft Entra CBA sem precisar de federação. Para obter mais informações, confira Visão geral da autenticação por certificados do Microsoft Entra no Microsoft Entra ID.
Este tópico:
- Fornece etapas para configurar e utilizar a CBA para usuários de inquilinos nos planos do Office 365 Enterprise, Business, Education e Governo dos EUA.
- 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 só tem suporte para ambientes federados para aplicativos de navegador, clientes nativos usando autenticação moderna ou bibliotecas MSAL. A única exceção é o EAS (Exchange Active Sync) para o Exchange Online (EXO), que pode ser usado para contas federadas e gerenciadas. Para configurar o Microsoft Entra CBA sem precisar de federação, consulte Como configurar a autenticação baseada em certificado do Microsoft Entra.
- A autoridade de certificação raiz e todas as autoridades de certificação intermediárias devem ser configuradas na ID do Microsoft Entra.
- Cada autoridade de certificação deve ter uma CRL (lista de certificados revogados) que possa ser referenciada por meio de uma URL voltada para a Internet.
- Você deve ter pelo menos uma autoridade de certificação configurada na ID do Microsoft Entra. Você pode encontrar etapas relacionadas na seção Configurar as autoridades de certificação.
- Para clientes do Exchange ActiveSync, o certificado de cliente deve ter o endereço de email roteável do usuário no Exchange Online, seja no valor Nome principal ou Nome RFC822 do campo Nome Alternativo da Entidade. O ID do Microsoft Entra mapeia o valor RFC822 para o atributo Proxy Address no diretório.
- Seu dispositivo cliente deve ter acesso a pelo menos uma autoridade de certificação que emita certificados de cliente.
- Um certificado de cliente para autenticação de cliente deve ter sido emitido para o cliente.
Importante
O tamanho máximo de uma CRL para o Microsoft Entra ID baixar e armazenar em cache com êxito é de 20MB, e o tempo necessário para baixar a CRL não deve exceder 10 segundos. Se a ID do Microsoft Entra não puder baixar uma CRL, as autenticações baseadas em certificado usando certificados emitidos pela AC correspondente falharão. As práticas recomendadas para garantir que os arquivos CRL estejam dentro das restrições de tamanho são manter o tempo de vida do certificado dentro dos limites razoáveis e limpar certificados expirados.
Etapa 1: Selecionar sua plataforma de dispositivo
Como primeira etapa, para a plataforma de dispositivo do seu interesse, você precisa revisar o seguinte:
- Suporte a aplicativos móveis do Office
- Os requisitos de implementação específicos
As informações relacionadas existem para as seguintes plataformas de dispositivo:
Etapa 2: Configurar as autoridades de certificação
Para configurar as autoridades de certificação no Microsoft Entra ID, para cada autoridade de certificação, carregue o seguinte:
- A parte pública do certificado, no formato .cer
- As URLs voltadas para a Internet em que residem as CRLs (Listas de Revogação de Certificados)
O esquema de uma autoridade de certificação tem a seguinte aparência:
class TrustedCAsForPasswordlessAuth
{
CertificateAuthorityInformation[] certificateAuthorities;
}
class CertificateAuthorityInformation
{
CertAuthorityType authorityType;
X509Certificate trustedCertificate;
string crlDistributionPoint;
string deltaCrlDistributionPoint;
string trustedIssuer;
string trustedIssuerSKI;
}
enum CertAuthorityType
{
RootAuthority = 0,
IntermediateAuthority = 1
}
Para a configuração, você pode usar do Microsoft Graph PowerShell:
Inicie o Windows PowerShell com privilégios de administrador.
Instale Microsoft Graph PowerShell:
Install-Module Microsoft.Graph
Como uma primeira etapa de configuração, você precisa estabelecer uma conexão com seu locatário. Assim que houver uma conexão com seu locatário, você poderá examinar, adicionar, excluir e modificar as autoridades de certificação confiáveis 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 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 enviar uma CA, selecione Enviar:
Selecione o arquivo CA.
Selecione Sim se a AC for um certificado raiz, caso contrário, selecione Não.
Em URL da Lista de Certificados Revogados, 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 Certificados Revogados 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 autoridade de certificação, selecione o certificado e selecione Excluir.
Selecione Colunas para adicionar ou excluir colunas.
Etapa 3: Configurar revogação
Para revogar um certificado de cliente, o Microsoft Entra ID busca a CRL (lista de certificados revogados) das URLs carregadas como parte das informações da autoridade de certificação e a armazena em cache. O carimbo de data/hora da última publicação (propriedade Effective 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 instantânea 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 para o 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.
Nota
Os módulos do Azure AD e do MSOnline PowerShell são preteridos a partir de 30 de março de 2024. Para saber mais, leia a atualização de preterição. Após essa data, o suporte para esses módulos é limitado à assistência de migração para o SDK do Microsoft Graph PowerShell e correções de segurança. Os módulos preteridos continuarão funcionando até março de 30 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
As etapas a seguir descrevem o processo de atualização e invalidação do token de autorização definindo o campo StsRefreshTokenValidFrom.
Conecte-se ao PowerShell:
Connect-MgGraph
Recupere o valor atual de StsRefreshTokensValidFrom para um usuário:
$user = Get-MsolUser -UserPrincipalName test@yourdomain.com` $user.StsRefreshTokensValidFrom
Configure um novo valor para StsRefreshTokensValidFrom para o usuário, igual ao timestamp atual.
Set-MsolUser -UserPrincipalName test@yourdomain.com -StsRefreshTokensValidFrom ("03/05/2021")
A data que você definiu 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á definido como a hora atual (não a data indicada pelo comando Set-MsolUser).
Etapa 4: Testar sua configuração
Testando seu certificado
Como um primeiro teste de configuração, você deve tentar entrar no do Outlook Web Access ou do SharePoint Online usando seu navegador no dispositivo.
Se sua entrada for bem-sucedida, você saberá que:
- O certificado do usuário foi provisionado para seu dispositivo de teste
- O AD FS está configurado corretamente
Testando aplicativos móveis do Office
- Em seu dispositivo de teste, instale um aplicativo móvel do Office (por exemplo, OneDrive).
- Inicie o aplicativo.
- Insira seu nome de usuário e selecione o certificado de usuário que você deseja usar.
Você deve ter efetuado login com sucesso.
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 do 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 endpoint do EAS (por exemplo, outlook.office365.com)
Um perfil do EAS pode ser configurado e colocado no dispositivo por meio da utilização do MDM (gerenciamento de dispositivo móvel), como o Microsoft Intune ou colocando manualmente o certificado no perfil do EAS no dispositivo.
Testando aplicativos cliente do EAS no Android
- Configure um perfil do EAS no aplicativo que atenda aos requisitos na seção anterior.
- Abra o aplicativo e verifique se o email está sincronizando.
Próximas etapas
Informações adicionais sobre autenticação baseada em certificado em dispositivos Android.
Informações adicionais sobre a autenticação baseada em certificado em dispositivos iOS.