我的证书存储在“证书(本地计算机)”下的自定义存储中,而不是“个人”下。
通常,如果证书位于个人下,我只需使用C:>netsh http add sslcert ipport:0.0.0.0: certash= appid= certstorename=MY
其中,如果未指定,则默认情况下已假定 certstorename=MY。
这工作正常,直到我们被要求将证书存储在自定义存储中,而不是现有的个人、受信任的人、受信任的发布者等等等。
- 如果我们将新存储称为“我的证书存储”,那么新的 netsh 命令会是什么样子?
- “MY”一词如何映射到“Personal”商店?有没有映射这些的字典?
我检查了 System.Security.Cryptography.X509Certificates 命名空间,并且存在一个名为 StoreName 的枚举,具有以下值:
- AddressBook - 其他用户的 X.509 证书存储。
- AuthRoot - 第三方证书颁发机构 (CA) 的 X.509 证书存储。
- CertificateAuthority - 中间证书颁发机构 (CA) 的 X.509 证书存储。
- 不允许 - 已撤销证书的 X.509 证书存储。
- My - 个人证书的 X.509 证书存储。
- Root - 受信任的根证书颁发机构 (CA) 的 X.509 证书存储。
- TrustedPeople - 直接受信任的人员和资源的 X.509 证书存储。
- TrustedPublisher - 直接受信任的发布者的 X.509 证书存储。
我在 netsh 命令上尝试了所有这些作为 certstorename,但我总是收到此错误:
SSL 证书添加失败,错误:1312 指定的登录会话不存在。它可能已经被终止。