Share via


Manter o certificado OAuth Exchange Server

Informações gerais

Esta documentação descreve as etapas necessárias para girar o Certificado de Autenticação Exchange Server sem interromper o serviço exchange e antes que o atual expire.

Dica

Você também pode usar o script MonitorExchangeAuthCertificate . Ele executa as etapas necessárias para girar o certificado OAuth automaticamente. Ele também pode ajudá-lo a substituir o certificado OAuth se ele já tiver expirado.

A Configuração de Auth e o Certificado de Auth são usados pelo servidor do Microsoft Exchange para habilitar a autenticação servidor a servidor usando o padrão de protocolo OAuth (Autorização Aberta). Você pode encontrar mais informações sobre ele no seguinte artigo: Planejar a integração do Exchange com o SharePoint e Skype for Business

O Certificado de Auth também é usado por vários recursos de segurança Exchange Server.

Durante a instalação do primeiro servidor exchange, a rotina de instalação gera um certificado autoassinado com o nome Microsoft Exchange Server Auth Certificateamigável , que é adicionado a uma nova Configuração de Auth. Esse certificado é replicado automaticamente para todos os servidores front-end na organização do Exchange. O servicelet de certificado exchange executa a replicação, que faz parte do MSExchangeServiceHost processo. Se você adicionar mais servidores à sua organização do Exchange, o servicelet cuidará da replicação do certificado para todos os servidores do Exchange, que foram adicionados à organização.

O certificado, configurado como Certificado de Auth atual, pode ser consultado executando a seguinte consulta do PowerShell (deve ser executada no Shell de Gerenciamento do Exchange):

(Get-AuthConfig).CurrentCertificateThumbprint | Get-ExchangeCertificate | Format-List Subject, Thumbprint, NotAfter, NotBefore

Se a chamada falhar com o aviso a seguir, significa que o Certificado de Auth atual está ausente no servidor.

A special Rpc error occurs on server <Servername>: The certificate with thumbprint <AuthCertificateThumbprint> was not found.

Siga as instruções mencionadas na seção "Quais são as etapas a seguir se o certificado atual já expirou ou está ausente" para corrigir.

O certificado, que está configurado como próximo Certificado de Auth, pode ser consultado da seguinte maneira:

(Get-AuthConfig).NextCertificateThumbprint | Get-ExchangeCertificate | Format-List Subject, Thumbprint, NotAfter, NotBefore

Se a chamada falhar com o mesmo aviso do Certificado de Auth atual, significa que o próximo Certificado de Auth não está configurado ou está ausente no servidor.

Siga as instruções descritas no "Como girar o Exchange Server Certificado de Auth" se o Certificado de Auth atual estiver prestes a expirar.

Quais são as etapas a seguir se o certificado atual já expirou ou está ausente?

Nesse caso, é necessário substituir imediatamente o antigo Certificado de Auth por um novo. Siga as instruções descritas na seção resoluções do seguinte artigo de suporte: não é possível entrar no Outlook na Web ou no EAC se Exchange Server certificado OAuth expirar

Como girar o Certificado de Auth Exchange Server

É importante substituir o Certificado de Auth ativo por um novo, antes de expirar. Isso garante uma transição suave para um novo certificado sem interromper o serviço exchange. Você pode seguir as etapas abaixo para preparar e encenar um novo Certificado de Auth.

Importante

Verifique se você tem a CU (Atualização Cumulativa) Exchange Server mais recente instalada porque ela contém correções que afetam o recurso do Exchange correspondente.

  1. Gere um novo Certificado de Auth executando o seguinte comando:

    $newAuthCertificate = New-ExchangeCertificate -KeySize 2048 -PrivateKeyExportable $true -SubjectName "cn=Microsoft Exchange Server Auth Certificate" -FriendlyName "Microsoft Exchange Server Auth Certificate" -DomainName @()
    
  2. Não substitua o certificado SMTP padrão existente (Digite 'N' e pressione enter):

    Confirm
    Overwrite the existing default SMTP certificate?
    
    Current certificate: '<DefaultSMTPCertificateThumbprint>' (expires 12/30/2027 2:39:08 PM)
    Replace it with certificate: '<NewCertificateThumbprint>' (expires 1/5/2028 9:04:48 AM)
    [Y] Yes  [A] Yes to All  [N] No  [L] No to All  [?] Help (default is "Y"): N
    
  3. Configure o Certificado de Autenticação para se tornar o novo ativo em 49 horas, no mínimo:

    Set-AuthConfig -NewCertificateThumbprint $newAuthCertificate.Thumbprint -NewCertificateEffectiveDate (Get-Date).AddHours(49)
    

Observação

Dependendo do tamanho da sua organização do Exchange, pode levar algum tempo para que o novo Certificado de Auth seja implantado em todos os servidores do Exchange. Nossa recomendação é planejar pelo menos 48 horas antes que o Certificado de Auth recém-gerado fique ativo.

O servicelet exchange AuthAdmin, que também faz parte do MSExchangeServiceHost processo, é responsável pelo processo final de publicação do Certificado de Autenticação. O servicelet será executado imediatamente se o MSExchangeServiceHost serviço for reiniciado. Posteriormente, ele é executado a cada 12 horas e, se detectar que o NewCertificateEffectiveDate foi atingido, ele publicará o novo Certificado de Auth para torná-lo o novo ativo.

Você pode consultar o último runtime do servicelet AuthAdmin executando os seguintes cmdlets do PowerShell:

[xml]$xml = Get-ExchangeDiagnosticInfo -Process "Microsoft.Exchange.ServiceHost"
$xml.Diagnostics.Components.AnchorApplication.AnchorServiceComponents.CacheScheduler.lastRunTime

Cada execução do servicelet AuthAdmin é registrada no seguinte diretório: <ExchangeInstallPath>\Logging\AuthAdminLogs

O servicelet gera uma nova entrada de log de eventos quando a rotação do Certificado de Auth é concluída com êxito:

Log Name:      Application
Source:        MSExchange AuthAdmin
Date:          12/29/2022 5:56:13 AM
Event ID:      2014
Task Category: General
Level:         Information
Keywords:      Classic
User:          N/A
Description:   The current signing certificate for Exchange has been updated to certificate with thumbprint <NewExchangeCertificateThumbprint>.

Observação

Para garantir que o servicelet AuthAdmin possa ser iniciado, você deve habilitar o AuthAdminReadSession quando os Servidores do Exchange estiverem instalados em um domínio filho e a caixa de correio do sistema estiver localizada no domínio raiz. Caso contrário, o servicelet AuthAdmin não poderá ser iniciado.

Set-OrganizationConfig -EnableAuthAdminReadSession:$true

Perguntas frequentes

Pergunta: É necessário executar novamente o HCW (Assistente de Configuração Híbrida) depois que o Certificado de Auth for substituído?

Resposta: Sim, é altamente recomendável executar o HCW (Assistente de Configuração Híbrida) depois que o Certificado de Auth ativo for substituído.

Pergunta: O que devo fazer se o novo Certificado de Auth estiver ausente em um servidor do Exchange em um site do AD (Active Directory) diferente?

Resposta: Você pode exportar o certificado usando o cmdlet Export-ExchangeCertificate e importá-lo por meio do Import-ExchangeCertificate em um servidor no outro site do AD. O servicelet de certificado cuida da replicação para os servidores do Exchange restantes localizados no site do AD.