Gestione di certificati SSL in AD FS e WAP in Windows Server 2016Managing SSL Certificates in AD FS and WAP in Windows Server 2016

Questo articolo descrive come distribuire un nuovo certificato SSL per i server AD FS e WAP.This article describes how to deploy a new SSL certificate to your AD FS and WAP servers.

Nota

Il metodo consigliato per sostituire il certificato SSL in futuro per una farm AD FS è usare Azure AD Connect.The recommended way to replace the SSL certificate going forward for an AD FS farm is to use Azure AD Connect. Per altre informazioni vedere aggiornare il certificato SSL per una farm Active Directory Federation Services (ADFS)For more information see Update the SSL certificate for an Active Directory Federation Services (AD FS) farm

Come ottenere i certificati SSLObtaining your SSL Certificates

Per le farm di produzione AD FS è consigliabile un certificato SSL pubblicamente attendibile.For production AD FS farms a publicly trusted SSL certificate is recommended. Questo viene in genere ottenuto tramite l'invio di una firma richiesta del certificato (CSR) a terze parti, l'autorità di certificazione pubblica.This is usually obtained by submitting a certificate signing request (CSR) to a third party, public certificate provider. Esistono diversi modi per generare il file CSR, ad esempio da un PC versioni successive o Windows 7.There are a variety of ways to generate the CSR, including from a Windows 7 or higher PC. Il fornitore deve avere la documentazione per l'oggetto.Your vendor should have documentation for this.

Quanti certificati sono necessariHow many certificates are needed

È consigliabile utilizzare un certificato SSL comune tra i server di tutto AD FS e Proxy applicazione Web.It is recommended that you use a common SSL certificate across all AD FS and Web Application Proxy servers. Per informazioni dettagliate sui requisiti, vedere il documento requisiti dei certificati di AD FS e Proxy di applicazione Web SSLFor detailed requirements see the document AD FS and Web Application Proxy SSL certificate requirements

Requisiti dei certificati SSLSSL Certificate Requirements

Per i requisiti compresi di denominazione, radice di attendibilità ed estensioni vedere il documento requisiti dei certificati di AD FS e Proxy di applicazione Web SSLFor requirements including naming, root of trust and extensions see the document AD FS and Web Application Proxy SSL certificate requirements

Sostituire il certificato SSL per ADFSReplacing the SSL certificate for AD FS

Nota

Il certificato SSL di AD FS non è quello utilizzato per il certificato di comunicazioni di servizio AD FS trovato nello snap-in Gestione ADFS.The AD FS SSL certificate is not the same as the AD FS Service communications certificate found in the AD FS Management snap-in. Per modificare il certificato SSL di AD FS, è necessario usare PowerShell.To change the AD FS SSL certificate, you will need to use PowerShell.

In primo luogo, determinare quale certificato modalità di associazione sono in esecuzione il server AD FS: binding di autenticazione del certificato predefinito, o in modalità di associazione TLS client alternativo.First, determine which certificate binding mode your AD FS servers are running: default certificate authentication binding, or alternate client TLS binding mode.

Sostituire il certificato SSL per AD FS in esecuzione in modalità di binding autenticazione certificatoReplacing the SSL certificate for AD FS running in default certificate authentication binding mode

AD FS per impostazione predefinita esegue l'autenticazione del certificato dispositivo sulla porta 443 e l'autenticazione del certificato utente sulla porta 49443 (o una porta configurabile che non è la porta 443).AD FS by default performs device certificate authentication on port 443 and user certificate authentication on port 49443 (or a configurable port that is not 443). In questa modalità, usare il cmdlet di powershell Set-AdfsSslCertificate per gestire il certificato SSL.In this mode, use the powershell cmdlet Set-AdfsSslCertificate to manage the SSL certificate.

Attieniti alla procedura seguente:Follow the steps below:

  1. In primo luogo, è necessario ottenere il nuovo certificato.First, you will need to obtain the new certificate. Questa operazione viene in genere eseguita inviando una richiesta firma di certificato (CSR) a terze parti, autorità di certificazione pubblica.This is usually done by submitting a certificate signing request (CSR) to a third party, public certificate provider. Esistono diversi modi per generare il file CSR, ad esempio da un PC versioni successive o Windows 7.There are a variety of ways to generate the CSR, including from a Windows 7 or higher PC. Il fornitore deve avere la documentazione per l'oggetto.Your vendor should have documentation for this.

  2. Dopo aver ottenuto la risposta dal provider di certificati, importarlo nell'archivio computer locale in ogni server AD FS e Proxy applicazione Web.Once you get the response from your certificate provider, import it to the Local Machine store on each AD FS and Web Application Proxy server.

  3. Nel primaria server AD FS, usare il cmdlet seguente per installare il nuovo certificato SSLOn the primary AD FS server, use the following cmdlet to install the new SSL certificate

Set-AdfsSslCertificate -Thumbprint '<thumbprint of new cert>'

L'identificazione personale del certificato sono reperibili eseguendo questo comando:The certificate thumbprint can be found by executing this command:

dir Cert:\LocalMachine\My\

Note aggiuntiveAdditional Notes

  • Il cmdlet Set-AdfsSslCertificate è un cmdlet a più nodi; Ciò significa che è sufficiente per l'esecuzione dal server primario e verranno aggiornati tutti i nodi nella farm.The Set-AdfsSslCertificate cmdlet is a multi-node cmdlet; this means it only has to run from the primary and all nodes in the farm will be updated. È una novità in Server 2016.This is new in Server 2016. In Server 2012 R2 era necessario eseguire Set-AdfsSslCertificate in ogni server.On Server 2012 R2 you had to run Set-AdfsSslCertificate on each server.
  • Il cmdlet Set-AdfsSslCertificate deve essere eseguito solo sul server primario.The Set-AdfsSslCertificate cmdlet has to be run only on the primary server. Il server primario deve essere in esecuzione Server 2016 e deve essere generato il livello di comportamento Farm 2016.The primary server has to be running Server 2016 and the Farm Behavior Level should be raised to 2016.
  • Il cmdlet Set-AdfsSslCertificate userà comunicazione remota di PowerShell per configurare gli altri server AD FS, assicurarsi che la porta 5985 (TCP) sia aperta in altri nodi.The Set-AdfsSslCertificate cmdlet will use PowerShell Remoting to configure the other AD FS servers, make sure port 5985 (TCP) is open on the other nodes.
  • Il cmdlet Set-AdfsSslCertificate comporterà la concessione di adfssrv principale autorizzazioni di lettura per le chiavi private del certificato SSL.The Set-AdfsSslCertificate cmdlet will grant the adfssrv principal read permissions to the private keys of the SSL certificate. Questa entità rappresenta il servizio AD FS.This principal represents the AD FS service. Non è necessario concedere l'accesso in lettura account del servizio AD FS per le chiavi private del certificato SSL.It's not necessary to grant the AD FS service account read access to the private keys of the SSL certificate.

Sostituire il certificato SSL per ADFS in esecuzione in modalità di associazione TLS alternativaReplacing the SSL certificate for AD FS running in alternate TLS binding mode

Quando è configurato nel client alternativo di modalità di associazione TLS, ADFS consente di eseguire l'autenticazione del certificato dispositivo sulla porta 443 e l'autenticazione del certificato utente sulla porta 443, anche su un nome host diverso.When configured in alternate client TLS binding mode, AD FS performs device certificate authentication on port 443 and user certificate authentication on port 443 as well, on a different hostname. Il nome host del certificato utente è di AD FS hostname preceduto da "certauth", ad esempio "com".The user certificate hostname is the AD FS hostname pre-pended with "certauth", for example "certauth.fs.contoso.com". In questa modalità, usare il cmdlet di powershell Set-AdfsAlternateTlsClientBinding per gestire il certificato SSL.In this mode, use the powershell cmdlet Set-AdfsAlternateTlsClientBinding to manage the SSL certificate. Questa verrà gestita non solo l'associazione TLS client alternativi, ma tutti gli altri binding in cui ADFS viene impostato anche il certificato SSL.This will manage not only the alternative client TLS binding but all other bindings on which AD FS sets the SSL certificate as well.

Attieniti alla procedura seguente:Follow the steps below:

  1. In primo luogo, è necessario ottenere il nuovo certificato.First, you will need to obtain the new certificate. Questa operazione viene in genere eseguita inviando una richiesta firma di certificato (CSR) a terze parti, autorità di certificazione pubblica.This is usually done by submitting a certificate signing request (CSR) to a third party, public certificate provider. Esistono diversi modi per generare il file CSR, ad esempio da un PC versioni successive o Windows 7.There are a variety of ways to generate the CSR, including from a Windows 7 or higher PC. Il fornitore deve avere la documentazione per l'oggetto.Your vendor should have documentation for this.

  2. Dopo aver ottenuto la risposta dal provider di certificati, importarlo nell'archivio computer locale in ogni server AD FS e Proxy applicazione Web.Once you get the response from your certificate provider, import it to the Local Machine store on each AD FS and Web Application Proxy server.

  3. Nel primaria server AD FS, usare il cmdlet seguente per installare il nuovo certificato SSLOn the primary AD FS server, use the following cmdlet to install the new SSL certificate

Set-AdfsAlternateTlsClientBinding -Thumbprint '<thumbprint of new cert>'

L'identificazione personale del certificato sono reperibili eseguendo questo comando:The certificate thumbprint can be found by executing this command:

dir Cert:\LocalMachine\My\

Note aggiuntiveAdditional Notes

  • Il cmdlet Set-AdfsAlternateTlsClientBinding è un cmdlet a più nodi; Ciò significa che è sufficiente per l'esecuzione dal server primario e verranno aggiornati tutti i nodi nella farm.The Set-AdfsAlternateTlsClientBinding cmdlet is a multi-node cmdlet; this means it only has to run from the primary and all nodes in the farm will be updated.
  • Il cmdlet Set-AdfsAlternateTlsClientBinding deve essere eseguito solo sul server primario.The Set-AdfsAlternateTlsClientBinding cmdlet has to be run only on the primary server. Il server primario deve essere in esecuzione Server 2016 e deve essere generato il livello di comportamento Farm 2016.The primary server has to be running Server 2016 and the Farm Behavior Level should be raised to 2016.
  • Il cmdlet Set-AdfsAlternateTlsClientBinding userà comunicazione remota di PowerShell per configurare gli altri server AD FS, assicurarsi che la porta 5985 (TCP) sia aperta in altri nodi.The Set-AdfsAlternateTlsClientBinding cmdlet will use PowerShell Remoting to configure the other AD FS servers, make sure port 5985 (TCP) is open on the other nodes.
  • Il cmdlet Set-AdfsAlternateTlsClientBinding comporterà la concessione di adfssrv principale autorizzazioni di lettura per le chiavi private del certificato SSL.The Set-AdfsAlternateTlsClientBinding cmdlet will grant the adfssrv principal read permissions to the private keys of the SSL certificate. Questa entità rappresenta il servizio AD FS.This principal represents the AD FS service. Non è necessario concedere l'accesso in lettura account del servizio AD FS per le chiavi private del certificato SSL.It's not necessary to grant the AD FS service account read access to the private keys of the SSL certificate.

Sostituire il certificato SSL per il Proxy applicazione WebReplacing the SSL certificate for the Web Application Proxy

Per la configurazione sia la modalità di associazione TLS client alternativo o binding autenticazione del certificato predefinito in WAP è possibile usare il cmdlet Set-WebApplicationProxySslCertificate.For configuring both the default certificate authentication binding or alternate client TLS binding mode on the WAP we can use the Set-WebApplicationProxySslCertificate cmdlet. Sostituire il certificato SSL di Proxy applicazione Web, in ogni server Proxy applicazione Web usare il cmdlet seguente per installare il nuovo certificato SSL:To replace the Web Application Proxy SSL certificate, on each Web Application Proxy server use the following cmdlet to install the new SSL certificate:

Set-WebApplicationProxySslCertificate -Thumbprint '<thumbprint of new cert>'

Se il cmdlet precedente non riesce perché il certificato precedente è già scaduto, riconfigurare il proxy usando i cmdlet seguenti:If the above cmdlet fails because the old certificate has already expired, reconfigure the proxy using the following cmdlets:

$cred = Get-Credential

Immettere le credenziali dell'utente di dominio che sia amministratore locale nel server AD FSEnter the credentials of a domain user who is local administrator on the AD FS server

Install-WebApplicationProxy -FederationServiceTrustCredential $cred -CertificateThumbprint '<thumbprint of new cert>' -FederationServiceName 'fs.contoso.com'

Altri riferimentiAdditional references