在 Visual Studio 中设置 SSL 证书

问题描述 投票:0回答:4

我在新计算机上全新安装了 Visual Studio Community 2019。我启动了一个网络应用程序项目,第一次运行它,然后当提示接受自签名证书时,我设法单击“不要再询问”“否”。

此时,运行网络应用程序时,我收到 ERR_CONNECTION_RESET 并且无法连接到任何东西。我尝试使用此处列出的建议删除并重新创建证书:重新安装 Visual Studio 2017 本地主机证书,以及完全重新安装 VS,但都不起作用。

需要明确的是,我搞砸了,而不是 Visual Studio。据我所知,我的设置或环境没有什么特别的,而且我之前在 Visual Studio 中构建过 Web 应用程序,这次我只是单击了错误的内容,并且正在尝试在不将整个 PC 恢复出厂设置的情况下撤消该操作。

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

[已解决]

c# visual-studio ssl certificate iis-express
4个回答
18
投票

如果有人再次遇到这个非常具体的问题,我将发布我所做的解决方法(来自此论坛线程:https://developercommunity.visualstudio.com/t/cant-debug-aspnet-applications-err-connection -rese/1239592?viewtype=全部)

1。在 VS 中:工具 > 命令行 > 开发人员命令提示符,运行

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 文件)复制到修复提示所要求的文件路径中
  • 通过在命令提示符中运行
    netsh http show sslcert ipport=0.0.0.0:44390
    来验证修复是否有效(确保证书哈希字段存在)。
  1. 重新启动 Visual Studio,调试您的应用程序,您应该会得到与您第一次误点击相同的“受信任证书”提示。 (您可以检查用户证书管理器以查看新的本地主机证书已正确安装)

13
投票

只需打开终端:

dotnet dev-certs https --clean
dotnet dev-certs https --trust

0
投票

您可以使用

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

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


0
投票

我在开发过程中遇到 SignalR 客户端无法连接/订阅 localhost hub 的问题,因为 localhost 开发证书不是受信任的根证书;可能是由浏览器安全要求引起的。

使用“MMC”从“个人证书”导出本地主机“ASP.NET Core HTTPS ...”证书并导入“受信任的根证书”。

© www.soinside.com 2019 - 2024. All rights reserved.