muka depanTutorial perisianSebab dan penyelesaian untuk "Permintaan dibatalkan: Gagal membuat saluran selamat SSL/TLS"
Sebab dan penyelesaian untuk "Permintaan dibatalkan: Gagal membuat saluran selamat SSL/TLS"

Perihalan: Permintaan dibatalkan: Gagal membuat saluran selamat SSL/TLS. Tidak dapat membuat saluran selamat SSL/TLS. Bina platform: Windows Server 2012, Windows 7 Service Pack 1 (SP1) dan Windows Server 2008 R2 SP1

[episod] muat turun laman web Ia adalah alat muat turun seluruh tapak Masukkan URL untuk dimuat turun dengan satu klik Ia mudah dan mudah digunakan dan mempunyai tugasan berbilang benang.

Penyelesaian 1: Tahap kod

Tetapkan kod sebelum HttpWebRequest

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

Penyelesaian 2: Tahap sistem

Jika kaedah di atas tidak berfungsi, ia adalah masalah peringkat sistem Kemas kini patch sistem mengikut sistem yang anda sedang gunakan.

Kemas kini untuk mendayakan TLS 1.1 dan TLS 1.2 sebagai protokol keselamatan lalai dalam WinHTTP dalam Windows, kemas kini ini menyediakan sokongan untuk Transport Layer Security (TLS) dalam Windows Server 2012, Windows 7 Service Pack 1 (SP1) dan Windows Server 2008 R2 SP1 1.1 dan sokongan TLS 1.2, sila rujuk dokumentasi rasmi https://support.microsoft.com/en-us/help/3140245/update-to-enable-tls-1-1-and-tls-1-2-as-default-secure-protocols-in-wi

Kemas kini patch KB3140245

Dayakan TLS 1.1 dan 1.2 pada Windows 7 pada tahap komponen SChannel (dengan sama ada kemas kini di bawah)

Kaedah 1: Gunakan pakej pemasangan kemas kini Microsoft untuk mengemas kini MicrosoftEasyFix51044.msi
Kaedah 2: Kemas kini pendaftaran secara manual

Salin kod pendaftaran berikut dan importnya ke dalam pendaftaran. Cipta txt baharu, tukar txt akhiran kepada reg (kunci pendaftaran) dan import (buat sandaran sebelum mengimport)

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

Sahkan sama ada sistem menyokong TLS1.2, TLS1.3

PowerShell dibuka:

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

Baris pertama kod menyemak versi TLS yang disokong Baris kedua kod mengubah suai sokongan TLS.

Penyelesaian 3: Naik taraf sistem

Kedua-dua kaedah sebelumnya tidak akan berfungsi, jadi anda hanya boleh menggunakan kaedah muktamad:

  • Naik taraf sistem kepada Windows 10 dan Windows Server 2019 (menyokong TLS1.2);
  • Naik taraf sistem kepada Windows 11 dan Windows Server 2022 (menyokong TLS1.3).

Nota: Untuk versi TSL tertentu yang disokong oleh setiap versi Windows, sila rujuk maklumat tambahan dalam artikel ini.


Kandungan rujukan lain

Kandungan rujukan lain satu

Penyelesaian wujud, tetapi ia bergantung pada versi rangka kerja:

.BERSIH 4.6 dan ke atas. Anda tidak perlu melakukan apa-apa kerja tambahan untuk menyokong TLS 1.2, ia disokong secara lalai.

.BERSIH 4.5. TLS 1.2 disokong, tetapi ia bukan protokol lalai. Anda perlu memilih untuk menggunakannya. Kod berikut menetapkan TLS 1.2 sebagai lalai, pastikan anda melaksanakannya sebelum menyambung ke sumber selamat:

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12

.BERSIH 4.0. TLS 1.2 tidak disokong, tetapi jika .NET 4.5 (atau lebih tinggi) dipasang pada sistem anda, anda masih mempunyai pilihan untuk menggunakan TLS 1.2 walaupun rangka kerja aplikasi anda tidak menyokong TLS 1.2. Satu-satunya masalah ialah SecurityProtocolType dalam .NET 4.0 tidak mempunyai entri untuk TLS1.2, jadi kita perlu menggunakan perwakilan berangka nilai enum ini:

ServicePointManager.SecurityProtocol =(SecurityProtocolType)3072;

.NET 3.5 atau lebih rendah. TLS 1.2(*) tidak disokong dan tiada penyelesaian. Tingkatkan aplikasi anda kepada versi terkini rangka kerja.

PS Untuk senario 3, terdapat juga penggodaman pendaftaran yang akan memaksa 4.5 untuk menggunakan TLS 1.2 secara lalai tanpa perlu memaksanya secara pemrograman. PPS Seperti yang dinyatakan oleh Christian Pop Microsoft di bawah, terdapat tampung terkini tersedia untuk .NET 3.5 yang membolehkan sokongan TLS1.2.

Lihat:

  • KB3154518 – Rollup Kebolehpercayaan HR-1605 – NDP 2.0 SP2 – Win7 SP1/Win 2008 R2 SP1
  • KB3154519 – Rollup Kebolehpercayaan HR-1605 – NDP 2.0 SP2 – Win8 RTM/Win 2012 RTM
  • KB3154520 – Rollup Kebolehpercayaan HR-1605 – NDP 2.0 SP2 – Win8.1RTM/Win 2012 R2 RTM
  • KB3156421 -1605 HotFix Rollup through Windows Update for Windows 10.

Kandungan rujukan lain 2

Mungkin panjang kunci sijil yang disediakan oleh tapak web ialah 512 bit, dan mengikut piawaian industri semasa, ia harus mengandungi kunci awam tidak kurang daripada 2048 bit. Kemas kini keselamatan September 2016 Microsoft menjawab isu ini dengan menyatakan bahawa jika panjang kunci awam kurang daripada 2048 bait (mis. RSA 512),Windows boleh membatalkan sambungan HTTPS

Kemas kini yang dipasang ialah

2012 R2 and Windows 8

  • KB3185331
  • KB3188743
  • KB3174644

2008 R2 and Windows 7

  • KB3185278
  • KB3185330
  • KB3192391
  • KB3175024
  • KB3172605

Kandungan rujukan lain tiga

SecurityProtocolType.Tls1.0=0xC0; SecurityProtocolType.Tls1.1=0x300; SecurityProtocolType.Tls1.2=0xC00;
.net 4.0/4.5 nilai lalai: SecurityProtocolType.Tls |

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

SCH_USE_STRONG_CRYPTO Bendera ini akan digunakan secara automatik dalam .NET Framework 4.6 https://support.microsoft.com/en-us/help/3154518/support-for-tls-system-default-versions-included-in-the-net-framework Dalam Win7Sp1 dan .Net 3.5.1, TLS1.2 disokong

ServicePointManager.SecurityProtocol &= ~SecurityProtocolType.Ssl3; //Tutup ssl3 ServicePointManager.SecurityProtocol |= (SecurityProtocolType)0x300 | (SecurityProtocolType)0xc00 dan sokongan untuk 1.2

Kesimpulan TLS1.2 adalah ini:

  • Memasang .Net3.5.1 memerlukan tampalan dan kemudian menambah penghitungan TLS1.2
  • Memasang .Net 4.0 memerlukan pengubahsuaian pendaftaran dan kemudian menambah penghitungan TLS1.2
  • Selepas memasang .Net4.5, anda juga perlu menambah penghitungan TLS1.2
  • Selepas memasang .Net4.6.1, TLS1.2 disokong secara lalai.

Pengubahsuaian pendaftaran di bawah .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

bahan tambahan

Artikel ini ditulis olehmuat turun laman webDikumpul dan disusun, kandungannya datang dari Internet, sila nyatakan sumber semasa mencetak semula, terima kasih.

Aplikasi perisian: muat turun templat bahagian hadapan dan pengoptimuman SEO; Nota: Perisian ini bukan program penggodam dan tidak boleh memuat turun data latar belakang!
Penafian: Perkhidmatan ini adalah untuk kajian peribadi, penyelidikan atau penghargaan, serta tujuan bukan komersial atau bukan keuntungan lain, tetapi pada masa yang sama ia harus mematuhi peruntukan undang-undang hak cipta dan undang-undang lain yang berkaitan, dan tidak boleh melanggar hak undang-undang laman web ini dan pemegang hak yang berkaitan Risiko yang berkaitan dengan menggunakan alat di laman web ini tiada kaitan dengan perisian ini.
Hak Cipta © 2019-2024 Perisian Arnab Hak Cipta Terpelihara Guangdong ICP No. 19111427-2
Maklumat tutorial Manual pengguna Topik laman web