Condividi tramite


Come configurare l'autenticazione Windows per ID Microsoft Entra con il flusso basato sull'attendibilità in ingresso

Questo articolo descrive come implementare il flusso di autenticazione basata su attendibilità in ingresso per consentire ai client aggiunti ad Active Directory (AD) che eseguono Windows 10, Windows Server 2012 o versioni successive di Windows di eseguire l'autenticazione a un'Istanza gestita di SQL di Azure tramite l'autenticazione di Windows.

Questo articolo include anche i passaggi per ruotare una chiave Kerberos per l'account del servizio in Microsoft Entra ID (in precedenza Azure Active Directory) e un oggetto di dominio attendibile e i passaggi per rimuovere un oggetto di dominio attendibile e tutte le impostazioni Kerberos, se necessario.

L'abilitazione del flusso di autenticazione basato su attendibilità è un passaggio nella configurazione dell'autenticazione di Windows per Istanza gestita di SQL di Azure tramite Microsoft Entra ID e Kerberos. Il flusso interattivo moderno è disponibile per i client con riconoscimento dei dati che eseguono Windows 10 20H1, Windows Server 2022 o una versione successiva di Windows.

Nota

Microsoft Entra ID era precedentemente conosciuto come Azure Active Directory (Azure AD).

Autorizzazioni

Per completare i passaggi di questo articolo sono necessari:

  • Nome utente e password dell'amministratore Active Directory locale.
  • Nome utente e password dell'account da amministratore Microsoft Entra Global.

Prerequisiti

Per implementare il flusso di autenticazione basata sull'attendibilità in ingresso, verificare innanzitutto che siano stati soddisfatti i prerequisiti seguenti:

Prerequisito Descrizione
I client devono eseguire Windows 10, Windows Server 2012 o una versione successiva di Windows.
I client devono avere un join ad AD. Il dominio deve avere un livello funzionale di Windows Server 2012 o successivo. È possibile determinare se il client ha un join ad AD eseguendo il comando dsregcmd: dsregcmd.exe /status
Modulo di gestione dell'autenticazione ibrida di Azure AD. Questo modulo di PowerShell offre funzionalità di gestione per la configurazione locale.
Tenant di Azure.
Sottoscrizione di Azure nello stesso tenant di Microsoft Entra che si prevede di usare per l'autenticazione.
Connessione Microsoft Entra installato. Ambienti ibridi in cui esistono identità sia in ID che in AD Microsoft Entra.

Creare e configurare l'oggetto di dominio attendibile Kerberos di Microsoft Entra

Per creare e configurare l'oggetto di dominio attendibile Microsoft Entra Kerberos, installare il modulo PowerShell di Gestione autenticazione ibrida di Azure AD.

Si userà quindi il modulo PowerShell di Gestione autenticazione ibrida di Azure AD per configurare un oggetto dominio attendibile nel dominio AD locale e registrare le informazioni di attendibilità con Microsoft Entra ID. In questo modo viene creata una relazione di attendibilità associata in AD in locale, che consente a Microsoft Entra ID di considerare attendibile AD in locale.

Configurare l'oggetto di dominio attendibile

Per configurare l'oggetto di dominio attendibile, installare innanzitutto il modulo PowerShell di Gestione autenticazione ibrida di Azure AD.

Installare il modulo PowerShell di Gestione autenticazione ibrida di Azure AD

  1. Avviare una sessione di Windows PowerShell con l'opzione Esegui come amministratore .

  2. Installare il modulo PowerShell di Gestione autenticazione ibrida di Azure AD usando lo script seguente. Lo script:

    • Abilita TLS 1.2 per la comunicazione.
    • Installa il provider di pacchetti NuGet.
    • Registra il repository PSGallery.
    • Installa il modulo PowerShellGet.
    • Installa il modulo PowerShell di Gestione autenticazione ibrida di Azure AD.
      • Il modulo PowerShell di Gestione autenticazione ibrida di Azure AD usa il modulo AzureADPreview, che fornisce funzionalità avanzate di gestione di Microsoft Entra.
      • Per proteggersi da conflitti di installazione non necessari con il modulo Azure AD PowerShell, questo comando include il flag di opzione –AllowClobber.
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12

Install-PackageProvider -Name NuGet -Force

if (@(Get-PSRepository | Where-Object { $_.Name -eq "PSGallery" }).Count -eq -1) {
    Register-PSRepository -Default
    Set-PSRepository -Name "PSGallery" -InstallationPolicy Trusted
}

Install-Module -Name PowerShellGet -Force

Install-Module -Name AzureADHybridAuthenticationManagement -AllowClobber

Creare l'oggetto di dominio attendibile

  1. Avviare una sessione di Windows PowerShell con l'opzione Esegui come amministratore .

  2. Impostare i parametri comuni. Personalizzare lo script seguente prima di eseguirlo.

    • Impostare il parametro $domain sul nome di dominio Active Directory locale.
    • Quando richiesto da Get-Credential, immettere un nome utente e una password Active Directory locale amministratore.
    • Impostare il parametro $cloudUserName sul nome utente di un account con privilegi di amministratore globale per l'accesso al cloud Microsoft Entra.

    Nota

    Se si vuole usare l'account di accesso di Windows corrente per l'accesso Active Directory locale, è possibile ignorare il passaggio in cui vengono assegnate le credenziali al parametro $domainCred. Se si usa questo approccio, non includere il -DomainCredential parametro nei comandi di PowerShell che seguono questo passaggio.

    $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. Controllare le Impostazioni di dominio Kerberos corrente.

    Eseguire il comando seguente per controllare le impostazioni Kerberos correnti del dominio:

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

    Se questa è la prima volta che si chiama un comando Kerberos di Microsoft Entra, viene richiesto l'accesso al cloud Microsoft Entra.

    • Immettere la password per l'account da amministratore Microsoft Entra Global.
    • Se l'organizzazione usa altri metodi di autenticazione moderni, ad esempio l'autenticazione a più fattori Microsoft Entra o smart card, seguire le istruzioni richieste per l'accesso.

    Se questa è la prima volta che si configurano le impostazioni Kerberos di Microsoft Entra, il cmdlet Get-AzureAdKerberosServer visualizza informazioni vuote, come nell'output di esempio seguente:

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

    Se il dominio supporta già l'autenticazione FIDO, il cmdlet Get-AzureAdKerberosServer visualizza le informazioni sull'account del servizio Microsoft Entra, come nell'output di esempio seguente. Il campo CloudTrustDisplay restituisce un valore vuoto.

    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. Aggiungere l'oggetto di dominio attendibile.

    Eseguire il cmdlet Set-AzureAdKerberosServer PowerShell per aggiungere l'oggetto di dominio attendibile. Assicurarsi di includere il parametro -SetupCloudTrust. Se non è presente alcun account del servizio Microsoft Entra, questo comando crea un nuovo account del servizio Microsoft Entra. Questo comando crea l'oggetto Dominio attendibile richiesto solo se è presente un account del servizio Microsoft Entra.

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

    Nota

    In un forest a più domini, per evitare l'errore LsaCreateTrustedDomainEx 0x549 quando si esegue il comando in un dominio figlio:

    1. Eseguire il comando nel dominio radice (include il parametro -SetupCloudTrust).
    2. Eseguire lo stesso comando nel dominio figlio senza il parametro -SetupCloudTrust.

    Dopo aver creato l'oggetto di dominio attendibile, è possibile controllare le Impostazioni Kerberos aggiornate usando il cmdlet Get-AzureAdKerberosServer di PowerShell, come illustrato nel passaggio precedente. Se il Set-AzureAdKerberosServer cmdlet è stato eseguito correttamente con il -SetupCloudTrust parametro , il CloudTrustDisplay campo dovrebbe ora restituire Microsoft.AzureAD.Kdc.Service.TrustDisplay, come nell'output di esempio seguente:

    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

    I cloud sovrani di Azure richiedono l'impostazione della proprietà TopLevelNames che è configurata su windows.net per impostazione predefinita. Le distribuzioni di cloud sovrani di Azure di Istanza gestita di SQL usano un nome di dominio di primo livello diverso, ad esempio usgovcloudapi.net per Azure US Government. Impostare l'oggetto dominio attendibile su tale nome di dominio di primo livello usando il comando di PowerShell seguente: Set-AzureADKerberosServer -Domain $domain -DomainCredential $domainCred -CloudCredential $cloudCred -SetupCloudTrust -TopLevelNames "usgovcloudapi.net,windows.net". L'impostazione può essere verificata da PowerShell con il comando seguente: Get-AzureAdKerberosServer -Domain $domain -DomainCredential $domainCred -UserPrincipalName $cloudUserName | Select-Object -ExpandProperty CloudTrustDisplay.

Configurare Group Policy Object (GPO)

  1. Identificare ID tenant di Microsoft Entra.

  2. Distribuire l'impostazione di Criteri di gruppo seguente nei computer client usando il flusso basato sull'attendibilità in ingresso:

    1. Modificare l'impostazione dei criteri Modelli amministrativi\Sistema\Kerberos\Specifica i server proxy KDC per i client Kerberos.

    2. Selezionare Enabled.

    3. In Opzioni selezionare Mostra.... Verrà visualizzata la finestra di dialogo Mostra contenuto.

      Screenshot della finestra di dialogo per abilitare

    4. Definire le impostazioni dei server proxy KDC usando i mapping come indicato di seguito. Sostituire l'ID tenant di Microsoft Entra per il placeholder your_Azure_AD_tenant_id. Si noti lo spazio che segue https e prima della chiusura di / nel mapping dei valori.

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

      Screenshot della finestra di dialogo

    5. Selezionare OK per chiudere la finestra di dialogo "Mostra contenuti".

    6. Selezionare Applica nella finestra di dialogo "Specifica i server proxy KDC per i client Kerberos".

Ruotare la chiave Kerberos

È possibile ruotare periodicamente la chiave Kerberos per l'account del servizio Microsoft Entra creato e l'oggetto dominio attendibile a scopo di gestione.

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

Una volta ruotata la chiave, sono necessarie diverse ore per propagare la chiave modificata tra i server KDC Kerberos. A causa di questo intervallo di distribuzione delle chiavi, è possibile ruotare la chiave una volta entro 24 ore. Se è necessario ruotare nuovamente la chiave entro 24 ore per qualsiasi motivo, ad esempio, subito dopo aver creato l'oggetto di dominio attendibile, è possibile aggiungere il parametro -Force:

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

Rimuovere l'oggetto di dominio attendibile

È possibile rimuovere l'oggetto dominio attendibile aggiunto usando il comando seguente:

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

Questo comando rimuoverà solo l'oggetto di dominio attendibile. Se il dominio supporta l'autenticazione FIDO, è possibile rimuovere l'oggetto di dominio attendibile mantenendo l'account del servizio Microsoft Entra necessario per il servizio di autenticazione FIDO.

Rimuovere tutte le impostazioni Kerberos

È possibile rimuovere sia l'account del servizio Microsoft Entra sia l'oggetto di dominio attendibile usando il comando seguente:

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