Partilhar via


Como configurar a Autenticação do Windows para o Microsoft Entra ID com o fluxo baseado na confiança de entrada

Este artigo descreve como implementar o fluxo de autenticação baseada em confiança de entrada para permitir que clientes ingressados no Ative Directory (AD) que executam o Windows 10, Windows Server 2012 ou versões superiores do Windows se autentiquem em uma Instância Gerenciada SQL do Azure usando a Autenticação do Windows.

Este artigo também inclui etapas para girar uma Chave Kerberos para sua conta de serviço no Microsoft Entra ID (anteriormente Azure Ative Directory) e Objeto de Domínio Confiável, e etapas para remover um Objeto de Domínio Confiável e todas as configurações Kerberos, se desejado.

Habilitar o fluxo de autenticação baseado em confiança de entrada é uma etapa na configuração da Autenticação do Windows para a Instância Gerenciada SQL do Azure usando a ID do Microsoft Entra e o Kerberos. O fluxo interativo moderno está disponível para clientes habilitados que executam o Windows 10 20H1, Windows Server 2022 ou uma versão superior do Windows.

Nota

Microsoft Entra ID é o novo nome para o Azure Ative Directory (Azure AD). Estamos atualizando a documentação neste momento.

Permissões

Para concluir as etapas descritas neste artigo, você precisa:

  • Um nome de usuário e senha de administrador do Ative Directory local.
  • Nome de utilizador e palavra-passe da conta Microsoft Entra Global Administrator.

Pré-requisitos

Para implementar o fluxo de autenticação baseado em confiança de entrada, primeiro, verifique se os seguintes pré-requisitos foram atendidos:

Pré-requisito Descrição
O cliente tem de ter o Windows 10, o Windows Server 2012 ou uma versão superior do Windows.
Os clientes têm de estar associados ao AD. O domínio tem de ter um nível funcional do Windows Server 2012 ou superior. Pode determinar se o cliente está associado ao AD ao executar o comando dsregcmd: dsregcmd.exe /status
Módulo de Gestão da Autenticação Híbrida do Azure Active Directory. Este módulo do PowerShell disponibiliza funcionalidades de gestão para a configuração no local.
Inquilino do Azure.
A subscrição do Azure tem de estar no mesmo inquilino do Microsoft Entra que quer utilizar na autenticação.
Microsoft Entra Connect instalado. Ambientes híbridos onde existem identidades no Microsoft Entra ID e no AD.

Criar e configurar o Objeto de Domínio Confiável Kerberos do Microsoft Entra

Para criar e configurar o Objeto de Domínio Confiável Kerberos do Microsoft Entra, instale o módulo PowerShell de Gerenciamento de Autenticação Híbrida do Azure AD.

Em seguida, você usará o módulo PowerShell de Gerenciamento de Autenticação Híbrida do Azure AD para configurar um Objeto de Domínio Confiável no domínio do AD local e registrar informações de confiança com a ID do Microsoft Entra. Isso cria uma relação de confiança de entrada no AD local, que permite que o Microsoft Entra ID confie no AD local.

Configurar o objeto de domínio confiável

Para configurar o Objeto de Domínio Confiável, primeiro instale o módulo PowerShell de Gerenciamento de Autenticação Híbrida do Azure AD.

Instalar o módulo PowerShell de Gerenciamento de Autenticação Híbrida do Azure AD

  1. Inicie uma sessão do Windows PowerShell com a opção Executar como administrador .

  2. Instale o módulo PowerShell de Gerenciamento de Autenticação Híbrida do Azure AD usando o script a seguir. O script:

    • Habilita o TLS 1.2 para comunicação.
    • Instala o provedor de pacotes NuGet.
    • Registra o repositório PSGallery.
    • Instala o módulo PowerShellGet.
    • Instala o módulo PowerShell de Gerenciamento de Autenticação Híbrida do Azure AD.
      • O PowerShell de Gerenciamento de Autenticação Híbrida do Azure AD usa o módulo AzureADPreview, que fornece o recurso avançado de gerenciamento do Microsoft Entra.
      • Para proteger contra conflitos de instalação desnecessários com o módulo Azure AD PowerShell, este comando inclui o sinalizador de opção –AllowClobber.
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12

Install-PackageProvider -Name NuGet -Force

if (@(Get-PSRepository | ? {$_.Name -eq "PSGallery"}).Count -eq 0){
    Register-PSRepository -DefaultSet-PSRepository -Name "PSGallery" -InstallationPolicy Trusted
}

Install-Module -Name PowerShellGet -Force

Install-Module -Name AzureADHybridAuthenticationManagement -AllowClobber

Criar o objeto de domínio confiável

  1. Inicie uma sessão do Windows PowerShell com a opção Executar como administrador .

  2. Defina os parâmetros comuns. Personalize o script abaixo antes de executá-lo.

    • Defina o $domain parâmetro como seu nome de domínio do Ative Directory local.
    • Quando solicitado pelo Get-Credential, insira um nome de usuário e uma senha de administrador do Ative Directory local.
    • Defina o parâmetro como o nome de usuário de uma conta privilegiada de Administrador Global para acesso à $cloudUserName nuvem do Microsoft Entra.

    Nota

    Se desejar usar sua conta de login atual do Windows para seu acesso ao Ative Directory local, ignore a etapa em que as $domainCred credenciais são atribuídas ao parâmetro. Se você adotar essa abordagem, não inclua o -DomainCredential parâmetro nos comandos do PowerShell seguindo esta etapa.

    $domain = "your on-premesis domain name, for example contoso.com"
    
    $domainCred = Get-Credential
    
    $cloudUserName = "Azure AD user principal name, for example admin@contoso.onmicrosoft.com"
    
  3. Verifique as configurações de domínio Kerberos atuais.

    Execute o seguinte comando para verificar as configurações Kerberos atuais do seu domínio:

    Get-AzureAdKerberosServer -Domain $domain `
        -DomainCredential $domainCred `
        -UserPrincipalName $cloudUserName
    

    Se esta for a primeira vez que chamará qualquer comando do Microsoft Entra Kerberos, você será solicitado para o acesso à nuvem do Microsoft Entra.

    • Introduza a palavra-passe da sua conta de Administrador Global do Microsoft Entra.
    • Se a sua organização usa outros métodos de autenticação modernos, como a autenticação multifator Microsoft Entra ou o Smart Card, siga as instruções solicitadas para entrar.

    Se esta for a primeira vez que você estiver definindo as configurações do Microsoft Entra Kerberos, o cmdlet Get-AzureAdKerberosServer exibirá informações vazias, como na saída de exemplo a seguir:

    ID                  :
    UserAccount         :
    ComputerAccount     :
    DisplayName         :
    DomainDnsName       :
    KeyVersion          :
    KeyUpdatedOn        :
    KeyUpdatedFrom      :
    CloudDisplayName    :
    CloudDomainDnsName  :
    CloudId             :
    CloudKeyVersion     :
    CloudKeyUpdatedOn   :
    CloudTrustDisplay   :
    

    Se o seu domínio já oferecer suporte à autenticação FIDO, o cmdlet exibirá as informações da Get-AzureAdKerberosServer conta de serviço do Microsoft Entra, como na saída de exemplo a seguir. O CloudTrustDisplay campo retorna um valor vazio.

    ID                  : 25614
    UserAccount         : CN=krbtgt-AzureAD, CN=Users, DC=aadsqlmi, DC=net
    ComputerAccount     : CN=AzureADKerberos, OU=Domain Controllers, DC=aadsqlmi, DC=net
    DisplayName         : krbtgt_25614
    DomainDnsName       : aadsqlmi.net
    KeyVersion          : 53325
    KeyUpdatedOn        : 2/24/2022 9:03:15 AM
    KeyUpdatedFrom      : ds-aad-auth-dem.aadsqlmi.net
    CloudDisplayName    : krbtgt_25614
    CloudDomainDnsName  : aadsqlmi.net
    CloudId             : 25614
    CloudKeyVersion     : 53325
    CloudKeyUpdatedOn   : 2/24/2022 9:03:15 AM
    CloudTrustDisplay   :
    
  4. Adicione o objeto de domínio confiável.

    Execute o cmdlet Set-AzureAdKerberosServer PowerShell para adicionar o Objeto de Domínio Confiável. Certifique-se de incluir -SetupCloudTrust o parâmetro. Se não houver uma conta de serviço do Microsoft Entra, esse comando criará uma nova conta de serviço do Microsoft Entra. Este comando só criará o objeto Domínio Confiável solicitado se houver uma conta de serviço do Microsoft Entra.

    Set-AzureADKerberosServer -Domain $domain -UserPrincipalName $cloudUserName -DomainCredential $domainCred -SetupCloudTrust
    

    Nota

    Em uma floresta de vários domínios, para evitar o erro LsaCreateTrustedDomainEx 0x549 ao executar o comando em um domínio filho:

    1. Execute o comando no domínio raiz (parâmetro include -SetupCloudTrust ).
    2. Execute o mesmo comando no domínio filho sem o -SetupCloudTrust parâmetro.

    Depois de criar o Objeto de Domínio Confiável, você pode verificar as Configurações Kerberos atualizadas usando o Get-AzureAdKerberosServer cmdlet PowerShell, conforme mostrado na etapa anterior. Se o cmdlet tiver sido executado com êxito com o parâmetro, o Set-AzureAdKerberosServer -SetupCloudTrust CloudTrustDisplay campo deverá retornar Microsoft.AzureAD.Kdc.Service.TrustDisplay, como na saída de exemplo a seguir:

    ID                  : 25614
    UserAccount         : CN=krbtgt-AzureAD, CN=Users, DC=aadsqlmi, DC=net
    ComputerAccount     : CN=AzureADKerberos, OU=Domain Controllers, DC=aadsqlmi, DC=net
    DisplayName         : krbtgt_25614
    DomainDnsName       : aadsqlmi.net
    KeyVersion          : 53325
    KeyUpdatedOn        : 2/24/2022 9:03:15 AM
    KeyUpdatedFrom      : ds-aad-auth-dem.aadsqlmi.net
    CloudDisplayName    : krbtgt_25614
    CloudDomainDnsName  : aadsqlmi.net
    CloudId             : 25614
    CloudKeyVersion     : 53325
    CloudKeyUpdatedOn   : 2/24/2022 9:03:15 AM
    CloudTrustDisplay   : Microsoft.AzureAD.Kdc.Service.TrustDisplay
    

    Nota

    As nuvens soberanas do Azure exigem a configuração da TopLevelNames propriedade, que é definida por windows.net padrão. As implantações de nuvem soberana do Azure da Instância Gerenciada do SQL usam um nome de domínio de nível superior diferente, como usgovcloudapi.net para o Azure US Government. Defina seu Objeto de Domínio Confiável para esse nome de domínio de nível superior usando o seguinte comando do PowerShell: Set-AzureADKerberosServer -Domain $domain -DomainCredential $domainCred -CloudCredential $cloudCred -SetupCloudTrust -TopLevelNames "usgovcloudapi.net,windows.net". Você pode verificar a configuração com o seguinte comando do PowerShell: Get-AzureAdKerberosServer -Domain $domain -DomainCredential $domainCred -UserPrincipalName $cloudUserName | Select-Object -ExpandProperty CloudTrustDisplay.

Configurar o GPO (Objeto de Política de Grupo)

  1. Identifique sua ID de locatário do Microsoft Entra.

  2. Implante a seguinte configuração de Diretiva de Grupo em máquinas cliente usando o fluxo de entrada baseado em confiança:

    1. Edite a configuração de política Modelos Administrativos\Sistema\Kerberos\Especificar servidores proxy KDC para clientes Kerberos.

    2. Selecione Ativado.

    3. Em Opções, selecione Mostrar.... Isso abre a caixa de diálogo Mostrar conteúdo.

      Screenshot of dialog box to enable 'Specify KDC proxy servers for Kerberos clients'. The 'Show Contents' dialog allows input of a value name and the related value.

    4. Defina as configurações dos servidores proxy KDC usando mapeamentos da seguinte maneira. Substitua sua ID de locatário do your_Azure_AD_tenant_id Microsoft Entra pelo espaço reservado. Observe o espaço a seguir https e antes do fechamento / no mapeamento de valores.

      Nome do valor valor
      KERBEROS.MICROSOFTONLINE.COM <https login.microsoftonline.com:443:your_Azure_AD_tenant_id/kerberos />

      Screenshot of the 'Define KDC proxy server settings' dialog box. A table allows input of multiple rows. Each row consists of a value name and a value.

    5. Selecione OK para fechar a caixa de diálogo 'Mostrar conteúdo'.

    6. Selecione Aplicar na caixa de diálogo 'Especificar servidores proxy KDC para clientes Kerberos'.

Girar a chave Kerberos

Você pode alternar periodicamente a Chave Kerberos para a conta de serviço Microsoft Entra criada e o Objeto de Domínio Confiável para fins de gerenciamento.

Set-AzureAdKerberosServer -Domain $domain `
   -DomainCredential $domainCred `
   -UserPrincipalName $cloudUserName -SetupCloudTrust `
   -RotateServerKey

Depois que a chave é girada, leva várias horas para propagar a chave alterada entre os servidores KDC Kerberos. Devido a este tempo de distribuição de chaves, você pode girar a chave uma vez dentro de 24 horas. Se você precisar girar a chave novamente dentro de 24 horas por qualquer motivo, por exemplo, logo após a criação do Objeto de Domínio Confiável, você pode adicionar o -Force parâmetro:

Set-AzureAdKerberosServer -Domain $domain `
   -DomainCredential $domainCred `
   -UserPrincipalName $cloudUserName -SetupCloudTrust `
   -RotateServerKey -Force

Remover o objeto de domínio confiável

Você pode remover o Objeto de Domínio Confiável adicionado usando o seguinte comando:

Remove-AzureADKerberosTrustedDomainObject -Domain $domain `
   -DomainCredential $domainCred `
   -UserPrincipalName $cloudUserName

Este comando removerá apenas o Objeto de Domínio Confiável. Se o seu domínio suportar a autenticação FIDO, pode remover o Objeto de Domínio Fidedigno enquanto mantém a conta de serviço Microsoft Entra necessária para o serviço de autenticação FIDO.

Remover todas as configurações do Kerberos

Você pode remover a conta de serviço do Microsoft Entra e o objeto de domínio confiável usando o seguinte comando:

Remove-AzureAdKerberosServer -Domain $domain `
   -DomainCredential $domainCred `
   -UserPrincipalName $cloudUserName

Próximos passos

Saiba mais sobre como implementar a Autenticação do Windows para entidades do Microsoft Entra na Instância Gerenciada SQL do Azure: