asp.net-mvc - 带有Windows身份验证的ASP.NET MVC Intranet应用程序,如何自动获取当前域用户?

标签 asp.net-mvc authentication windows-authentication

我需要我的 MVC4 应用程序来获取登录到机器的当前域用户自动登录到我的 index.cshtml 页面。

应用程序的其余部分通过使用我需要保护的操作的授权属性按预期工作。

我只需要对应用程序说“让当前机器登录用户,不要保护任何东西并将用户带到登录页面”。

网络配置:

<authentication mode="Windows" />

像这样,用户在登录页面上是空白的。

如果我尝试仅将 [Authorize] 放在我的索引操作上,那么它会要求提供凭据,然后根据需要继续操作,而不会在登录页面上保护任何内容。

有没有办法解决?

更新:

无论你做什么,似乎都没有办法绕过登录提示,让应用程序自动获取当前域用户并将其登录到应用程序中。

最佳答案

检查这个MSDN

添加 impersonate="true"伴随着它

  <identity impersonate="true"/>
  <authentication mode="Windows" />

然后使用
 ((HttpContext)context).User.Identity as WindowsIdentity

关于asp.net-mvc - 带有Windows身份验证的ASP.NET MVC Intranet应用程序,如何自动获取当前域用户?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19243312/

相关文章:

asp.net-mvc - 使用 IOC 预填充 MVC 模型 - 缓存的替代方案?

c# - 从上传的多个文件中获取文件名

c# - 为 MVC3 和 MVC4 Beta 编写自定义 HtmlHelpers,我应该使用 HtmlString 还是 MvcHtmlString?

node.js - NodeJS 和 Socket.io : Authentication across multiple modules

architecture - 真或假 : cross-domain SSO always requires a third party identity provider

django - 注册后通过电子邮件而不是 URL 发送激活码

c# - 未从 ADAL 库调用 AuthenticationContext 委托(delegate)

javascript - 部分 View 表单通过ajax提交返回部分 View

python - 使用 Python 在 Mac 上使用 Windows 身份验证访问 Microsoft SQL Server

.net - 表单例份验证跨 Windows 身份验证