https双向验证出现未能创建 SSL/TLS 安全通道的解决方法

原证书到期了,更换新证书后报错 未能创建 SSL/TLS 安全通道

本机调试正常,WinFrom程序测试正常,就是在IIS里调用异常.

考虑是证书权限问题,按以下步骤执行即可解决

1.导入证书,按默认方式即可

2.进入控制台(MMC),-->证书管理-->找到导入的证书-->右键-->所有任务-->管理私钥-->添加Everyone用户权限

3.问题解决

2020-12-02 补充

用了一段时间,突然又出现未能创建 SSL/TLS 安全通道的错误.经检查,Everyone用户权限还在.

尝试删除证书再添加无效

删除证书重启服务器,再添加证书和权限恢复

第二天又出现同样问题

百度找到终极解决方案:

修改IIS上对应项目的程序池标识

1. 打开IIS -> 选择[应用程序池] -> 选中对应的项目 -> 选择右侧的[高级设置]

2. 找到[进程模型] -> 修改[标识]属性值

3. 将 ApplicationPoolIdentity 修改为 LocalSystem

参考https://www.cnblogs.com/similar/p/6831899.html,感谢similar

Pass:

上面的方法以为解决了,实际上过一会就又失效了

真正解决方法:把证书放到站点目录下就OK了.

原来是放在D盘根目录下的,应该是IIS对非本站点目录的权限问题.

 PASS:

以上方法对现在的服务器依然无效,另一台服务器就正常.

用了读取已导入的证书的方法解决了问题

posted on 2020-11-10 17:28  梦一尘  阅读(787)  评论(0编辑  收藏  举报