使用应用程序池帐户从MVC应用程序连接到Web API

时间:2015-01-19 15:27:19

标签: asp.net-mvc asp.net-web-api windows-authentication

我确定我之前已经做过十几次了,而且我无法想象现在导致这种情况失败的原因是什么,但是,我有一个MVC网络应用程序,其应用程序池作为域帐户运行。它连接到启用了Windows身份验证的同一域上的WebAPI应用程序。

我希望能够在WebAPI端使用controller.User.Identity.Name读取MVC应用程序池帐户名,但它又回来了。我已经尝试了所有的东西,包括明确地将MVC应用程序设置为“以特定用户身份连接”。

MVC应用使用HttpClient连接到API。我已经尝试将HttpClientHandler设置为UseDefaultCredentials,但这没有效果。

从本地计算机连接到WebAPI方法正确识别我的域帐户。有什么明显的东西我不见了吗?

1 个答案:

答案 0 :(得分:0)

通过添加此处提到的BackConnectionHostNames密钥来修复此问题:

https://stackoverflow.com/a/10311823/2179408

虽然我不需要进行legacyImpersonationPolicyalwaysFlowImpersonationPolicy aspnet.config更改。

我收到的401回复让我失望并让我相信这是一个IIS身份验证问题。