401 未授权给一个客户,但不是另一个

401 unauthorized for one client but not for the other

我有一个为两个 MVC 应用程序提供服务的 Web API。所有 3 运行 在 IIS 7.5 下。

App A:仅匿名身份验证,在 ADFS 后面。 IIS 独立网站。

App B:Windows 仅身份验证。在另一个IIS网站下申请。

API:

问题是应用程序 A 可以访问 API 就好了,但应用程序 B 得到 401 未经授权。

如果我取消对API的授权限制,App B也可以访问它。但是我当然需要这个授权来保护 API 免受未经授权的访问。

我做错了什么?

必须在应用程序 B 的 IIS 应用程序池中将 "Load User Profile" 设置为 true。通过比较两个应用程序池发现。

https://blogs.msdn.microsoft.com/vijaysk/2009/03/08/iis-7-tip-3-you-can-now-load-the-user-profile-of-the-application-pool-identity/