.NET raamistiku versiooni 3.5.1 ja varasemad versioonid ei vastanud rakendused kasutada transpordikihi turbe (TLS) süsteemi vaikimisi versioonid krüptograafiline protokolli tugi. See värskendus võimaldab kasutada TLS v1.2 .NET Framework 3.5.1.
Märkus selle sisu on tehtud kättesaadavaks Windows Update. Sisu hankimiseks otsige .NET Frameworki värskendusi Windows Update'i. Kui teie arvuti on ajakohane Windows Update'i kaudu, ei pea midagi tegema.
Lahendus
Info allalaadimiseks
Järgmised failid on saadaval alla laadida Microsoft Download Center:x86-põhiste paketi kohene allalaadimine.X64-põhiste paketi kohene allalaadimine.IA64-põhiste paketi kohene allalaadimine. Tegime selles valdkonnas järgmisi parandusi:
-
Järgmine registri võtmed saab seada kasutama operatsioonisüsteemi vaikimisi SSL ja TLS-i asemel kõva .NET Frameworki hallatav rakendus töötab arvuti vaikesätted.
-
64-bitiste operatsioonisüsteemide:[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v2.0.50727]"SystemDefaultTlsVersions"=dword:00000001 [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v2.0.50727]"SystemDefaultTlsVersions"=dword:00000001
-
32-bitiste operatsioonisüsteemide:[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v2.0.50727]"SystemDefaultTlsVersions"=dword:00000001
Märkus.Kui rakendus on seatud ServicePointManager.SecureProtocol kood või väärtuse config failid või kasutab SslStream.AuthenticateAs* API-d määrata kindla SslProtocols enum registri säte ei juhtu.
-
-
Lisaks sellele lisasime SslProtocolsExtensions loendi, mida saate kasutada valikut kehtestamise TLS v1.2 TLS v1.1, samuti operatsioonisüsteemi vaikesätted ServicePointManager.SecurityProtocol atribuudi suunatud .NET raamistiku versiooni 2.0 SP2. (Jaotisest Developer juhised teabe kasutamise laiendamist.) Märkus. Windows Vista hoolduspaketi SP2 ja Windows Server 2008 hoolduspaketi SP2 ei toeta transpordikihi turbe (TLS) protokolli versiooni uuem kui 1.0. Hallatav operatsioonisüsteemiga Windows Vista hoolduspaketi SP2 või Windows Server 2008 hoolduspaketi SP2 .NET Framework 2.0 hoolduspaketi SP2 rakendused ei saa kasutada TLS 1.1 või TLS 1.2 isegi siis, kui need Protokollid on seatud ServicePointManager.SecurityProtocol atribuut.
Microsofti tugifailide värskenduste allalaadimise kohta lisateavet hõlmava Microsofti teabebaasi artikli kuvamiseks klõpsake järgmist artiklinumbrit:
119591 Kuidas hankida Microsofti tugifaile võrguteenustest Microsoft skannis seda faili viiruste leidmiseks. Microsoft kasutas uusimat viirusetõrjetarkvara, mis oli faili postitamise päeval saadaval. Faili talletatakse täiustatud turvalisusega serverites, mis aitab takistada faili volitamata muutmist.
Arendaja arendus
Uued laiendid määratlus on järgmised failid:
-
SecurityProtocolTypeExtensions.csnamespace System.Net{using System.Security.Authentication;public static class SecurityProtocolTypeExtensions{public const SecurityProtocolType Tls12 = (SecurityProtocolType)SslProtocolsExtensions.Tls12;public const SecurityProtocolType Tls11 = (SecurityProtocolType)SslProtocolsExtensions.Tls11;public const SecurityProtocolType SystemDefault = (SecurityProtocolType)0;}}
-
SslProtocolsExtensions.csnamespace System.Security.Authentication{public static class SslProtocolsExtensions{public const SslProtocols Tls12 = (SslProtocols)0x00000C00;public const SslProtocols Tls11 = (SslProtocols)0x00000300;}}
TLS v1.2 tugi kaasamiseks lähtefailide kaasata projekti ja seejärel seadke protokolli versioon järgmiste meetodite abil:
-
Rakendused, mis kasutavad ServicePointManager vastavalt API-d saate seada protokolli abil on following:System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolTypeExtensions.Tls12;
-
Rakendused, mis kasutavad SslStream AuthenticateAsClient (String X509CertificateCollection, SslProtocols, Boolean) ülekoormuse seada SslProtocols väärtust SslProtocolsExtensions.Tls12.
Esimeses lõigus mainitud registri väärtuseks on määratud, kui SslProtocols väärtuseks on seatud SslProtocols.Nonetaotluse, sõltub valitud süsteemi vaikekäitumise Windowsi versioon. Lisaks TLS-i v1.2 koos .NET Framework 3.5 SP1 toe lubamiseks rakenduse koodi muutmisel veenduge teil lahendada arvutis, kuhu see paik on juurutanud järgmised erandid:
-
Kui kiirparandus on installitud, ServicePointManager-põhinev API-d (HTTP, FTP, SMTP) viskavad "System.NotSupportedException: taotletud turvalisuse protokolli pole toetatud" kui rakendus kutsub ServicePointManager.SecurityProtocol uue väärtuse.
-
Kui kiirparandus on installitud, SslStream-põhinev API-d viskavad erandid, kui nad helistada kas AuthenticateAs * API-d:
System.ArgumentException: Määratud väärtus ei sobi "SslProtocolType" loendamine. Parameetri nimi: sslProtocolType
Märkus.Jaoks SslStream ainult, Tls12, Tls11 mis tahes olemasoleva Tls, Ssl3Ssl2 kombinatsiooni (nt: Tls12 | Tls11 | TLS) on vaikselt alandada olemasolevate protokollide (nt: Tls) ilma paiga. See on ühendatud Tls ilma viskamine erand.
Lisateave
Kui operatsioonisüsteemi vaikesätted TLS v1.1 või v1.2 lubamiseks järgige juhiseid https://technet.microsoft.com/library/dn786418(v=ws.11).aspx#BKMK_SchannelTR_TLS12.Märkus. TLS v1.1 ja v1.2 pole saadaval Windows Vista või Windows Server 2008.If, peate keelama operatsioonisüsteemi vaikesätted seadistatud registrivõti, mida on mainitud teatud rakenduste jaotises "Otsus" saate seda teha, lisades selle järgmises registrivõtmes:HKEY_LOCAL_MACHINE\SOFTWARE\[Wow6432Node\]Microsoft\.NETFramework\v2.0.50727\System.Net.ServicePointManager.SystemDefaultTlsVersions<<Full path of the .exe for the file>> DWORD 0C:\MyApp\MyApp.exe DWORD 0
TLS v1.2 kohta lisateabe saamiseks vaadake tutvustus TLS v1.2. Pärast seda, kui lubate .NET SystemDefaultTlsVersions registrivõti, erinevate käitumine ilmneb iga versiooni Windows, nagu on näidatud järgmises tabelis.
Windowsi versioon |
SSL2 klient |
SSL2 Server |
SSL3 kliendi |
SSL3 Server |
TLS 1.0 kliendi |
TLS 1.0 Server |
TLS 1.1 kliendi |
TLS 1.1 Server |
TLS 1.2 klient |
TLS 1.2 Server |
---|---|---|---|---|---|---|---|---|---|---|
Windows Vista hoolduspaketi SP2 ja Windows Server 2008 hoolduspaketi SP2 |
Välja |
Kohta |
Kohta |
Kohta |
Kohta |
Kohta |
N/A |
N/A |
N/A |
N/A |
Windows 7 SP1 ja Windows Server 2008 R2 hoolduspaketi SP1 |
Välja |
Kohta |
Kohta |
Kohta |
Kohta |
Kohta |
Välja |
Välja |
Välja |
Välja |
Windows Server 2012 |
Välja |
Välja |
Kohta |
Kohta |
Kohta |
Kohta |
Kohta |
Kohta |
Kohta |
Kohta |
Windows 8.1 ja Windows Server 2012 R2 |
Välja |
Välja |
Kohta |
Kohta |
Kohta |
Kohta |
Kohta |
Kohta |
Kohta |
Kohta |
Windows 10 |
Välja |
Välja |
Kohta |
Kohta |
Kohta |
Kohta |
Kohta |
Kohta |
Kohta |
Kohta |
Windows 10 (1511) |
Välja |
Välja |
Kohta |
Kohta |
Kohta |
Kohta |
Kohta |
Kohta |
Kohta |
Kohta |
Windows 10 (1607) ja Windows Server 2016 |
N/A |
N/A |
Välja |
Välja |
Kohta |
Kohta |
Kohta |
Kohta |
Kohta |
Kohta |