Problembeschreibung
Angenommen Sie, Sie auf Ihrem Computer auf Microsoft.NET Framework 4.6 aktualisiert haben. Wenn Sie eine, die SSL 3.0 ServicePointManager oder SslStream APIs verwendet Anwendung, um zu einem Server herzustellen, schlägt die Verbindung fehl.
Ursache
Dieses Problem tritt auf, weil der Satz von SSL/TLS-Protokolle, die von ServicePointManager und SslStream verwendet geändert wurde.
Der alte Wert: Ssl 3.0 | TLS 1.0 | TLS 1.1
Neuer Wert: Tls 1.0 | TLS 1.1 | TLS 1.2
PROBLEMUMGEHUNG
Um dieses Problem zu umgehen, aktualisieren Sie den Server Tls 1.0, Tls 1.1 oder Tls 1.2, da SSL 3.0 unsicheren und anfällig für Angriffe wie PUDEL angezeigt wurde.AppContext Klasse dieses Feature deaktivieren. Verwenden Sie hierzu eine der folgenden Methoden:
Hinweis Wenn Sie den Server aktualisieren können, verwenden Sie-
Programmgesteuert: Erstes muss die Anwendung ist, da ServicePointManager nur einmal initialisiert werden. Verwenden Sie im folgenden Codebeispiel wird in der Anwendung:
private const string DisableCachingName = @"TestSwitch.LocalAppContext.DisableCaching"; private const string DontEnableSchUseStrongCryptoName = @"Switch.System.Net.DontEnableSchUseStrongCrypto";
AppContext.SetSwitch(DisableCachingName, true); AppContext.SetSwitch(DontEnableSchUseStrongCryptoName, true); -
Mithilfe der AppConfig-Datei für Ihre Anwendung: Appconfig-Datei die folgende Zeile hinzufügen:
< AppContextSwitchOverrides value="Switch.System.Net.DontEnableSchUseStrongCrypto=true"/ >
Weitere Informationen
Weitere Informationen zu Versionen Produktwechsel und Auswirkung in.NET Framework 4.6 finden Sie unter Kompatibilität mit.NET Framework 4.6. Hinweise
-
Die neue Konfiguration gilt nur, wenn die Anwendung.NET Framework 4.6 konzipiert ist. .NET Framework 4.5.2 und früheren Versionen nicht wirkt auch wenn sie in einer Umgebung mit.NET Framework 4.6 ausgeführt.
-
Eine Liste der betroffenen Top-Level-APIs:
-
HttpClient HttpWebRequest
-
FtpClient
-
SmtpClient
-
SslStream
-
-
SCH_USE_STRONG_CRYPTO Dieses Flag wird automatisch in.NET Framework 4.6 verwendet und wirkt sich Verhalten durch unsichere kryptografischen Hash Algorithmen entfernen. Für alle Plattformen werden vor Windows 10 der RC4 -Algorithmus aus verwendet entfernt. Windows 10 folgenden zusätzlichen Algorithmen unsicheren entfernt: DES NULL, EXPORTIEREN und MD5