Autenticazione composta e attestazioni di Active Directory Domain Services in AD FS

Windows Server 2012 migliora l'autenticazione Kerberos introducendo l'autenticazione composta. L'autenticazione composta consente a una richiesta del servizio TGS (Ticket-Granting Service) Kerberos di includere due identità:

  • identità dell'utente
  • identità del dispositivo dell'utente.

Windows esegue l'autenticazione composta estendendo Kerberos Flexible Authentication Secure Tunneling (FAST) o blindatura Kerberos.

AD FS 2012 e versioni successive consente l'utilizzo di attestazioni utente o dispositivo rilasciate da Servizi di dominio Active Directory che risiedono in un ticket di autenticazione Kerberos. Nelle versioni precedenti di AD FS, il motore delle attestazioni poteva leggere solo ID di sicurezza utente e gruppo (SID) da Kerberos, ma non era in grado di leggere le informazioni sulle attestazioni contenute in un ticket Kerberos.

È possibile abilitare il controllo di accesso più completo per applicazioni federate usando attestazioni dispositivo e utente rilasciate da Active Directory Domain Services (AD DS) con Active Directory Federation Services (AD FS).

Requisiti

  1. I computer che accedono alle applicazioni federate devono eseguire l'autenticazione ad AD FS usando l'autenticazione integrata di Windows.

    • L'autenticazione integrata di Windows è disponibile solo quando ci si connette ai server AD FS back-end.
    • I computer devono essere in grado di raggiungere i server AD FS back-end per il nome del servizio federativo
    • I server AD FS devono offrire l'autenticazione integrata di Windows come metodo di autenticazione primaria nelle impostazioni Intranet.
  2. I criteri del Supporto client Kerberos per l'autenticazione composta delle attestazioni e la blindatura Kerberos devono essere applicati a tutti i computer che accedono ad applicazioni federate protette dall'autenticazione composta. Ciò è applicabile in caso di scenari a foresta singola o tra foreste.

  3. Il dominio che ospita i server AD FS deve avere il supporto KDC per l'autenticazione composta delle attestazioni e l'impostazione dei criteri di blindatura Kerberos applicata ai controller di dominio.

Passaggi per la configurazione di AD FS in Windows Server 2012 R2

Usare la procedura seguente per configurare l'autenticazione composta e le attestazioni

Passaggio 1: abilitare il supporto KDC per attestazioni, autenticazione composta e blindatura Kerberos nei criteri del controller di dominio predefinito

  1. In Server Manager selezionare Strumenti, Gestione Criteri di gruppo.
  2. Passare al criterio del controller di dominio predefinito, fare clic con il pulsante destro del mouse e selezionare Modifica. Screenshot showing the Default Domain Policy page in the Group Policy Management dialog box.
  3. Nell'editor gestione Criteri di gruppo, in Configurazione computerespandere Criteri, espandere Modelli amministrativi, espandere Sistema e selezionare KDC.
  4. Nel riquadro destro fare doppio clic su Supporto KDC per attestazioni, autenticazione composta e blindatura Kerberos. Screenshot of the Group Policy Management Editor showing the KDC support for claims, compound authentication, and Kerberos armoring setting highlighted.
  5. Nella nuova finestra di dialogo impostare il supporto KDC per le attestazioni su Abilitato.
  6. In Opzioni selezionare Supportato dal menu a discesa e quindi fare clic su Applica e OK. Screenshot of the KDC support for claims, compound authentication and Kerberos armoring dialog box showing the Supported option selected.

Passaggio 2: abilitare il supporto client Kerberos per attestazioni, autenticazione composta e blindatura Kerberos nei computer che accedono alle applicazioni federate

  1. In criteri di gruppo applicati ai computer che accedono alle applicazioni federate, nell'Editor gestione Criteri di gruppo, in Configurazione computerespandere Criteri, espandere Modelli amministrativi, espandere Sistema e selezionare Kerberos.
  2. Nel riquadro destro della finestra Editor Gestione Criteri di gruppo fare doppio clic su Supporto client Kerberos per attestazioni, autenticazione composta e blindatura Kerberos.
  3. Nella nuova finestra di dialogo impostare Il supporto client Kerberos su Abilitato e fare clic su Applica e OK. Screenshot of the KDC support for claims, compound authentication and Kerberos armoring dialog box showing the Enabled option selected.
  4. Chiudere Editor Gestione Criteri di gruppo.

Passaggio 3: verificare che i server AD FS siano stati aggiornati.

È necessario assicurarsi che gli aggiornamenti seguenti siano installati nei server AD FS.

Aggiornamento Descrizione
KB2919355 Aggiornamento cumulativo della sicurezza (include KB2919355, KB2932046, KB2934018,KB2937592,KB2938439)
KB2959977 Aggiornamento per Server 2012 R2
Hotfix 3052122 Questo aggiornamento aggiunge il supporto per attestazioni ID composte in Active Directory Federation Services.

Passaggio 4: configurare il provider di autenticazione primario

  1. Impostare il provider di autenticazione primario su Autenticazione di Windows per le impostazioni Intranet di AD FS.

  2. In Gestione AD FS, in Criteri di autenticazione selezionare Autenticazione primaria e in Impostazioni globali fare clic su Modifica.

  3. In Modifica dei criteri di autenticazione globali, sotto Intranet, selezionare Autenticazione di Windows.

  4. Fai clic su Applica e su OK.

    Screenshot of the Edit Global Authentication Policy dialog box showing the Windows Authentication option selected.

  5. Con PowerShell è possibile usare il cmdlet Set-AdfsGlobalAuthenticationPolicy.

Set-AdfsGlobalAuthenticationPolicy -PrimaryIntranetAuthenticationProvider 'WindowsAuthentication'

Nota

In una farm basata su WID, il comando di PowerShell deve essere eseguito nel server AD FS primario. In una farm basata su SQL, il comando di PowerShell può essere eseguito in qualsiasi server AD FS membro della farm.

Passaggio 5: aggiungere la descrizione dell'attestazione ad AD FS

  1. Aggiungere la seguente descrizione attestazione alla farm. Questa descrizione attestazione non è presente per impostazione predefinita in AD FS 2012 R2 e deve essere aggiunta manualmente.

  2. In Gestione AD FS, in Serviziofare clic con il pulsante destro del mouse su Descrizione attestazione e selezionare Aggiungi descrizione attestazione

  3. Immettere le informazioni seguenti nella descrizione dell'attestazione

    • Nome visualizzato: "Gruppo di dispositivi Windows"
    • Descrizione attestazione: '<https://schemas.microsoft.com/ws/2008/06/identity/claims/windowsdevicegroup>' `
  4. Inserire un segno di spunta in entrambe le caselle.

  5. Fare clic su OK.

    Screenshot of the Add a Claim Description dialog box.

  6. Usando PowerShell è possibile usare il cmdlet Add-AdfsClaimDescription.

    Add-AdfsClaimDescription -Name 'Windows device group' -ClaimType 'https://schemas.microsoft.com/ws/2008/06/identity/claims/windowsdevicegroup' `
    -ShortName 'windowsdevicegroup' -IsAccepted $true -IsOffered $true -IsRequired $false -Notes 'The windows group SID of the device'
    

Nota

In una farm basata su WID, il comando di PowerShell deve essere eseguito nel server AD FS primario. In una farm basata su SQL, il comando di PowerShell può essere eseguito in qualsiasi server AD FS membro della farm.

Passaggio 6: abilitare il bit di autenticazione composta nell'attributo msDS-SupportedEncryptionTypes

  1. Abilitare il bit di autenticazione composta nell'attributo msDS-SupportedEncryptionTypes nell'account designato per eseguire il servizio AD FS usando il cmdlet Set-ADServiceAccount di PowerShell.

Nota

Se si modifica l'account del servizio, è necessario abilitare manualmente l'autenticazione composta eseguendo il cmdlet Set-ADUser -compoundIdentitySupported:$true di Windows PowerShell.

Set-ADServiceAccount -Identity “ADFS Service Account” -CompoundIdentitySupported:$true
  1. Riavviare il servizio AD FS.

Nota

Dopo che "CompoundIdentitySupported" è impostato su true, l'installazione dello stesso account del servizio gestito del gruppo nei nuovi server (2012R2/2016) ha esito negativo con l'errore seguente: Install-ADServiceAccount: Impossibile installare l'account del servizio. Messaggio di errore: "Il contesto fornito non corrisponde alla destinazione"..

Soluzione: impostare temporaneamente CompoundIdentitySupported su $false. Questo passaggio fa sì che AD FS interrompa l'emissione di attestazioni WindowsDeviceGroup. Set-ADServiceAccount -Identity 'ADFS Service Account' -CompoundIdentitySupported:$false Installare l'account del servizio gestito del gruppo nel nuovo server e quindi abilitare CompoundIdentitySupported in $True. La disabilitazione di CompoundIdentitySupported e quindi la riabilitazione non prevedono il riavvio del servizio AD FS.

Passaggio 7: aggiornare l'attendibilità del provider di attestazioni AD FS per Active Directory

  1. Aggiornare l'attendibilità del provider di attestazioni AD FS per Active Directory in modo da includere la regola attestazione pass-through seguente per l'attestazione "WindowsDeviceGroup".
  2. In Gestione AD FS fare clic su Trust provider di attestazioni e nel riquadro destro fare clic con il pulsante destro del mouse su Active Directory, quindi selezionare Modifica regole attestazioni.
  3. In Modifica regole attestazione per Active Director fare clic su Aggiungi regola.
  4. In Aggiungere una procedura guidata per le regole di attestazione trasformazione selezionare Pass-through o Filtrare un attestazione in ingresso e fare clic su Avanti.
  5. Aggiungere un nome visualizzato e selezionare Gruppo di dispositivi Windows dall'elenco a discesa Tipo di attestazione in ingresso.
  6. Fare clic su Fine. Fai clic su Applica e su OK. Screenshot of the AD FS, Edit Claim Rules for Active Directory, and Edit Rule - Windows Device Group dialog boxes with arrows and call outs showing the workflow described above.

Passaggio 8: nella relying party in cui sono previste le attestazioni "WindowsDeviceGroup" aggiungere una regola di attestazione pass-through simile.

  1. In Gestione AD FS fare clic su Trust relying party e nel riquadro destro fare clic con il pulsante destro del mouse sul punto di ripristino, quindi selezionare Modifica regole attestazione.
  2. Nelle Regole di trasformazione rilascio fare clic su Aggiungi regola.
  3. In Aggiungere una procedura guidata per le regole di attestazione trasformazione selezionare Pass-through o Filtrare un attestazione in ingresso e fare clic su Avanti.
  4. Aggiungere un nome visualizzato e selezionare Gruppo di dispositivi Windows dall'elenco a discesa Tipo di attestazione in ingresso.
  5. Fare clic su Fine. Fai clic su Applica e su OK. Screenshot of the AD FS, Edit Claim Rules for myclaims.fedhome.in, and Edit Rule - Windows Device Grp dialog boxes with arrows and call outs showing the workflow described above.

Passaggi per la configurazione di AD FS in Windows Server 2016

Di seguito verranno descritti in dettaglio i passaggi per la configurazione dell'autenticazione composta in AD FS per Windows Server 2016.

Passaggio 1: abilitare il supporto KDC per attestazioni, autenticazione composta e blindatura Kerberos nei criteri del controller di dominio predefinito

  1. In Server Manager selezionare Strumenti, Gestione Criteri di gruppo.
  2. Passare al criterio del controller di dominio predefinito, fare clic con il pulsante destro del mouse e selezionare Modifica.
  3. Nell'editor gestione Criteri di gruppo, in Configurazione computerespandere Criteri, espandere Modelli amministrativi, espandere Sistema e selezionare KDC.
  4. Nel riquadro destro fare doppio clic su Supporto KDC per attestazioni, autenticazione composta e blindatura Kerberos.
  5. Nella nuova finestra di dialogo impostare il supporto KDC per le attestazioni su Abilitato.
  6. In Opzioni selezionare Supportato dal menu a discesa e quindi fare clic su Applica e OK.

Passaggio 2: abilitare il supporto client Kerberos per attestazioni, autenticazione composta e blindatura Kerberos nei computer che accedono alle applicazioni federate

  1. In criteri di gruppo applicati ai computer che accedono alle applicazioni federate, nell'Editor gestione Criteri di gruppo, in Configurazione computerespandere Criteri, espandere Modelli amministrativi, espandere Sistema e selezionare Kerberos.
  2. Nel riquadro destro della finestra Editor Gestione Criteri di gruppo fare doppio clic su Supporto client Kerberos per attestazioni, autenticazione composta e blindatura Kerberos.
  3. Nella nuova finestra di dialogo impostare Il supporto client Kerberos su Abilitato e fare clic su Applica e OK.
  4. Chiudere Editor Gestione Criteri di gruppo.

Passaggio 3: configurare il provider di autenticazione primario

  1. Impostare il provider di autenticazione primario su Autenticazione di Windows per le impostazioni Intranet di AD FS.
  2. In Gestione AD FS, in Criteri di autenticazione selezionare Autenticazione primaria e in Impostazioni globali fare clic su Modifica.
  3. In Modifica dei criteri di autenticazione globali, sotto Intranet, selezionare Autenticazione di Windows.
  4. Fai clic su Applica e su OK.
  5. Con PowerShell è possibile usare il cmdlet Set-AdfsGlobalAuthenticationPolicy.
Set-AdfsGlobalAuthenticationPolicy -PrimaryIntranetAuthenticationProvider 'WindowsAuthentication'

Nota

In una farm basata su WID, il comando di PowerShell deve essere eseguito nel server AD FS primario. In una farm basata su SQL, il comando di PowerShell può essere eseguito in qualsiasi server AD FS membro della farm.

Passaggio 4: abilitare il bit di autenticazione composta nell'attributo msDS-SupportedEncryptionTypes

  1. Abilitare il bit di autenticazione composta nell'attributo msDS-SupportedEncryptionTypes nell'account designato per eseguire il servizio AD FS usando il cmdlet Set-ADServiceAccount di PowerShell.

Nota

Se si modifica l'account del servizio, è necessario abilitare manualmente l'autenticazione composta eseguendo il cmdlet Set-ADUser -compoundIdentitySupported:$true di Windows PowerShell.

Set-ADServiceAccount -Identity “ADFS Service Account” -CompoundIdentitySupported:$true
  1. Riavviare il servizio AD FS.

Nota

Dopo che "CompoundIdentitySupported" è impostato su true, l'installazione dello stesso account del servizio gestito del gruppo nei nuovi server (2012R2/2016) ha esito negativo con l'errore seguente: Install-ADServiceAccount: Impossibile installare l'account del servizio. Messaggio di errore: "Il contesto fornito non corrisponde alla destinazione"..

Soluzione: impostare temporaneamente CompoundIdentitySupported su $false. Questo passaggio fa sì che AD FS interrompa l'emissione di attestazioni WindowsDeviceGroup. Set-ADServiceAccount -Identity 'ADFS Service Account' -CompoundIdentitySupported:$false Installare l'account del servizio gestito del gruppo nel nuovo server e quindi abilitare CompoundIdentitySupported in $True. La disabilitazione di CompoundIdentitySupported e quindi la riabilitazione non prevedono il riavvio del servizio AD FS.

Passaggio 5: aggiornare l'attendibilità del provider di attestazioni AD FS per Active Directory

  1. Aggiornare l'attendibilità del provider di attestazioni AD FS per Active Directory in modo da includere la regola attestazione pass-through seguente per l'attestazione "WindowsDeviceGroup".
  2. In Gestione AD FS fare clic su Trust provider di attestazioni e nel riquadro destro fare clic con il pulsante destro del mouse su Active Directory, quindi selezionare Modifica regole attestazioni.
  3. In Modifica regole attestazione per Active Director fare clic su Aggiungi regola.
  4. In Aggiungere una procedura guidata per le regole di attestazione trasformazione selezionare Pass-through o Filtrare un attestazione in ingresso e fare clic su Avanti.
  5. Aggiungere un nome visualizzato e selezionare Gruppo di dispositivi Windows dall'elenco a discesa Tipo di attestazione in ingresso.
  6. Fare clic su Fine. Fai clic su Applica e su OK.

Passaggio 6: nella relying party in cui sono previste le attestazioni "WindowsDeviceGroup" aggiungere una regola di attestazione pass-through simile.

  1. In Gestione AD FS fare clic su Trust relying party e nel riquadro destro fare clic con il pulsante destro del mouse sul punto di ripristino, quindi selezionare Modifica regole attestazione.
  2. Nelle Regole di trasformazione rilascio fare clic su Aggiungi regola.
  3. In Aggiungere una procedura guidata per le regole di attestazione trasformazione selezionare Pass-through o Filtrare un attestazione in ingresso e fare clic su Avanti.
  4. Aggiungere un nome visualizzato e selezionare Gruppo di dispositivi Windows dall'elenco a discesa Tipo di attestazione in ingresso.
  5. Fare clic su Fine. Fai clic su Applica e su OK.

Convalida

Per convalidare la versione delle attestazioni "WindowsDeviceGroup", creare un'applicazione compatibile con attestazioni di test usando .Net 4.6. Con WIF SDK 4.0. Configurare l'applicazione come relying party in AD FS e aggiornarla con la regola attestazione come specificato nei passaggi precedenti. Quando si esegue l'autenticazione all'applicazione usando il provider di autenticazione integrata di Windows di AD FS, vengono create le attestazioni seguenti. Validation

Le attestazioni per il computer o il dispositivo possono ora essere utilizzate per controlli di accesso più avanzati.

Ad esempio, AdditionalAuthenticationRules indica ad AD FS di richiamare MFA se - L'utente di autenticazione non è membro del gruppo di sicurezza "-1-5-21-2134745077-1211275016-3050530490-1117" E il computer (da cui l'utente esegue l'autenticazione) non è membro del gruppo di sicurezza "S-1-5-21-2134745077-1211275016-3050530490-1115 (WindowsDeviceGroup)"

Tuttavia, se viene soddisfatta una delle condizioni precedenti, non richiamare l'autenticazione a più fattori.

'NOT EXISTS([Type == "https://schemas.microsoft.com/ws/2008/06/identity/claims/windowsdevicegroup", Value =~ "S-1-5-21-2134745077-1211275016-3050530490-1115"])
&& NOT EXISTS([Type == "https://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid", Value =~ "S-1-5-21-2134745077-1211275016-3050530490-1117"])
=> issue(Type = "https://schemas.microsoft.com/ws/2008/06/identity/claims/authenticationmethod", Value = "https://schemas.microsoft.com/claims/multipleauthn");'