ASP.NET 核心 Windows 身份验证从 UI 网站传递到 API

ASP.NET Core Windows Authentication pass through from UI website to API

Windows Server 2012 上的 IIS 设置有 2 个项目:

example.com 使用 Windows 身份验证设置,api.example.com 使用匿名和 Windows 身份验证设置。

两个项目都有一个单独的Application Pool

一切正常,除了当我访问 example.com 网站时,系统提示我输入 example.com 的 AD 凭据,之后我得到另一个 api.example.com 的凭据.

因此用户需要输入两次凭据。有没有办法将其减少为一个并将凭据发送到两个网站?

我正在使用 Google Chrome 作为浏览器来使用该网站。

好的,将登录减少为零。在 example.com 上禁用了 Windows 身份验证,因为所有身份验证都是在 API 项目上完成的,因此无需在此处应用它。然后在 Internet Explorer > Settings > Security > Intranet sites 下添加 api.example.com 并且知道客户端在域内工作时可以直接工作而无需应用凭据。