първа страницаУрок по софтуерПричини и решения за „Заявката е прекратена: Неуспешно създаване на SSL/TLS защитен канал“
Причини и решения за „Заявката е прекратена: Неуспешно създаване на SSL/TLS защитен канал“

Описание: Заявката е прекратена: Неуспешно създаване на SSL/TLS защитен канал. Не можа да се създаде SSL/TLS защитен канал. Платформи за изграждане: Windows Server 2012, Windows 7 Service Pack 1 (SP1) и Windows Server 2008 R2 SP1

[епизод] изтегляне на уебсайт Това е инструмент за изтегляне на целия сайт. Въведете URL адреса за изтегляне с едно кликване. Той е прост и лесен за използване и има многонишкови задачи.

Решение 1: Ниво на код

Задайте код преди HttpWebRequest

ServicePointManager.Expect100Continue = true; ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls; ServicePointManager.ServerCertificateValidationCallback = (sender, certificate, chain, errors) => true;

Решение 2: Системно ниво

Ако горният метод не работи, това е проблем на системно ниво Актуализирайте системната корекция според системата, която използвате в момента.

Актуализация за активиране на TLS 1.1 и TLS 1.2 като протоколи за защита по подразбиране в WinHTTP в Windows, тази актуализация осигурява поддръжка за защита на транспортния слой (TLS) в Windows Server 2012, Windows 7 Service Pack 1 (SP1) и Windows Server 2008 R2 SP1 1.1 и поддръжка на TLS 1.2, моля, вижте официалната документация https://support.microsoft.com/en-us/help/3140245/update-to-enable-tls-1-1-and-tls-1-2-as-default-secure-protocols-in-wi

Актуализирайте корекция KB3140245

Активирайте TLS 1.1 и 1.2 в Windows 7 на ниво компонент на SChannel (с някоя от актуализациите по-долу)

Метод 1: Използвайте инсталационния пакет за актуализация на Microsoft, за да актуализирате MicrosoftEasyFix51044.msi
Метод 2: Ръчно актуализиране на системния регистър

Копирайте следния код на регистъра и го импортирайте в регистъра. Създайте нов txt, променете суфикса txt на reg (ключ в регистъра) и импортирайте (направете резервно копие преди импортиране)

WIN7 64
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\WinHttp] "DefaultSecureProtocols"=dword:00000a00 [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Internet Settings\WinHttp] "DefaultSecureProtocols"=dword:00000a00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings] "SecureProtocols"=dword:00000a80 [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings] "SecureProtocols"=dword:00000a80
Windows Server
[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

Проверете дали системата поддържа TLS1.2, TLS1.3

PowerShell се отваря:

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

Първият ред от кода проверява поддържаната версия на TLS.

Решение 3: Надстройте системата

Нито един от предишните два метода няма да работи, така че можете да използвате само най-добрия метод:

  • Надстройте системата до Windows 10 и Windows Server 2019 (поддържа TLS1.2);
  • Надстройте системата до Windows 11 и Windows Server 2022 (поддържа TLS1.3).

Забележка: За конкретни версии на TSL, поддържани от всяка версия на Windows, вижте допълнителната информация в тази статия.


Друго референтно съдържание

Друго референтно съдържание едно

Съществуват решения, но те зависят от версията на рамката:

.NET 4.6 и по-нова версия. Не е необходимо да правите допълнителна работа, за да поддържате TLS 1.2, той се поддържа по подразбиране.

.NET 4.5. TLS 1.2 се поддържа, но не е протоколът по подразбиране. Трябва да изберете да го използвате. Следният код задава TLS 1.2 по подразбиране, не забравяйте да го изпълните, преди да се свържете към защитен ресурс:

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12

.NET 4.0. TLS 1.2 не се поддържа, но ако на вашата система е инсталиран .NET 4.5 (или по-нова версия), все още имате възможност да използвате TLS 1.2, дори ако рамката на вашето приложение не поддържа TLS 1.2. Единственият проблем е, че SecurityProtocolType в .NET 4.0 няма запис за TLS1.2, така че трябва да използваме цифровото представяне на тази enum стойност:

ServicePointManager.SecurityProtocol =(SecurityProtocolType)3072;

.NET 3.5 или по-ниска версия. TLS 1.2(*) не се поддържа и няма заобиколно решение. Надстройте приложението си до най-новата версия на рамката.

PS За сценарий 3 има и хакване на системния регистър, което ще принуди 4.5 да използва TLS 1.2 по подразбиране, без да се налага да го принуждава програмно. PPS Както Крисчън Поп от Microsoft споменава по-долу, има най-нова налична корекция за .NET 3.5, която позволява поддръжка на TLS1.2.

Вижте:

  • KB3154518 – Сборен пакет за надеждност HR-1605 – NDP 2.0 SP2 – Win7 SP1/Win 2008 R2 SP1
  • KB3154519 – Сборен пакет за надеждност HR-1605 – NDP 2.0 SP2 – Win8 RTM/Win 2012 RTM
  • KB3154520 – Сборен пакет за надеждност HR-1605 – NDP 2.0 SP2 – Win8.1RTM/Win 2012 R2 RTM
  • KB3156421 -1605 HotFix Rollup through Windows Update for Windows 10.

Друго референтно съдържание 2

Може би дължината на ключа на сертификата, предоставена от уебсайта, е 512 бита и според настоящите индустриални стандарти трябва да съдържа публичен ключ от не по-малко от 2048 бита. Актуализацията на сигурността на Microsoft от септември 2016 г. отговори на този проблем, като заяви, че ако дължината на публичния ключ е по-малка от 2048 байта (напр. RSA 512),Windows може да анулира HTTPS връзки

Инсталираните актуализации са

2012 R2 and Windows 8

  • KB3185331
  • KB3188743
  • KB3174644

2008 R2 and Windows 7

  • KB3185278
  • KB3185330
  • KB3192391
  • KB3175024
  • KB3172605

Друго референтно съдържание три

SecurityProtocolType.Tls1.0=0xC0; SecurityProtocolType.Tls1.1=0x300; SecurityProtocolType.Tls1.2=0xC00;
.net 4.0/4.5 стойност по подразбиране: SecurityProtocolType.Ssl3 .net 4.6/4.7 стойност по подразбиране: SecurityProtocolType.Tls11 |

https://support.microsoft.com/en-us/help/3069494/cannot-connect-to-a-server-by-using-the-servicepointmanager-or-sslstre

SCH_USE_STRONG_CRYPTO Този флаг ще се използва автоматично в .NET Framework 4.6 https://support.microsoft.com/en-us/help/3154518/support-for-tls-system-default-versions-included-in-the-net-framework В Win7Sp1 и .Net 3.5.1 се поддържа TLS1.2

ServicePointManager.SecurityProtocol &= ~SecurityProtocolType.Ssl3; //Затваряне на ssl3 ServicePointManager.SecurityProtocol |= (SecurityProtocolType)0xc00;

Заключението на TLS1.2 е следното:

  • Инсталирането на .Net3.5.1 изисква корекция и след това добавяне на TLS1.2 изброяване
  • Инсталирането на .Net 4.0 изисква модифициране на системния регистър и след това добавяне на TLS1.2 изброяване
  • След като инсталирате .Net4.5, вие също трябва да добавите TLS1.2 изброяване
  • След инсталиране на .Net4.6.1, TLS1.2 се поддържа по подразбиране.

Модификация на системния регистър под .net4

Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319] "SchUseStrongCrypto"=dword:00000001 [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319] "SchUseStrongCrypto"=dword:00000001

допълнителни материали

Тази статия е написана отизтегляне на уебсайтСъбрано и организирано, съдържанието идва от Интернет, моля, посочете източника при препечатване, благодаря.

Софтуерно приложение: изтегляне на преден шаблон; SEO оптимизация; Забележка: Този софтуер не е хакерска програма и не може да изтегля фонови данни!
Отказ от отговорност: Услугата е за лично изучаване, проучване или оценяване, както и за други некомерсиални или нестопански цели, но в същото време тя трябва да отговаря на разпоредбите на закона за авторското право и други приложими закони и не трябва да нарушава законните права на този уебсайт и притежателите на свързани права Рисковете, свързани с използването на инструментите на този сайт, нямат нищо общо с този софтуер.
Авторско право © 2019-2024 Rabbit Software Всички права запазени Гуандун ICP № 19111427-2
Информация за урока Ръководство за употреба Теми на уебсайта