在 Visual Studio 中设置 SSL 证书

Setting up SSL certificate in Visual Studio

我在一台新电脑上全新安装了 Visual Studio Community 2019。我开始了一个 Web 应用程序项目,运行 它是第一次,然后当系统提示我接受自签名证书时,我以某种方式设法单击“不再询问” "没有".

此时,当 运行 连接网络应用程序时,我得到一个 ERR_CONNECTION_RESET 并且无法连接到任何东西。我试过使用此处列出的建议删除并重新创建证书:Re-Installing Visual Studio 2017 Localhost Certificate,以及完全重新安装 VS,但都没有用。

明确地说,是我搞砸了,而不是 Visual Studio。据我所知,我的设置或环境没有什么特别之处,我之前在 Visual Studio 中构建过网络应用程序,这次我只是点击了错误的东西,并试图在不恢复出厂设置的情况下撤消它整台电脑。

有谁知道如何在 Visual Studio 中触发原始提示并为 运行 Web 应用程序获取正确签名的证书?

[已解决]

您可以使用 dotnet dev-certs 创建一个自签名证书,它将存储在您 PC 的证书存储中,VS 将在构建支持 SSL 的新项目时使用它。

https://docs.microsoft.com/en-us/dotnet/core/additional-tools/self-signed-certificates-guide#create-a-self-signed-certificate

如果有人再次遇到这个非常具体的问题,我会post我做了什么来解决它(来自这个论坛帖子:https://developercommunity.visualstudio.com/t/cant-debug-aspnet-applications-err-connection-rese/1239592?viewtype=all

1.在 VS 中:Tools > Command Line > Developer Command Prompt,运行 devenv /resetsettings(这也会重置一些自定义设置) 编辑:不需要,谢谢 lex-li!

  1. 删除可能格式错误的证书:
  • 在用户证书管理器 (certmgr.msc) 和计算机证书管理器 (certlm.msc) 中:
  • 个人 > 证书 > 如果那里存在本地主机证书,请将其删除
  • 受信任的根证书颁发机构 > 证书 > 如果存在本地主机证书,请将其删除
  1. 修复 IIS 10.0 Express:
  • 控制面板 > 程序和功能 > 右键单击​​ IIS Express > 修复
  • 它会询问 .msi 安装文件的文件路径,但 VS 不会为 IIS Express 存储路径
  • 在目录C:\ProgramData\Microsoft\VisualStudio\Packages\Microsoft.VisualStudio.IISExpress.Msi,version=xx.xx.xxxxx.xxx,chip=x64
  • 中寻找隐藏文件_package.json
  • 将_package.json中的“url”(应该指向正确的.msi文件)复制到修复提示
  • 要求的文件路径中
  • 在命令提示符中验证 运行ning netsh http show sslcert ipport=0.0.0.0:44390 所做的修复(确保证书哈希字段存在)。
  1. 重新启动Visual Studio,调试您的应用程序,您应该得到与您第一次误按的相同的受信任证书提示。 (您可以检查用户证书管理器以查看新的本地主机证书是否已正确安装)

只需打开终端:

dotnet dev-certs https –-clean

然后

dotnet dev-certs https –-trust