本文主要是介绍为 WinHTTP 配置SSL\TLS安全协议,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
本文将介绍如何使用 DefaultSecureProtocols 注册表项配置 Windows HTTP 服务 (WinHTTP) 的安全协议。
注册表项 DefaultSecureProtocols 允许我们指定当使用了 WINHTTP_OPTION_SECURE_PROTOCOLS 标志时可以使用哪些 SSL \TLS协议。 该配置使得构建为使用 WinHTTP 默认标志的应用程序能够使用较新的 TLS 协议,或者不需要对应用程序进行任何更新便可阻止较旧的基于 SSL 的协议。
配置WinHTTP安全协议的先决条件
-
使用 WINHTTP_OPTION_SECURE_PROTOCOLS 计算 DefaultSecureProtocols 的值。
-
确认你的账号权限对系统具有管理员权限。
-
确保计算机已安装 PowerShell。
配置 DefaultSecureProtocols
若要添加和设置 DefaultSecureProtocols 注册表项,请执行以下操作:
X86计算机
-
打开提升的 PowerShell 命令提示符。
-
若要创建和设置 DefaultSecureProtocols 注册表项,请运行以下命令(将 {value} 替换为你在计算值中选择的 DefaultSecureProtocols 值)。
Get-Item -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\WinHttp" | New-ItemProperty -Name "DefaultSecureProtocols" -Value "{value}"
- 重启计算机或重新启动使用 WinHTTP 的任何服务。
X64计算机
-
打开提升的 PowerShell 命令提示符。
-
若要创建和设置 DefaultSecureProtocols 注册表项,请运行以下命令(将 {value} 替换为你在计算值中选择的 DefaultSecureProtocols 值)。
Get-Item -Path "HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Internet Settings\WinHttp" | New-ItemProperty -Name "DefaultSecureProtocols" -Value "{value}"
- 重启计算机或重新启动使用 WinHTTP 的任何服务。
WINHTTP_OPTION_SECURE_PROTOCOLS
设置一个无符号长整数值,该值指定哪些安全协议是可接受的。
- Windows 11、Windows 10 和 Windows 8.1。 默认情况下,仅启用 SSL3、TLS1.0、TLS1.1 和 TLS1.2。
- Windows 8 和 Windows 7。 默认情况下,仅启用 SSL3 和 TLS1。
该值可以是以下一个或多个值的组合。
术语 | 说明 |
---|---|
WINHTTP_FLAG_SECURE_PROTOCOL_ALL | 可以使用安全套接字层 (SSL) 2.0、SSL 3.0 和传输层安全性 (TLS) 1.0 协议。 |
WINHTTP_FLAG_SECURE_PROTOCOL_SSL2 | 可以使用 SSL 2.0 协议。 |
WINHTTP_FLAG_SECURE_PROTOCOL_SSL3 | 可以使用 SSL 3.0 协议。 |
WINHTTP_FLAG_SECURE_PROTOCOL_TLS1 | 可以使用 TLS 1.0 协议。 |
WINHTTP_FLAG_SECURE_PROTOCOL_TLS1_1 | 可以使用 TLS 1.1 协议。 |
WINHTTP_FLAG_SECURE_PROTOCOL_TLS1_2 | 可以使用 TLS 1.2 协议。 |
WINHTTP_FLAG_SECURE_PROTOCOL_TLS1_3 | 可以使用 TLS 1.3 协议。 |
注册表DefaultSecureProtocols 值
注册表值为 DWORD 位图。 要使用的值是通过添加与所需协议对应的值。
DefaultSecureProtocols 值 | 协议已启用 |
---|---|
0x00000008 | 默认启用 SSL 2.0 |
0x00000020 | 默认启用 SSL 3.0 |
0x00000080 | 默认启用 TLS 1.0 |
0x00000200 | 默认启用 TLS 1.1 |
0x00000800 | 默认启用 TLS 1.2 |
推荐阅读
- HTTP状态码301(永久重定向)不同Web服务器的配置方法
- C/S架构中HTTP错误状态码原因分析及解决办法
- Windows Server 2022 开始,DNS 客户端支持 DNS over-HTTPS (DoH)
- Windows 11和Windows 2022 TLS/SSL(Schannel SSP)的加密套件
- 一文了解Wi-Fi 7有哪些新的特性
- DFS(分布式文件系统)与 DFSR(分布式文件系统复制)的区别
这篇关于为 WinHTTP 配置SSL\TLS安全协议的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!