AuthenticationException:由于证书链中的错误,远程证书无效:UntrustedRoot

Nis*_*ula 15 azure ssl-certificate asp.net-web-api azure-active-directory azure-ad-b2c

我正在执行一项任务,使用本地 WebAPI 服务从本地 ToDo WebApp 对 Azure 中的 Active-directory B2C 实例进行身份验证。

除了在 Azure 试用版订阅中添加一个 B2C 实例之外,我还创建了 2 个应用程序 App1 和 App2。在本地 Windows 10 操作系统的 Visual-Studio 中,我根据此处的 Microsoft 博客收集了 ToDo Webapp 和 WebAPI 服务的代码

但是,当我启动 WebAPI 服务并运行 ToDoWebapp 时,创建用户后的登录工作正常,但之后,对于对该服务的任何调用,我都会收到带有以下消息的错误页面: AuthenticationException: The remotecertificate is由于证书链中的错误而无效:UntrustedRoot

HttpRequestException:无法建立 SSL 连接,请参阅内部异常。

如何解决这一错误?

kav*_*yaS 20

请检查以下几点:

  1. 安装 .NET Core SDK 会将 ASP.NET Core HTTPS 开发证书安装到本地用户证书存储中,作为首次运行体验的一部分,但它不受信任。要信任该证书,请执行一次性步骤来运行 dotnet dev-certs 工具。
  2. 检查证书存储中的证书。在“当前用户”>“个人”>“证书”“当前用户”>“受信任的根证书颁发机构”>“证书”下查找具有 ASP.NET Core HTTPS 开发证书的 localhost 证书
  3. 尝试通过仔细检查个人和受信任的根证书颁发机构来删除所有找到的证书。

注意:请勿删除 IIS Express 本地主机证书。

尝试在 .NET CLI 中运行以下命令,然后重试

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

注意:不受信任的证书只能在应用程序开发期间使用。生产应用程序应始终使用有效的证书。

参考:

  1. 在 Windows 和 macOS 上信任 ASP.NET Core HTTPS 开发证书
  2. 在 ASP.NET Core 中强制执行 HTTPS | 微软文档

  • 我已经尝试过这些事情。他们没有工作 (8认同)