Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
La documentazione seguente fornisce informazioni su come disabilitare e abilitare determinati protocolli TLS/SSL e pacchetti di crittografia usati da Active Directory Federation Services (AD FS).
TLS/SSL, Schannel e suite di cifratura in AD FS
Il protocollo TLS (Transport Layer Security) fornisce comunicazioni sicure crittografate in rete. Il protocollo SSL (Secure Sockets Layer) crittografa gli scambi di dati sensibili trasmessi tra un server Web e un Web browser simile a TLS. Active Directory Federation Services (AD FS) usa questi protocolli per le comunicazioni. Oggi esistono diverse versioni di questi protocolli.
Security Channel (Schannel) è un provider di supporto per la sicurezza (SSP) che implementa i protocolli di autenticazione Standard Internet SSL, TLS e DTLS. Security Support Provider Interface (SSPI) è un'API utilizzata dai sistemi Windows per eseguire funzioni correlate alla sicurezza, tra cui l'autenticazione. SSPI funziona come una comune interfaccia per diversi SSP, incluso SSP Schannel.
Una suite di cifratura è un insieme di algoritmi crittografici. L'implementazione SSP Schannel dei protocolli TLS/SSL usa algoritmi di una suite di crittografia per creare chiavi e crittografare le informazioni. Un pacchetto di crittografia specifica un algoritmo per ognuna delle attività seguenti:
- Scambio di chiave
- Crittografia di massa
- Autenticazione dei messaggi
AD FS usa Schannel.dll per eseguire le interazioni di comunicazione sicure. ATTUALMENTE AD FS supporta tutti i protocolli e i pacchetti di crittografia supportati Schannel.dll.
Gestire i protocolli TLS/SSL e i pacchetti di crittografia
Importante
Questa sezione contiene i passaggi che illustrano come modificare il Registro di sistema. Tuttavia, potrebbero verificarsi gravi problemi se si modifica il registro in modo errato. Pertanto, assicurati che segui questi passaggi con attenzione.
Tenere presente che la modifica delle impostazioni di sicurezza predefinite per SCHANNEL potrebbe interrompere o impedire le comunicazioni tra determinati client e server. Ciò si verifica se è necessaria una comunicazione sicura e non hanno un protocollo con cui negoziare le comunicazioni.
Se si applicano queste modifiche, è necessario applicarle a tutti i server AD FS nella farm. Dopo aver applicato queste modifiche, è necessario un riavvio.
Nella giornata e nell'età odierna, la protezione avanzata dei server e la rimozione di suite di crittografia meno recenti o deboli sta diventando una priorità importante per molte organizzazioni. Sono disponibili pacchetti software che testano i server e forniscono informazioni dettagliate su questi protocolli e gruppi. Per mantenere la conformità o ottenere valutazioni sicure, la rimozione o la disabilitazione di protocolli o pacchetti di crittografia più deboli è diventata un must. Nella parte restante di questo documento vengono fornite indicazioni su come abilitare o disabilitare determinati protocolli e pacchetti di crittografia.
Le chiavi del Registro di sistema seguenti si trovano nella stessa posizione: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols. Usare l'editor del Registro di sistema o PowerShell per abilitare o disabilitare questi protocolli e pacchetti di crittografia.
Abilitare e disabilitare SSL 3.0
Usare le chiavi del Registro di sistema seguenti e i relativi valori per abilitare e disabilitare SSL 3.0.
Abilitare SSL 3.0
Percorso | Nome del valore | Dati valore |
---|---|---|
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server | Attivato | 00000001 |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server | Disabilitato per impostazione predefinita | 00000000 |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Cliente | Attivato | 00000001 |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Cliente | Disabilitato per impostazione predefinita | 00000000 |
Disabilitare SSL 3.0
Percorso | Nome del valore | Dati valore |
---|---|---|
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server | Attivato | 00000000 |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server | Disabilitato per impostazione predefinita | 00000001 |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Cliente | Attivato | 00000000 |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Cliente | Disabilitato per impostazione predefinita | 00000001 |
Usare PowerShell per disabilitare SSL 3.0
New-Item 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server' -Force | Out-Null
New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server' -name 'Enabled' -value '0' -PropertyType 'DWord' -Force | Out-Null
New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server' -name 'DisabledByDefault' -value 1 -PropertyType 'DWord' -Force | Out-Null
New-Item 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Client' -Force | Out-Null
New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Client' -name 'Enabled' -value '0' -PropertyType 'DWord' -Force | Out-Null
New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Client' -name 'DisabledByDefault' -value 1 -PropertyType 'DWord' -Force | Out-Null
Write-Host 'SSL 3.0 has been disabled.'
Abilitare e disabilitare TLS 1.0
Usare le chiavi del Registro di sistema seguenti e i relativi valori per abilitare e disabilitare TLS 1.0.
Importante
La disabilitazione di TLS 1.0 interrompe l'attendibilità di WAP ad AD FS. Se si disabilita TLS 1.0, è necessario abilitare l'autenticazione avanzata per le applicazioni. Per altre informazioni, vedere Abilitare l'autenticazione avanzata per le applicazioni .NET
Abilitare TLS 1.0
Percorso | Nome del valore | Dati valore |
---|---|---|
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server | Attivato | 00000001 |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server | Disabilitato per impostazione predefinita | 00000000 |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Cliente | Attivato | 00000001 |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Cliente | Disabilitato per impostazione predefinita | 00000000 |
Disabilitare TLS 1.0
Percorso | Nome del valore | Dati valore |
---|---|---|
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server | Enabled"=000000000 | |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server | Disabilitato per impostazione predefinita | 00000001 |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Cliente | Attivato | 00000000 |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Cliente | Disabilitato per impostazione predefinita | 00000001 |
Usare PowerShell per disabilitare TLS 1.0
New-Item 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server' -Force | Out-Null
New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server' -name 'Enabled' -value '0' -PropertyType 'DWord' -Force | Out-Null
New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server' -name 'DisabledByDefault' -value 1 -PropertyType 'DWord' -Force | Out-Null
New-Item 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client' -Force | Out-Null
New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client' -name 'Enabled' -value '0' -PropertyType 'DWord' -Force | Out-Null
New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client' -name 'DisabledByDefault' -value 1 -PropertyType 'DWord' -Force | Out-Null
Write-Host 'TLS 1.0 has been disabled.'
Abilitare e disabilitare TLS 1.1
Usare le chiavi del Registro di sistema seguenti e i relativi valori per abilitare e disabilitare TLS 1.1.
Abilitare TLS 1.1
Percorso | Nome del valore | Dati valore |
---|---|---|
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server | Attivato | 00000001 |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server | Disabilitato per impostazione predefinita | 00000000 |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Cliente | Attivato | 00000001 |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Cliente | Disabilitato per impostazione predefinita | 00000000 |
Disabilitare TLS 1.1
Percorso | Nome del valore | Dati valore |
---|---|---|
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server | Attivato | 00000000 |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server | Disabilitato per impostazione predefinita | 00000001 |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Cliente | Attivato | 00000000 |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Cliente | Disabilitato per impostazione predefinita | 00000001 |
Usare PowerShell per disabilitare TLS 1.1
New-Item 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server' -Force | Out-Null
New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server' -name 'Enabled' -value '0' -PropertyType 'DWord' -Force | Out-Null
New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server' -name 'DisabledByDefault' -value 1 -PropertyType 'DWord' -Force | Out-Null
New-Item 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client' -Force | Out-Null
New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client' -name 'Enabled' -value '0' -PropertyType 'DWord' -Force | Out-Null
New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client' -name 'DisabledByDefault' -value 1 -PropertyType 'DWord' -Force | Out-Null
Write-Host 'TLS 1.1 has been disabled.'
Disabilitare TLS 1.2
TLS 1.2 è abilitato per impostazione predefinita a partire da Windows Server 2012. È possibile usare le chiavi del Registro di sistema seguenti e i relativi valori per disabilitare TLS 1.2.
Avvertimento
La disabilitazione di TLS 1.2 non è consigliata perché può interrompere la funzionalità di altri componenti nel server che si basano su questo protocollo. Ad esempio, i servizi come Microsoft Azure AD Connect (Azure AD Sync) richiedono che TLS 1.2 funzioni correttamente. La disabilitazione potrebbe causare errori del servizio o funzionalità ridotte.
Percorso | Nome del valore | Dati valore |
---|---|---|
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server | Attivato | 00000000 |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server | Disabilitato per impostazione predefinita | 00000001 |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Cliente | Attivato | 00000000 |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Cliente | Disabilitato per impostazione predefinita | 00000001 |
Usare PowerShell per disabilitare TLS 1.2
New-Item 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server' -Force | Out-Null
New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server' -name 'Enabled' -value '0' -PropertyType 'DWord' -Force | Out-Null
New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server' -name 'DisabledByDefault' -value 1 -PropertyType 'DWord' -Force | Out-Null
New-Item 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client' -Force | Out-Null
New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client' -name 'Enabled' -value '0' -PropertyType 'DWord' -Force | Out-Null
New-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client' -name 'DisabledByDefault' -value 1 -PropertyType 'DWord' -Force | Out-Null
Write-Host 'TLS 1.2 has been disabled.'
Abilitare o disabilitare hash, crittografie e pacchetti di crittografia
Il controllo di crittografie, hash e algoritmi di scambio di chiavi diversi dalle dimensioni della chiave tramite il Registro di sistema non è supportato. Gli hash, le crittografie e gli algoritmi di scambio delle chiavi vengono controllati tramite PowerShell, MDM o Cipher Suite Ordering.
Per un elenco completo delle suite di crittografia supportate, vedere Pacchetti di crittografia in TLS/SSL (SSP Schannel). Questo articolo fornisce una tabella di pacchetti abilitati per impostazione predefinita e mostra quali suite sono supportate ma non abilitate per impostazione predefinita. Per classificare in ordine di priorità le suite di crittografia, vedere Definizione delle priorità delle suite di crittografia Schannel.
Abilitare l'autenticazione avanzata per le applicazioni .NET
Le applicazioni .NET Framework 3.5/4.0/4.5.x possono passare il protocollo predefinito a TLS 1.2 abilitando la chiave del Registro di sistema SchUseStrongCrypto. Queste chiavi del Registro di sistema forzano le applicazioni .NET a usare TLS 1.2.
Importante
Per AD FS in Windows Server 2016 e Windows Server 2012 R2, è necessario usare la chiave .NET Framework 4.0/4.5.x: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319
Per .NET Framework 3.5, usare la chiave del Registro di sistema seguente:
Percorso | Nome del valore | Dati valore |
---|---|---|
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v2.0.50727 | SchUseStrongCrypto | 00000001 |
Per .NET Framework 4.0/4.5.x, usare la chiave del Registro di sistema seguente:
Percorso | Nome del valore | Dati valore |
---|---|---|
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319 | SchUseStrongCrypto | 00000001 |
New-ItemProperty -path 'HKLM:\SOFTWARE\Microsoft\.NetFramework\v4.0.30319' -name 'SchUseStrongCrypto' -value '1' -PropertyType 'DWord' -Force | Out-Null