You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Visual Studio集成IIS Express调试时强制TLS1.2并禁用TLS1.0/1.1

我来帮你搞定这个问题!在Visual Studio搭配IIS Express调试时,要禁用TLS 1.0/1.1并强制使用TLS 1.2,你可以按照下面的步骤一步步操作:

步骤1:修改系统注册表禁用旧版TLS协议(全局生效)

IIS Express依赖系统的SCHANNEL组件处理SSL/TLS连接,所以首先要通过注册表禁用TLS 1.0和1.1,同时确保TLS 1.2处于启用状态:

  1. 按下Win+R,输入regedit打开注册表编辑器。
  2. 导航到以下路径:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols
    
  3. 分别创建或修改以下子项和键值:
    • 禁用TLS 1.0:
      • 创建TLS 1.0子项,在其下再创建Server和Client子项。
      • 在每个子项中新建DWORD (32位)值:
        • Enabled:设置为0
        • DisabledByDefault:设置为1
    • 禁用TLS 1.1:
      • 重复上述操作,创建TLS 1.1子项及下属的Server、Client子项,同样设置Enabled=0,DisabledByDefault=1
    • 确保TLS 1.2启用:
      • 如果没有TLS 1.2子项,就创建它并添加Server、Client子项。
      • 在每个子项中设置:
        • Enabled:设置为1
        • DisabledByDefault:设置为0

注意:修改注册表后,建议重启电脑,确保设置完全生效。

步骤2:配置IIS Express站点,强制使用TLS 1.2

接下来针对你的调试站点,在IIS Express的配置文件里明确指定只允许TLS 1.2连接:

  1. 找到applicationhost.config文件:
    • 全局配置:%USERPROFILE%\Documents\IISExpress\config\applicationhost.config
    • 项目本地配置(优先推荐,仅影响当前项目):项目根目录下的.vs\{你的项目名}\config\applicationhost.config(.vs是隐藏文件夹,需要开启显示隐藏文件)
  2. 打开文件后,找到对应你的站点的<site>节点(可通过name属性匹配项目名)。
  3. 在该站点的<system.webServer>节点下,添加或修改<security>配置:
    <system.webServer>
      <security>
        <!-- 仅允许TLS 1.2连接 -->
        <access sslFlags="Ssl12" />
      </security>
    </system.webServer>
    
  4. 保存文件,关闭并重新打开Visual Studio,重启IIS Express调试服务。
步骤3:验证设置是否生效

完成上面的操作后,你可以通过两种方式验证:

  • 浏览器验证:启动调试后,打开浏览器访问你的站点,按下F12打开开发者工具,切换到「网络」标签,刷新页面,查看请求的「协议」列,应该显示TLS 1.2。
  • 命令行验证:使用curl命令测试(Windows 10及以上自带curl):
    • 测试TLS 1.0:curl -v --tlsv1.0 https://localhost:{你的调试端口},应该会出现连接失败的错误。
    • 测试TLS 1.2:curl -v --tlsv1.2 https://localhost:{你的调试端口},应该能正常返回站点内容。

这样就能确保你的调试环境和生产环境一致,强制使用TLS 1.2,方便你排查禁用旧版TLS后的故障问题啦!

内容的提问来源于stack exchange,提问作者SeyoS

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.14 08:15:15