Artikelkatalog
  1. 1. Lösning ett:
  2. 2. Lösning 2
    1. 2.1. uppdatera patch
    2. 2.2. Ställ in standardvärde
    3. 2.3. Verifieringssystem
  3. 3. Lösning tre
  4. 4. Annat referensinnehåll

Beskrivning: Begäran avbröts: Det gick inte att skapa SSL/TLS säker kanal. Det gick inte att skapa SSL/TLS säker kanal.

Byggplattformar: Windows Server 2012, Windows 7 Service Pack 1 (SP1) och Windows Server 2008 R2 SP1

Lösning ett:

Ställ in koden före HttpWebRequest

ServicePointManager.Expect100Continue = true;

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls;

ServicePointManager.ServerCertificateValidationCallback = (sender, certificate, chain, errors) => true;

Lösning 2

  • Om metoden ovan inte fungerar är det ett problem på systemnivå. Uppdatera systemkorrigeringen enligt det system du använder för närvarande.

Uppdatering för att aktivera TLS 1.1 och TLS 1.2 som standardsäkerhetsprotokoll i WinHTTP i Windows, den här uppdateringen ger stöd för Transport Layer Security (TLS) i Windows Server 2012, Windows 7 Service Pack 1 (SP1) och Windows Server 2008 R2 SP1 1.1 och TLS 1.2 support, se den officiella dokumentationenhttps://support.microsoft.com/en-us/help/3140245/update-to-enable-tls-1-1-and-tls-1-2-as-default-secure-protocols-in-wi

uppdatera patch

Ställ in standardvärde

  • Aktivera TLS 1.1 och 1.2 på Windows 7 på SChannel-komponentnivå (använd en av 2.1- eller 2.2-uppdateringarna nedan)

2.1 Microsoft installerar och uppdaterar registret:http://download.microsoft.com/download/0/6/5/0658B1A7-6D2E-474F-BC2C-D69E5B9E9A68/MicrosoftEasyFix51044.msi

2.2 Uppdatera registret manuellt, kopiera följande registerkod och importera det till registret. Skapa en ny txt, ändra suffixet txt till reg (registernyckel) och importera (gör en säkerhetskopia innan du importerar)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\WinHttp]
"DefaultSecureProtocols"=dword:00000800

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Internet Settings\WinHttp]
"DefaultSecureProtocols"=dword:00000800

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client]
"DisabledByDefault"=dword:00000000
"Enabled"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server]
"DisabledByDefault"=dword:00000000
"Enabled"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client]
"DisabledByDefault"=dword:00000000
"Enabled"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server]
"DisabledByDefault"=dword:00000000
"Enabled"=dword:00000001

Verifieringssystem

  • Kontrollera om systemet stöder TLS1.2, TLS1.3

PowerShell öppnas:

Net.ServicePointManager::SecurityProtocol = [Net.SecurityProtocolType]::Ssl3 -bor [Net.SecurityProtocolType]::Tls -bor [Net.SecurityProtocolType]::Tls11 -bor [Net.SecurityProtocolType]::Tls12

Lösning tre

  • Ingen av de två föregående metoderna fungerar Du kan bara använda den ultimata metoden för att uppgradera systemet till Windows 10.

Annat referensinnehåll

https://blogs.perficient.com/2016/04/28/tsl-1-2-and-net-support/

Lösningar finns, men de beror på ramversionen:

.NET 4.6 och senare. Du behöver inte göra något extra arbete för att stödja TLS 1.2, det stöds som standard.

.NET 4.5. TLS 1.2 stöds, men det är inte standardprotokollet. Du måste välja att använda den. Följande kod ställer in TLS 1.2 som standard, se till att köra den innan du ansluter till en säker resurs:
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12

.NET 4.0. TLS 1.2 stöds inte, men om .NET 4.5 (eller högre) är installerat på ditt system har du fortfarande möjlighet att använda TLS 1.2 även om ditt applikationsramverk inte stöder TLS 1.2. Det enda problemet är att SecurityProtocolType i .NET 4.0 inte har någon post för TLS1.2, så vi måste använda den numeriska representationen av detta enumvärde:
ServicePointManager.SecurityProtocol =(SecurityProtocolType)3072;

.NET 3.5 eller lägre. TLS 1.2(*) stöds inte och det finns ingen lösning. Uppgradera din applikation till den senaste versionen av ramverket.

PS För scenario 3 finns det också ett registerhack som tvingar 4.5 att använda TLS 1.2 som standard utan att behöva tvinga det programmatiskt.
PPS Som Microsofts Christian Pop nämner nedan finns det en senaste patch tillgänglig för .NET 3.5 som möjliggör TLS1.2-stöd.
Ser:
KB3154518 – Tillförlitlighetssamlad HR-1605 – NDP 2.0 SP2 – Win7 SP1/Win 2008 R2 SP1
KB3154519 – Tillförlitlighetssamlad HR-1605 – NDP 2.0 SP2 – Win8 RTM/Win 2012 RTM
KB3154520 – Tillförlitlighetssamlad HR-1605 – NDP 2.0 SP2 – Win8.1RTM/Win 2012 R2 RTM
KB3156421 -1605 HotFix Rollup through Windows Update for Windows 10.

Artikelkatalog
  1. 1. Lösning ett:
  2. 2. Lösning 2
    1. 2.1. uppdatera patch
    2. 2.2. Ställ in standardvärde
    3. 2.3. Verifieringssystem
  3. 3. Lösning tre
  4. 4. Annat referensinnehåll