将证书添加到受信任的根证书存储时,Visual Studio 2022 访问被拒绝

jpi*_*ico 6 localhost ssl-certificate iis-express visual-studio-2022

我最近将 IDE 从 VS 2019 更改为 2022,并且在没有收到弹出消息的情况下无法成功调试 SSL 网站:

该项目配置为使用 SSL。为了避免浏览器中出现 SSL 警告,您可以选择信任 IIS Express 生成的自签名证书。您想要信任 IIS Express SSL 证书吗?

单击“是”后,会弹出以下消息:

将证书添加到受信任的根证书存储失败,并出现以下错误:访问被拒绝。

经过一些研究后,我在管理提示符下运行了以下命令:

dotnet dev-certs https --clean

dotnet dev-certs https --trust -v
Run Code Online (Sandbox Code Playgroud)

这导致了以下结果:

信任证书时发生错误:Internal.Cryptography.CryptoThrowHelper+WindowsCryptographicException:访问被拒绝。在Internal.Cryptography.Pal.StorePal.Add(ICertificatePal证书)在System.Security.Cryptography.X509Certificates.X509Store.Add(X509Certificate2证书)在Microsoft.AspNetCore.Certificates.Generation.WindowsCertificateManager.TrustCertificateCore(X509Certificate2证书)在Microsoft.AspNetCore .Certificates.Generation.CertificateManager.TrustCertificate(X509Certificate2 证书)。信任 HTTPS 开发人员证书时出错。

到目前为止,我已尝试将本地主机证书直接导入受信任的根证书颁发机构,更改 C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys 文件夹的权限,卸载 IIS Express 并修复,以及卸载并重新安装 VS 2022。到目前为止没有任何效果,不知道从这里开始尝试什么?

Nic*_*las 1

对于看到这篇文章并遇到同样问题的人。我通过执行以下操作“修复”了此问题:

  1. 转到您的Current User证书存储并单击Personal,然后单击Certificates文件夹。如果您可以看到一个localhost证书,其友好名称类似IIS Express Development Certificate,请尝试将该证书移至Trusted Root Certification Authorities-->Certificates文件夹。
  2. 如果您收到Access Denied error然后尝试设置Physical certificate stores复选框,按照这篇文章:证书无法粘贴到受信任的根证书颁发机构存储中。访问被拒绝,在(查看 --> 选项)下,确保您选择了根证书文件以查看“查看/选项”菜单。
  3. 对证书也重复上述步骤Local Computer。由于某种原因,有时我的本地主机证书存储在 下Current User,有时存储在Local Computer.
  4. 启动应用程序时,以下“错误”应该消失:

该项目配置为使用 SSL。为了避免浏览器中出现 SSL 警告,您可以选择信任 IIS Express 生成的自签名证书。您想要信任 IIS Express SSL 证书吗?

  1. 不过,就我而言,在ERR_CONNECTION_RESET执行上述操作后我收到了错误。要解决此问题,我必须按照此帖子手动添加本地主机端口证书:/sf/answers/4816332181/
  2. 执行上述操作后,它在我的个人证书文件夹中为指定端口生成了另一个证书,我再次必须重复步骤 1-3(取决于在哪个证书存储中创建它),然后它终于可以正常工作了。