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

时间:2019-11-15 15:09:50

标签: asp.net-core iis windows-authentication

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

  • example.com:使用ASP.NET Core MVC作为JavaScript框架的VueJS项目。
  • api.example.com:ASP.NET Core Web API项目将为UI项目供稿。

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

两个项目都有单独的Application Pool

一切正常,除了我进入example.com网站时,提示输入example.com的AD凭据,然后再输入api.example.com的AD凭据。 / p>

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

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

1 个答案:

答案 0 :(得分:0)

确定将登录名减少为零。在example.com上禁用Windows身份验证,因为所有身份验证均在API项目上完成,因此无需在此处应用它。然后在api.example.com下添加Internet Explorer > Settings > Security > Intranet sites,并希望客户端在域内工作时无需应用凭据即可直接工作。