Freigeben über


Verwalten von SSL/TLS-Protokollen und Verschlüsselungssammlungen für AD FS

Die folgende Dokumentation enthält Informationen zum Deaktivieren und Aktivieren bestimmter TLS/SSL-Protokolle und Verschlüsselungssammlungen, die Active Directory-Verbunddienste (AD FS) verwenden.

TLS/SSL-, Schannel- und Chiffre-Suites in AD FS

Das TLS-Protokoll (Transport Layer Security) bietet verschlüsselte sichere Kommunikation über das Netzwerk. Das SSL-Protokoll (Secure Sockets Layer) verschlüsselt vertrauliche Datenaustausche, die zwischen einem Webserver und einem Webbrowser wie TLS übertragen werden. Active Directory-Verbunddienste (AD FS) verwendet diese Protokolle für die Kommunikation. Heute gibt es mehrere Versionen dieser Protokolle.

Security Channel (Schannel) ist ein SSP (Security Support Provider), der die Ssl-, TLS- und DTLS-Internetstandardauthentifizierungsprotokolle implementiert. Die SSPI (Security Support Provider Interface) ist eine API, die von Windows-Systemen verwendet wird, um sicherheitsbezogene Funktionen einschließlich Authentifizierung auszuführen. Der SSPI fungiert als gemeinsame Schnittstelle für mehrere SSPs, einschließlich des Schannel-SSP.

Eine Verschlüsselungssammlung ist ein Satz von Kryptografiealgorithmen. Die Schannel-SSP-Implementierung der TLS/SSL-Protokolle verwendet Algorithmen aus einer Verschlüsselungssuite, um Schlüssel zu erstellen und Informationen zu verschlüsseln. Eine Verschlüsselungssammlung gibt einen Algorithmus für jede der folgenden Aufgaben an:

  • Schlüsselaustausch
  • Massenverschlüsselung
  • Nachrichtenauthentifizierung

AD FS verwendet Schannel.dll, um sichere Kommunikationsinteraktionen auszuführen. Derzeit unterstützt AD FS alle Protokolle und Verschlüsselungssammlungen, die Schannel.dll unterstützt.

Verwalten der TLS/SSL-Protokolle und Verschlüsselungssammlungen

Von Bedeutung

Dieser Abschnitt enthält Schritte, die Ihnen zeigen, wie Sie die Registrierung ändern. Es können jedoch schwerwiegende Probleme auftreten, wenn Sie die Registrierung falsch ändern. Stellen Sie daher sicher, dass Sie diese Schritte sorgfältig ausführen.

Beachten Sie, dass das Ändern der Standardsicherheitseinstellungen für SCHANNEL die Kommunikation zwischen bestimmten Clients und Servern unterbrechen oder verhindern kann. Dies geschieht, wenn eine sichere Kommunikation erforderlich ist und sie kein Protokoll zum Aushandeln der Kommunikation haben.

Wenn Sie diese Änderungen anwenden, müssen sie auf alle AD FS-Server in Ihrer Farm angewendet werden. Nach dem Anwenden dieser Änderungen ist ein Neustart erforderlich.

In der heutigen Zeit wird das Absichern Ihrer Server und das Entfernen älterer oder schwacher Verschlüsselungssuites für viele Organisationen zu einer großen Priorität. Softwaresuiten sind verfügbar, die Ihre Server testen und detaillierte Informationen zu diesen Protokollen und Suites bereitstellen. Um konform zu bleiben oder sichere Bewertungen zu erzielen, ist das Entfernen oder Deaktivieren schwächerer Protokolle oder Verschlüsselungssammlungen ein Muss. Der Rest dieses Dokuments enthält Anleitungen zum Aktivieren oder Deaktivieren bestimmter Protokolle und Verschlüsselungssammlungen.

Die folgenden Registrierungsschlüssel befinden sich am gleichen Speicherort: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols. Verwenden Sie den Registrierungs-Editor oder PowerShell, um diese Protokolle und Verschlüsselungssammlungen zu aktivieren oder zu deaktivieren.

Screenshot des Registrierungs-Editors mit den Registrierungsschlüsseln im Ordner

Aktivieren und Deaktivieren von SSL 3.0

Verwenden Sie die folgenden Registrierungsschlüssel und deren Werte, um SSL 3.0 zu aktivieren und zu deaktivieren.

Aktivieren von SSL 3.0

Pfad Wertname Wertdaten
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server Aktiviert 00000001
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server Standardmäßig deaktiviert 00000000
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Client Aktiviert 00000001
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Client Standardmäßig deaktiviert 00000000

SSL 3.0 deaktivieren

Pfad Wertname Wertdaten
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server Aktiviert 00000000
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server Standardmäßig deaktiviert 00000001
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Client Aktiviert 00000000
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Client Standardmäßig deaktiviert 00000001

Verwenden von PowerShell zum Deaktivieren von 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.'

Aktivieren und Deaktivieren von TLS 1.0

Verwenden Sie die folgenden Registrierungsschlüssel und deren Werte, um TLS 1.0 zu aktivieren und zu deaktivieren.

Von Bedeutung

Durch das Deaktivieren von TLS 1.0 wird die Vertrauensstellung zwischen WAP und AD FS unterbrochen. Wenn Sie TLS 1.0 deaktivieren, sollten Sie eine starke Authentifizierung für Ihre Anwendungen aktivieren. Weitere Informationen finden Sie unter Aktivieren der starken Authentifizierung für .NET-Anwendungen

Aktivieren von TLS 1.0

Pfad Wertname Wertdaten
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server Aktiviert 00000001
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server Standardmäßig deaktiviert 00000000
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Klient Aktiviert 00000001
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Klient Standardmäßig deaktiviert 00000000

Deaktivieren von TLS 1.0

Pfad Wertname Wertdaten
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server Enabled"=00000000
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server Standardmäßig deaktiviert 00000001
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Klient Aktiviert 00000000
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Klient Standardmäßig deaktiviert 00000001

Verwenden von PowerShell zum Deaktivieren von 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.'

Aktivieren und Deaktivieren von TLS 1.1

Verwenden Sie die folgenden Registrierungsschlüssel und deren Werte, um TLS 1.1 zu aktivieren und zu deaktivieren.

Aktivieren von TLS 1.1

Pfad Wertname Wertdaten
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server Aktiviert 00000001
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server Standardmäßig deaktiviert 00000000
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Klient Aktiviert 00000001
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Klient Standardmäßig deaktiviert 00000000

Deaktivieren von TLS 1.1

Pfad Wertname Wertdaten
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server Aktiviert 00000000
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server Standardmäßig deaktiviert 00000001
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client Aktiviert 00000000
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client Standardmäßig deaktiviert 00000001

Verwenden von PowerShell zum Deaktivieren von 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.'

Deaktivieren von TLS 1.2

TLS 1.2 ist standardmäßig ab Windows Server 2012 aktiviert. Sie können die folgenden Registrierungsschlüssel und deren Werte verwenden, um TLS 1.2 zu deaktivieren.

Warnung

Das Deaktivieren von TLS 1.2 wird nicht empfohlen, da die Funktionalität anderer Komponenten auf dem Server, die auf diesem Protokoll basieren, unterbrochen werden kann. Beispielsweise erfordern Dienste wie Microsoft Azure AD Connect (Azure AD Sync) TLS 1.2 für die ordnungsgemäße Ausführung. Das Deaktivieren kann zu Dienstfehlern oder beeinträchtigter Funktionalität führen.

Pfad Wertname Wertdaten
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server Aktiviert 00000000
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server Standardmäßig deaktiviert 00000001
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client Aktiviert 00000000
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Klient Standardmäßig deaktiviert 00000001

Verwenden von PowerShell zum Deaktivieren von 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.'

Aktivieren oder Deaktivieren von Hashes, Verschlüsselungen und Verschlüsselungssammlungen

Das Steuern von Verschlüsselungen, Hashes und Schlüsselaustauschalgorithmen, außer der Schlüsselgröße, über die Registrierung wird nicht unterstützt. Hashes, Chiffre und Schlüsselaustauschalgorithmen werden über PowerShell, MDM oder Cipher Suite Ordering gesteuert.

Eine vollständige Liste der unterstützten Verschlüsselungssammlungen finden Sie unter Cipher Suites in TLS/SSL (Schannel SSP). Dieser Artikel enthält eine Tabelle mit Suites, die standardmäßig aktiviert sind, und zeigt an, welche Suites unterstützt, aber nicht standardmäßig aktiviert sind. Informationen zum Priorisieren der Verschlüsselungssammlungen finden Sie unter Priorisieren von Schannel Cipher Suites.

Aktivieren einer starken Authentifizierung für .NET-Anwendungen

Die .NET Framework 3.5/4.0/4.5.x-Anwendungen können das Standardprotokoll auf TLS 1.2 umstellen, indem der Registrierungsschlüssel SchUseStrongCrypto aktiviert wird. Mit diesen Registrierungsschlüsseln wird erzwungen, dass .NET-Anwendungen TLS 1.2 verwenden.

Von Bedeutung

Für AD FS unter Windows Server 2016 und Windows Server 2012 R2 müssen Sie den Schlüssel .NET Framework 4.0/4.5.x verwenden: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319

Verwenden Sie für .NET Framework 3.5 den folgenden Registrierungsschlüssel:

Pfad Wertname Wertdaten
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v2.0.50727 SchUseStrongCrypto 00000001

Verwenden Sie für .NET Framework 4.0/4.5.x den folgenden Registrierungsschlüssel:

Pfad Wertname Wertdaten
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319 SchUseStrongCrypto 00000001

Screenshot des Registrierungs-Editors, der den Schlüssel SchUseStrongCrypto hervorhebt

New-ItemProperty -path 'HKLM:\SOFTWARE\Microsoft\.NetFramework\v4.0.30319' -name 'SchUseStrongCrypto' -value '1' -PropertyType 'DWord' -Force | Out-Null

Zusatzinformation