【问题标题】:ASP.NET MVC 4, Windows Authentication and Active DirectoryASP.NET MVC 4、Windows 身份验证和 Active Directory
【发布时间】:2013-12-04 13:04:33
【问题描述】:

我有两台机器:

  1. Windows 2008 - 用于 Active Directory
  2. Windows 7 - 安装了 IIS7,它也可以作为开发机器。请注意,此 PC 不是该域的成员。

我尝试了表单身份验证,并且在我的 web.config 中使用此配置可​​以正常工作:

<connectionStrings>
    <add name="ADConn" connectionString="LDAP://192.168.0.21" />
</connectionStrings>

<membership defaultProvider="ADMembership">
  <providers>
    <add name="ADMembership"
         type="System.Web.Security.ActiveDirectoryMembershipProvider"
         connectionStringName="ADConn"
         connectionUsername="dominic"
         attributeMapUsername="sAMAccountName"
         connectionPassword="p@ssw0rd" />
  </providers>
</membership>

现在我想从表单更改为 Windows 身份验证。我的问题是:

  1. 我需要在 Web.Config 中添加哪些配置才能启用 Windows 身份验证?
  2. 应在 IIS 中进行哪些配置以启用 Windows 身份验证?
  3. 我需要配置 Windows 防火墙吗?
  4. 使用 Windows 身份验证登录时,我的用户名应该是什么?是“192.168.0.21\dominic”还是“dominic”?
  5. 我是否错过了任何问题?

我今天尝试了很多教程,但它要么给我 403,要么不接受我的用户名和密码。如果您知道任何完整的分步教程,请告诉我。

【问题讨论】:

  • 我认为您可能很难让 Windows 身份验证在域外的计算机上工作。这是 Web 还是 Intranet 应用程序?
  • Intranet...如果PC不在域中会有什么问题?
  • 我已经更正了,应该没什么区别。完整的细节在这里iis.net/configreference/system.webserver/security/…
  • 谢谢。以后会读的。我应该在搜索时使用 IIS 作为关键字。

标签: asp.net-mvc active-directory windows-authentication


【解决方案1】:

经过几天的研究,事实证明 IIS 至少应该是域的成员。客户端不一定是域的成员。

在 Web.Config 中,我只需要添加:

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

连接字符串和成员资格不是必需的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-11
    相关资源
    最近更新 更多