identityserver4 由于证书链错误,远程证书无效:untrustedroot

Ale*_*exu 1 ssl-certificate asp.net-core-mvc identityserver4

我在 HTTPS 下使用 IIS 服务器托管我的 IdentityServer、Web API 和 MVC 客户端应用程序。当我运行我的 MVC 客户端时,我收到以下错误(注意 - 6009 是我的 MVC 客户端的端口,6005 是我的 IdentityServer 的端口):

在此处输入图片说明

当我在 IIS 中配置它们时,我正在为所有项目使用 IIS Express 开发证书:

在此处输入图片说明

我将证书从个人商店复制到受信任的根目录,如下所示:

在此处输入图片说明

这是证书的详细信息:

在此处输入图片说明

我在这里还缺少什么?

小智 11

对我来说,dotnet dev-certs https --clean/trust手动清理 Windows 证书存储都没有成功。

由于我使用的是 Docker 和 Kestrel(而不是 ISS),出于某种原因,它使用了位于以下位置的过时证书:C:\Users\<user>\AppData\Roaming\ASP.NET\Https\<project-name>.pfxdotnet dev-certs https --clean命令没有清理此目录中的证书。

清理该目录中的证书后,一切又恢复正常了。我知道您的问题已经解决,但由于这是一个常见问题,我想我也会在这里发布我的解决方案。

关于为什么 clean 命令不清理这些证书的相关问题可以在这里找到: https: //github.com/dotnet/aspnetcore/issues/15357


Yiy*_*You 7

您可以参考官方链接,并尝试其中的命令。

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