Win10笔记本绑定SSL证书到6286端口时遇1312登录会话不存在错误
问题描述
我持有一张通配符证书,需在IIS上安装,并使用netsh将其绑定到6286端口,以供自托管SignalR服务器使用。自2018年以来,我已在6台Azure VM 2019和2022服务器、1台2019开发服务器以及1台Win10开发笔记本上完成过此操作。
4月1日续订证书后,成功在除Win10笔记本外的所有服务器上完成安装。使用了与其他设备相同的证书文件和中间证书,也卸载并重新安装过这两种证书,但在提升权限的命令窗口中执行以下命令时,仍持续出现错误:
netsh http delete sslcert ipport=0.0.0.0:6286 netsh http add sslcert ipport=0.0.0.0:6286 appid={12345678-db90-4b66-8b01-88f7af2e36bf} certhash=426a467d86b1cc7371a805faac30071f4fe478ba
错误信息:
SSL Certificate add failed, Error: 1312 A specified logon session does not exist
证书已成功在IIS上安装并绑定,但无法绑定到6286端口。证书存放路径与其他设备一致:
.cer文件放在本地计算机-个人-证书- 中间证书
gd-g2_iis_intermediates.p7b放在本地计算机-中级证书颁发机构
尝试重新安装去年的旧证书,同样出现该错误,原本可用的证书现在也无法使用,推测可能误卸载了某些内容,但不确定具体是什么。
解决方案
以下是针对Error 1312的排查和修复步骤,按优先级执行:
1. 确认证书私钥权限
Error 1312常因证书私钥的访问权限不足导致,即使证书安装成功,netsh绑定也会失败:
- 打开MMC证书管理单元(本地计算机账户),找到个人-证书中的通配符证书
- 右键证书 → 所有任务 → 管理私钥
- 检查是否包含
NETWORK SERVICE或执行netsh命令的管理员账户,确保其拥有读取权限 - 若缺失,添加对应账户并授予读取权限,保存后重新尝试绑定命令
2. 验证证书私钥可用性
如果证书安装时未导入私钥,或私钥不可访问,会导致绑定失败:
- 右键证书 → 属性 → 详细信息 → 查看密钥用法,确认包含“非对称密钥操作”和“密钥加密”
- 切换到常规选项卡,若底部显示“您有一个对应的私钥”,说明私钥存在;若未显示,需重新导入包含私钥的证书文件(通常是.pfx格式,而非单独的.cer)
3. 重置HTTP服务并清除缓存
系统HTTP SSL缓存损坏可能引发会话错误:
- 以管理员身份打开命令提示符,执行:
net stop http net start http netsh http delete sslcert ipport=0.0.0.0:6286 - 重启Win10笔记本后,重新执行
netsh add sslcert命令
4. 排查端口绑定冲突
可能存在未清理的旧绑定或端口占用:
- 执行
netsh http show sslcert查看所有已绑定的SSL证书,确认0.0.0.0:6286是否有残留条目,如有则删除 - 执行
netstat -ano | findstr :6286检查端口是否被其他进程占用,若有则通过PID终止对应进程后再尝试绑定
5. 修复证书存储区
本地计算机证书存储区损坏会导致证书无法正常读取:
- 打开管理员命令提示符,执行:
其中哈希值替换为你实际使用的证书哈希certutil -repairstore my 426a467d86b1cc7371a805faac30071f4fe478ba - 修复完成后重新安装证书并尝试绑定
6. 检查Cryptographic服务状态
误卸载组件可能影响加密服务:
- 按下Win+R,输入
services.msc打开服务管理器 - 找到Cryptographic Services,确认其状态为正在运行、启动类型为自动
- 若未运行则启动该服务;若无法启动,检查其依赖服务(DCOM Server Process Launcher、RPC Endpoint Mapper)是否正常运行
内容的提问来源于stack exchange,提问作者Velocedge
相关产品推荐
相关产品推荐

