prima paginaEsercitazione sul softwareMotivi e soluzioni per "Richiesta interrotta: creazione del canale sicuro SSL/TLS non riuscita"
Motivi e soluzioni per "Richiesta interrotta: creazione del canale sicuro SSL/TLS non riuscita"

Descrizione: Richiesta interrotta: creazione del canale sicuro SSL/TLS non riuscita. Impossibile creare un canale sicuro SSL/TLS. Piattaforme di creazione: Windows Server 2012, Windows 7 Service Pack 1 (SP1) e Windows Server 2008 R2 SP1

[episodio] download del sito web È uno strumento di download dell'intero sito. Inserisci l'URL per scaricare con un clic. È semplice e facile da usare e ha attività multi-thread.

Soluzione 1: livello di codice

Imposta il codice prima di HttpWebRequest

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

Soluzione 2: livello di sistema

Se il metodo sopra non funziona, si tratta di un problema a livello di sistema Aggiorna la patch di sistema in base al sistema che stai attualmente utilizzando.

Aggiornamento per abilitare TLS 1.1 e TLS 1.2 come protocolli di sicurezza predefiniti in WinHTTP in Windows, questo aggiornamento fornisce supporto per Transport Layer Security (TLS) in Windows Server 2012, Windows 7 Service Pack 1 (SP1) e Windows Server 2008 R2 SP1 1.1 e supporto TLS 1.2, fare riferimento alla documentazione ufficiale https://support.microsoft.com/en-us/help/3140245/update-to-enable-tls-1-1-and-tls-1-2-as-default-secure-protocols-in-wi

Patch di aggiornamento KB3140245

Abilita TLS 1.1 e 1.2 su Windows 7 a livello del componente SChannel (con uno degli aggiornamenti di seguito)

Metodo 1: utilizzare il pacchetto di installazione degli aggiornamenti Microsoft per aggiornare MicrosoftEasyFix51044.msi
Metodo 2: aggiornare manualmente il registro

Copia il seguente codice di registro e importalo nel registro. Crea un nuovo txt, modifica il suffisso txt in reg (chiave di registro) e importa (esegui un backup prima dell'importazione)

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

Verificare se il sistema supporta TLS1.2, TLS1.3

Si apre PowerShell:

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

La prima riga di codice controlla la versione TLS supportata. La seconda riga di codice modifica il supporto TLS.

Soluzione 3: aggiornare il sistema

Nessuno dei due metodi precedenti funzionerà, quindi puoi utilizzare solo il metodo definitivo:

  • Aggiorna il sistema a Windows 10 e Windows Server 2019 (supporta TLS1.2);
  • Aggiorna il sistema a Windows 11 e Windows Server 2022 (supporta TLS1.3).

Nota: per le versioni TSL specifiche supportate da ciascuna versione di Windows, fare riferimento alle informazioni supplementari in questo articolo.


Altri contenuti di riferimento

Altro contenuto di riferimento

Le soluzioni esistono, ma dipendono dalla versione del framework:

.NET 4.6 e versioni successive. Non è necessario eseguire alcuna operazione aggiuntiva per supportare TLS 1.2, è supportato per impostazione predefinita.

.NET 4.5. TLS 1.2 è supportato, ma non è il protocollo predefinito. Devi scegliere di usarlo. Il seguente codice imposta TLS 1.2 come predefinito, assicurati di eseguirlo prima di connetterti a una risorsa sicura:

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12

.NET 4.0. TLS 1.2 non è supportato, ma se nel tuo sistema è installato .NET 4.5 (o versione successiva), hai comunque la possibilità di utilizzare TLS 1.2 anche se il framework dell'applicazione non supporta TLS 1.2. L'unico problema è che SecurityProtocolType in .NET 4.0 non ha alcuna voce per TLS1.2, quindi dobbiamo utilizzare la rappresentazione numerica di questo valore enum:

ServicePointManager.SecurityProtocol =(SecurityProtocolType)3072;

.NET 3.5 o versione precedente. TLS 1.2(*) non è supportato e non esiste alcuna soluzione alternativa. Aggiorna la tua applicazione alla versione più recente del framework.

PS Per lo scenario 3, esiste anche un hack del registro che imporrà alla versione 4.5 di utilizzare TLS 1.2 per impostazione predefinita senza doverlo forzare a livello di programmazione. PPS Come menzionato di seguito da Christian Pop di Microsoft, è disponibile un'ultima patch per .NET 3.5 che abilita il supporto TLS1.2.

Vedere:

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

Altri contenuti di riferimento 2

Forse la lunghezza della chiave del certificato fornita dal sito Web è di 512 bit e, secondo gli attuali standard del settore, dovrebbe contenere una chiave pubblica non inferiore a 2048 bit. L'aggiornamento di sicurezza di settembre 2016 di Microsoft ha risposto a questo problema affermando che se la lunghezza della chiave pubblica è inferiore a 2048 byte (ad esempio RSA 512),Windows può annullare le connessioni HTTPS

Gli aggiornamenti installati sono

2012 R2 and Windows 8

  • KB3185331
  • KB3188743
  • KB3174644

2008 R2 and Windows 7

  • KB3185278
  • KB3185330
  • KB3192391
  • KB3175024
  • KB3172605

Altri contenuti di riferimento tre

SecurityProtocolType.Tls1.0=0xC0; SecurityProtocolType.Tls1.1=0x300; SecurityProtocolType.Tls1.2=0xC00;
valore predefinito .net 4.0/4.5: SecurityProtocolType.Tls |. SecurityProtocolType.Ssl3 valore predefinito .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 Questo flag verrà utilizzato automaticamente in .NET Framework 4.6 https://support.microsoft.com/en-us/help/3154518/support-for-tls-system-default-versions-included-in-the-net-framework In Win7Sp1 e .Net 3.5.1, è supportato TLS1.2

ServicePointManager.SecurityProtocol &= ~SecurityProtocolType.Ssl3; //Chiudi ssl3 ServicePointManager.SecurityProtocol |= (SecurityProtocolType)0x300 (SecurityProtocolType)0xc00;

La conclusione di TLS1.2 è questa:

  • L'installazione di .Net3.5.1 richiede una patch e quindi l'aggiunta dell'enumerazione TLS1.2
  • L'installazione di .Net 4.0 richiede la modifica del registro e l'aggiunta dell'enumerazione TLS1.2
  • Dopo aver installato .Net4.5, è necessario aggiungere anche l'enumerazione TLS1.2
  • Dopo aver installato .Net4.6.1, TLS1.2 è supportato per impostazione predefinita.

Modifica del registro in .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

materiali aggiuntivi

Questo articolo è scritto dadownload del sito webRaccolti e organizzati, i contenuti provengono da Internet, si prega di indicare la fonte in caso di ristampa, grazie.

Applicazione software: download e progettazione di template front-end; ottimizzazione SEO offline; Nota: questo software non è un programma hacker e non può scaricare dati in background!
Dichiarazione di non responsabilità: il servizio è destinato allo studio, alla ricerca o all'apprezzamento personale, nonché ad altri scopi non commerciali o senza scopo di lucro, ma allo stesso tempo deve essere conforme alle disposizioni della legge sul copyright e ad altre leggi pertinenti e non deve violare i diritti diritti legali di questo sito Web e dei relativi titolari dei diritti. I rischi associati all'utilizzo degli strumenti di questo sito non hanno nulla a che fare con questo software.
Copyright © 2019-2024 Rabbit Software Tutti i diritti riservati N. ICP Guangdong 19111427-2
Informazioni sull'esercitazione Manuale d'uso Argomenti del sito web