我们的网站是 .NET 3.5 版本,这意味着它不支持 TLS 1.2。除了升级到 .NET 4.5 之外,还有其他实现 TLS 1.2 的方法吗?
升级到 4.5 是最好的解决方案,但这将是一个巨大的项目,需要大量资源,我们根本无法在 2017 年 6 月之前完成。
最佳答案
你需要:
如果是 Windows Server 2008 R2,您将需要 .NET 3.5.1 ( https://support.microsoft.com/en-us/kb/3154518 )
我相信以下内容会告诉 .NET 使用 SCHANNEL 允许的版本(我认为这是首选): [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
否则,TLS 1.1 和 1.2 的另一种方式: [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft.NETFramework\v2.0.50727] "SchUseStrongCrypto"=dword:00000001 [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft.NETFramework\v2.0.50727] "SchUseStrongCrypto"=dword:00000001
您还需要告诉操作系统在 SCHANNEL 中启用 Tls 1.2,格式如下: [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2] [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
附加信息: https://support.microsoft.com/en-us/kb/3135244 https://blogs.msdn.microsoft.com/dataaccesstechnologies/2016/07/12/enable-tls-1-2-protocol-for-reporting-services-with-custom-net-application/
关于api - Paypal TLS 1.2 和 .NET 3.5 兼容性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37271871/