我的证书存储在“证书(本地计算机)”下的自定义商店中,而不是“个人”下。

通常,如果证书位于个人,我只使用C:> netsh http add sslcert ipport:0.0.0.0:certhash = appid = certstorename = MY

其中,如果未指定,则默认已采用certstorename = MY。

在我们被要求将证书存储在除现有个人,受信任的人,受信任的发布者等之外的自定义商店之前,此工作正常。

  • 如果我们将新商店称为“我的证书商店”,那么新的netsh命令会是什么样子?
  • “我的”这个词如何映射到“个人”商店? 是否有一个字典来映射这些?

我检查了System.Security.Cryptography.X509Certificates命名空间,并出现了一个名为StoreName的枚举,其中包含以下值:

  • AddressBook - 其他用户的X.509证书存储区。
  • AuthRoot - 第三方证书颁发机构(CA)的X.509证书存储区。
  • CertificateAuthority - 中间证书颁发机构(CA)的X.509证书存储区。
  • 不允许 - 已撤销证书的X.509证书存储区。
  • 我的 - 个人证书的X.509证书商店。
  • Root - 受信任的根证书颁发机构(CA)的X.509证书存储。
  • TrustedPeople - 直接信任的人员和资源的X.509证书库。
  • TrustedPublisher - 直接受信任的发布者的X.509证书库。

我在netsh命令上尝试了所有这些作为certstorename,我总是得到这个错误:

SSL证书添加失败,错误:1312指定的登录会话不存在。 它可能已经被终止了。

#1楼 票数:0

打开证书并仔细检查它是否实际包含PrivateKey。 根据您导出/导入它的方式,它可能已被截断为仅公开数据。

在资源管理器中,只需双击并检查“此证书是否包含私钥”警告标签是否在第一个选项卡上可见,就在到期日期之下

#2楼 票数:0

一个巨大的缺陷是,即使PrivateKey没有正确保存,私钥图标仍将显示在mmc中,它会显示“有一个与此证书关联的私钥”。 要确定私钥是否正确导入,

  • 右键单击C:\\ ProgramData \\ Microsoft \\ Crypto \\ RSA \\ MachineKeys并记下文件夹中有多少文件(这是保存私钥的位置)。
  • 导入pfx文件/但是您要将证书/密钥添加到商店
  • 再次检查该文件夹的文件计数,应该比以前多1个文件

您可以尝试使用open-ssl之类的工具对新创建的自签名证书进行测试。 被困在这几周,直到我发现这个stackoverflow帖子, 在Root中插入证书(带私钥),LocalMachine证书存储在.NET 4中失败

另一个问题是确保证书是在本地计算机(而不是用户)中,但看起来你已经把这部分放下了。

#3楼 票数:0

当证书安装在我的本地用户存储中而不是本地计算机存储中时,我遇到了这个问题。 localMachine/my安装清除它。

#4楼 票数:0

你想要做的似乎是正确的。 您是否可以在应用修补程序http://support.microsoft.com/kb/981506后重试一个实际上与您的症状完全匹配的问题。

  ask by Derrick translate from so

未解决问题?本站智能推荐:

1回复

如何使用JavaScript访问Windows证书存储区?

我想通过javascript访问Windows证书存储...我想开发一个Web应用程序,并想通过读取证书来对照证书验证登录用户。
1回复

读取服务器的证书存储

我正在尝试读取不同服务器的证书存储。 我需要登录到管理员用户并访问服务器以读取证书存储。 除了 X509Store 类之外,我找不到任何其他可能性来读取证书存储( https://docs.microsoft.com/de-de/dotnet/api/system.security.cryptog
1回复

如何使用c#以编程方式将x509证书添加到本地计算机存储

我理解问题标题可能是重复但我还没有找到我的情况的答案,所以这里去; 我有这个简单的代码 但仍然会出现“拒绝访问”的例外情况。 我已经阅读了一些建议使用StorePermissions可以解决我的问题的信息,但我认为这与我的代码无关。 话虽如此,我确实对它进行了测试以确定无法
1回复

在哪里放置某些类型的证书有什么惯例?

我试图了解如何在Windows上以编程方式正确安装CA,服务器和客户端SSL证书。 搜索特定类型的证书时,我无法发现要使用的任何总体方案或约定。 看来Root用于CA,受信任的人用于客户端证书,也许还用于服务器证书,但是我只能从可以找到的示例以及在典型计算机上已经安装的证书中猜测出来。 各
1回复

从PHP访问证书私钥,证书密钥存储在Windows证书存储区中

我们需要在PHP应用程序中使用证书进行SOAP调用,我们需要一种方法来读取Windows证书存储区中存储的私钥。 该环境包括Windows 2008 R2,IIS 7。 我们最好的选择是什么?
1回复

如何在Nodejs中使用Windows应用商店的服务器证书

我目前正在实现一个在Windows机器上运行的NodeJS服务器。 我的要求是为客户端服务器通信启用证书验证。 目前,我的代码如下所示,效果很好(请注意,所有客户端都会发送服务器根CA证书)。 但是,我的要求是使用来自Windows应用商店的现有证书,如果不从证书中提取私钥,我无法正
1回复

如何以编程方式将证书添加到Firefox 59版中,在firefox文件夹中找不到cert9.db

美好的一天。 我有自己的证书颁发机构(CA),我们需要将其添加到Mozilla Firefox浏览器,因为研究表明Firefox具有自己的证书管理。 但是,我们需要以编程方式添加它,因为我们拥有自己的应用程序,可以为我们的客户端自动将证书添加到IE,Edge和Chrome。 我
2回复

Nodejs-Windows密钥/证书存储

有人对我如何使用nodeJs与密钥/证书存储进行交互有任何指示吗? 我特别想添加/删除证书以及可能的密钥。 更新。 因此,这里的方法是使用“ edge”。 非常好! https://github.com/tjanczuk/edge