我通过C#(bouncycastle)创建了一个自签名的SSL证书。它显示在本地计算机/个人存储中,看起来与Microsoft已有的localhost证书完全相同。如果我显示属性,它会显示:
SSL证书添加失败,错误:1312指定的登录会话不存在。可能已经终止。
但是,如果我想通过netsh注册此证书,就会出现错误:
netsh.exe http add sslcert ipport=0.0.0.0:{0} certhash={1} appid={2}
app-id
是在 assemblyinfo.cs
文件中指定的 GUID。而 certhash
则是证书属性页面中的哈希值。
在许多博客文章中,我找到了几个导致此问题出现的原因:
- 使用管理员权限(我正在这样做)
- 确保你的证书已在“本地计算机”中注册,而不是在“当前用户”中注册 - 我已经完成了这一步。
- 确保证书有私钥(它有,因为在属性对话框中显示了)。
但都没有成功解决问题...