【问题标题】:How to make windows authentication work in IIS?如何使 Windows 身份验证在 IIS 中工作?
【发布时间】:2017-03-01 20:14:32
【问题描述】:

我正在为我的组织构建一个 ASP.NET MVC Intranet 应用程序并想要获取网络用户名。我的 Web.config 中有以下内容

<system.web>
     <authentication mode="Windows"> </authentication>
     <authorization>
        <allow users="*"/>
        <deny users="?"/>
     </authorization>

当我使用 IIS Express 进行调试时,Request.LogonUserIdentity.Name 提供了我的 Windows 用户名。

但是,当在 IIS 上部署我的应用程序时,Request.LogonUserIdentity.Name 将以 "NT AUTHORITY\IUSR" 的形式出现,而不是 Windows 用户名。

在 IIS 中,对于我的应用程序,我只启用了 Windows 身份验证并禁用了其他类型的身份验证。

我需要在 IIS 中进行哪些更改,以便Request.LogonUserIdentity.Name 提供登录的 Windows 用户名?

【问题讨论】:

  • 如果你删除了允许元素会发生什么?

标签: asp.net asp.net-mvc iis windows-authentication


【解决方案1】:

在 Google 找到任何来自 Microsoft 的指南,他们会告诉您您忘记在 IIS 上启用 Windows 身份验证并禁用匿名身份验证。

【讨论】:

  • 这个答案与问题中所述的信息无关。
  • @Khyron 你了解 IIS 吗?看到IUSR就意味着开启了匿名认证,这怎么可能不是答案呢?
  • 具有讽刺意味的是,这是一个更好的答案。
  • @Lex Li 不,正如我在问题中所说,启用 Windows 身份验证并禁用所有其他身份验证。
  • 谢谢,我错过了关闭“网站”的匿名身份验证。我只为应用程序关闭了它。
猜你喜欢
  • 1970-01-01
  • 2017-05-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-22
  • 2011-06-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多