我在同一个Web 服务器上有一个 Web API 应用程序和一个 MVC4 客户端应用程序。它们都针对 Windows 身份验证进行了配置。客户端应用程序已启用模拟。
当我在 Visual Studio 中运行客户端时,它成功地将我的 Windows 凭据传递给 Web API。
当我在 Web 服务器上点击客户端时,Web API 收到“NT AUTHORITY\NETWORK SERVICE”,我猜它来自运行客户端应用程序的应用程序池。
客户端传递凭据如下:
HttpClientHandler handler = new HttpClientHandler()
{
PreAuthenticate = true,
UseDefaultCredentials = true
};
HttpClient client = new HttpClient(handler);
所以我的问题是……我需要在这里授权吗?
在 Active Directory 中没有为此配置 Web 服务器 - 但我认为由于应用程序位于同一服务器上,因此模拟就足够了。我会打开委托,但我需要一个系统管理员来做到这一点 - 并且有各种各样的箍要跳过 - 所以想确保这就是我需要的。