Ondersteuning voor TLS standaard opgenomen in het .NET Framework 2.0 SP2 voor Windows Vista SP2 en Server 2008 SP2

.NET framework versie 2.0 Service Pack 2 (SP2) en eerdere versies hardcoded v3.0 Secure Sockets Layer (SSL) en Transport Layer Security (TLS) v1.0 door standaard tenzij een ander protocolversie is opgegeven door de toepassing .NET. Deze update voor .NET Framework 2.0 SP2 voor Windows Vista SP2 en Windows Server 2008 SP2 wordt de optie voor het gebruik van de SSL en TLS de standaardinstellingen die worden geleverd door het besturingssysteem toegevoegd.

Opmerking deze inhoud beschikbaar gesteld via Windows Update. Scan Windows Update voor de meest recente updates voor .NET Framework voor de inhoud. Als uw systeem volledig up-to-date via Windows Update is, hoeft u geen verdere actie te ondernemen. 

Oplossing

Informatie over downloaden

De volgende bestanden kunnen worden gedownload vanaf het Microsoft Download Center:Download x86-pakket nu downloaden.Download X64-pakket nu downloaden.Download De IA64-pakket nu downloaden. We hebben de volgende verbeteringen aangebracht in dit gebied:

  • De volgende Register sleutels kunnen worden ingesteld op het gebruik van het besturingssysteem standaard ingesteld voor SSL en TLS in plaats van .NET Framework van de hardcoded standaardinstellingen voor een beheerde toepassing wordt uitgevoerd op de computer.

    • Voor 64-bits besturingssystemen:[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

    • Voor 32-bits besturingssystemen:[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v2.0.50727]"SystemDefaultTlsVersions"=dword:00000001

    Opmerking Als de toepassing de ServicePointManager.SecureProtocol is ingesteld in de code of via de configuratiebestanden op een specifieke waarde of de SslStream.AuthenticateAs* API's gebruikt voor het opgeven van een specifieke SslProtocols enum de registerinstelling niet gebeurt.

  • Bovendien hebben we de SslProtocolsExtensions -opsomming die u als een optie gebruiken kunt voor het instellen van TLS 1.2, TLS v1.1, evenals de standaardinstellingen van het besturingssysteem voor de eigenschap ServicePointManager.SecurityProtocol wanneer de doelcomputer .NET toegevoegd Framework versie 2.0 SP2. (Zie de sectie Richtlijnen voor ontwikkelaars voor informatie over het gebruik van de extensies.) Opmerking Windows Vista SP2 en Windows Server 2008 SP2 bieden geen ondersteuning voor Transport Layer Security (TLS) protocol versies nieuwer is dan 1,0. Beheerde .NET Framework 2.0 SP2-toepassingen op Windows Vista SP2 of Windows Server 2008 SP2 niet gebruiken TLS 1.2 of TLS 1.1, zelfs als deze protocollen zijn ingesteld in de eigenschap ServicePointManager.SecurityProtocol .

Voor meer informatie over het downloaden van Microsoft-ondersteuningsbestanden klikt u op het volgende artikelnummer om het artikel in de Microsoft Knowledge Base weer te geven:

119591 Microsoft-ondersteuningsbestanden downloaden via online services Microsoft heeft dit bestand gecontroleerd op virussen. Hierbij is gebruikgemaakt van software voor virusdetectie die volledig bijgewerkt was op de datum dat het bestand beschikbaar werd gesteld. Het bestand is opgeslagen op beveiligde servers die onbevoegde wijzigingen aan het bestand helpen voorkomen.

Richtlijnen voor ontwikkelaars

De definitie van de nieuwe extensies zijn in de volgende bestanden:

  • 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;}}

De bronbestanden in uw project opnemen wilt opnemen in de ondersteuning voor TLS 1.2, en stel vervolgens de protocol-versie met behulp van de volgende methoden:

  • Toepassingen die van API's ServicePointManager gebruikmaken het protocol kunnen instellen met behulp van de following:System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolTypeExtensions.Tls12;

  • Toepassingen die van de SslStream AuthenticateAsClient (String, X509CertificateCollection, SslProtocols, Boolean) overbelasting gebruikmaken kunnen de waarde SslProtocols als SslProtocolsExtensions.Tls12.

Als de registerinstelling die wordt vermeld in de eerste alinea is ingesteld en de waarde SslProtocols is ingesteld in de toepassing als SslProtocols.None, afhankelijk het standaardgedrag van het systeem dat wordt gekozen van de versie van Windows. Ook wanneer u de toepassingscode voor het inschakelen van ondersteuning voor TLS 1.2 met .NET Framework 3.5 SP1 wijzigt, moet u ervoor zorgen dat u de volgende uitzonderingen op computers waarop deze beveiligingspatch niet is geïmplementeerd adres:

  1. Als u de hotfix niet is geïnstalleerd, ServicePointManager-gebaseerde API's (HTTP, FTP, SMTP) genereert 'System.NotSupportedException: de aangevraagde beveiligingsprotocol wordt niet ondersteund ' wanneer de toepassing wordt aangeroepen ServicePointManager.SecurityProtocol de nieuwe waarde in te stellen.

  2. Als u de hotfix niet is geïnstalleerd, SslStream-gebaseerde API's genereert uitzonderingen wanneer ze een van de AuthenticateAs *-API's aanroepen:

    System.ArgumentException: De opgegeven waarde is niet geldig in de opsomming 'SslProtocolType'. Naam: sslProtocolType

Opmerking Voor SslStream , een combinatie van Tls12, Tls11 met een van de bestaande TlsSsl3, Ssl2 (bijvoorbeeld: Tls12 | Tls11 | TLS) wordt zonder melding te wijzigen om de bestaande protocollen (bijvoorbeeld: Tls) op een systeem zonder de patch. Deze verbinding met Tls zonder dat de uitzondering.

Meer informatie

Waarmee u TLS v1.1 of v1.2 als standaard besturingssysteem, volg de instructies op de https://technet.microsoft.com/en-us/library/dn786418(v=ws.11).aspx#BKMK_SchannelTR_TLS12.Opmerking TLS v1.1 en v1.2 zijn niet beschikbaar in Windows Vista of Windows Server 2008.If u uitschakelen, het besturingssysteem standaardwaarden die zijn ingesteld door de registersleutel die wordt vermeld in de sectie 'Oplossing' voor specifieke toepassingen moet, kunt u dit doen door het toevoegen van de volgende registersleutel: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

Zie voor meer informatie over TLS 1.2 Introductie van TLS 1.2. Nadat u de registersleutel SystemDefaultTlsVersions .NET hebt ingeschakeld, een ander gebeurt voor elke versie van Windows, zoals in de volgende tabel.

Windows-versie

SSL2 Client

SSL2 Server

SSL3 Client

SSL3 Server

TLS 1.0 Client

TLS 1.0 Server

TLS 1.1 Client

TLS 1.1 Server

TLS 1.2 Client

TLS 1.2 Server

Windows Vista SP2 en Windows Server 2008 SP2

Uitschakelen

Op

Op

Op

Op

Op

N/A

N/A

N/A

N/A

Windows 7 SP1 en Windows Server 2008 R2 SP1

Uitschakelen

Op

Op

Op

Op

Op

Uitschakelen

Uitschakelen

Uitschakelen

Uitschakelen

Windows Server 2012

Uitschakelen

Uitschakelen

Op

Op

Op

Op

Op

Op

Op

Op

Windows 8.1 en Windows Server 2012 R2

Uitschakelen

Uitschakelen

Op

Op

Op

Op

Op

Op

Op

Op

Windows 10

Uitschakelen

Uitschakelen

Op

Op

Op

Op

Op

Op

Op

Op

Windows 10 (1511)

Uitschakelen

Uitschakelen

Op

Op

Op

Op

Op

Op

Op

Op

Windows 10 (1607) en Windows Server 2016

N/A

N/A

Uitschakelen

Uitschakelen

Op

Op

Op

Op

Op

Op

Meer hulp nodig?

Uw vaardigheden uitbreiden
Training verkennen
Als eerste nieuwe functies krijgen
Deelnemen aan Microsoft insiders

Was deze informatie nuttig?

Bedankt voor uw feedback.

Hartelijk dank voor uw feedback! Het lijkt ons een goed idee om u in contact te brengen met een van onze Office-ondersteuningsagenten.

×