在Windows 7中使用PowerShell将自签名证书添加到受信任的证书列表中

我在Windows 7上创build了一个自签名证书,并部署了一个带有此证书的网站来试用。

当我configurationHTTPS端点并使用HTTPS协议访问站点时,我得到了预期的“不可信任的证书”错误。

然后,我尝试使用以下PowerShell代码在我的机器上使此证书成为可信的证书:

$cert = (get-item cert:\CurrentUser\MY\1D5B3DEF207B70C7426953315A8C06EB38E50FAA) $store = get-item cert:\LocalMachine\Root $store.Open("ReadWrite") $store.Add($cert) $store.Close() 

它没有工作,我仍然得到同样的错误。 然后,我从可信任的证书列表中删除它,并再次尝试下面的代码:

 $cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2("c:\certs\foo2.foo.cc.cer") $store = get-item cert:\LocalMachine\Root $store.Open("ReadWrite") $store.Add($cert) $store.Close() 

那也行不通。 我错过了什么?

你的代码看起来很好,我假设你也没有得到任何错误。 一堆事情要检查:

  • 打开证书MMC并确保您的证书正在被添加。
  • 检查通用名称和主题替代名称的证书。 你在浏览器中input的URL的域名必须匹配一个。
  • 确保证书没有过期。
  • 确保您使用的是使用Windows信任存储的Web客户端。 Firefox有它自己的。
  • 将浏览器的证书SHA1哈希与您正在安装的证书进行比较,以确保其正确。