【发布时间】:2015-06-26 17:26:47
【问题描述】:
我的目标是将 IWA(集成 Windows 身份验证)与 .NET Web API 一起使用。我想将项目保留为一个没有 MVC 的 Web API 项目。
我在 Visual Studio 2013 Premium 中创建了两个项目:
- 第一个我选择了带有 Web API 模板的 ASP.NET Web 应用程序和 Windows 身份验证。这也包括 ASP.NET MVC。
- 第二个是带有 Web API 核心引用的 ASP.NET Web 应用程序空模板。
第一个成功了,我能够在调用时获得我的帐户 AD/Windows 身份:
HttpContext.Current.User
第二次我无法获得我的 AD/Windows 身份,我尝试了以下所有方法:
- HttpContext.Current.User
- User
- RequestContext.Principal
我需要从 Web API(第二个项目)调用什么来填充用户?
【问题讨论】:
-
我之前也遇到过这个问题。据我发现,没有办法从 WebAPI 本身的上下文中获取用户。作为一种解决方法,我最终做的是让调用应用程序 (python) 将加密的用户凭据发送到 ApiController,然后从那里处理它。
标签: asp.net .net asp.net-mvc asp.net-web-api