如何强制 Visual Studio 为运行 Kestrel 的 .NET Core Web 应用程序重新创建 SSL 证书?

Posted

技术标签:

【中文标题】如何强制 Visual Studio 为运行 Kestrel 的 .NET Core Web 应用程序重新创建 SSL 证书?【英文标题】:How to force Visual Studio to re-create the SSL certificate for a .NET Core Web Application running Kestrel? 【发布时间】:2022-01-14 09:36:15 【问题描述】:

创建 Web 项目时,Visual Studio 会自动生成 SSL 证书并提示您安装它。一切正常。

该证书现已过期,我无法弄清楚如何让它重新生成一个并重新开始该过程。我尝试从证书存储中删除所有现有的localhost 证书并删除secrets.json,但似乎没有什么能迫使它重新开始生成过程。

【问题讨论】:

【参考方案1】:

我终于明白了。

对于遇到此问题的其他人,修复它的步骤是:

必须在证书管理器中删除所有localhost 证书。它们可以在个人和受信任的根目录中找到 必须删除secrets.json 文件。这可以在\Users\[user]\AppData\Roaming\Microsoft\UserSecrets\ 中找到 在 powershell 中,重新运行 dotnet dev-certs https --trust 以创建并安装一个新的并提示信任

它会在此之后再次工作。

【讨论】:

我认为您可以使用dotnet dev-certs https --clean 代替前两个步骤。 谢谢,我不知道该命令存在。下次我会试试的。

以上是关于如何强制 Visual Studio 为运行 Kestrel 的 .NET Core Web 应用程序重新创建 SSL 证书?的主要内容,如果未能解决你的问题,请参考以下文章

Visual Studio 安装项目:如何强制卸载程序以管理员模式运行?

你如何强制 Visual Studio 为 aspx/ascx 文件重新生成 .designer 文件?

Visual Studio Docker Tools如何从头开始强制容器重建

Windows 10 上强制Visual Studio以管理员身份运行

您可以强制 Visual Studio 在 Windows 8 中始终以管理员身份运行吗?

Visual Studio 中的强制 CPU 体系结构