【问题标题】:Using Active Directory for ASP .NET MVC3 Application为 ASP .NET MVC3 应用程序使用 Active Directory
【发布时间】:2012-06-19 14:46:03
【问题描述】:

除了根据用户组管理对应用程序部分的访问之外,我还尝试使用 Active Directory(无登录页面)在 MVC3 应用程序上对用户进行身份验证。我搜索的范围很广,没有端到端的例子。我希望有人可以提供帮助。我的 Active Directory 设置是:CN=Test User,OU=NETDOM,DC=NETLAB,DC=COM。

谢谢

【问题讨论】:

  • 所以....您要使用 Windows 集成身份验证吗?
  • Windows 集成身份验证

标签: c# .net asp.net-mvc-3 active-directory ldap


【解决方案1】:

在你的appSettings 下你应该添加

<add key="enableSimpleMembership" value="false" />
<add key="autoFormsAuthentication" value="false" />

然后在下

<system.web>
<authentication mode="Windows" />
</system.web>

appSettings 下的第一项关闭自动重定向到/account/login 路由。而authenication 节点在 IIS 中打开 Windows Auth。

只要他们在服务器所在的域上,那么这应该可以工作而无需实施任何身份验证

编辑 如果您想使用会员提供程序,请在 system.web 节点下添加。

<membership defaultProvider="MyADMembershipProvider">
            <providers>
                <add name="MyADMembershipProvider" type="System.Web.Security.ActiveDirectoryMembershipProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="ConnectionStringFromConnectionSettings" attributeMapUsername="sAMAccountName" />
            </providers>
        </membership>

那么您所要做的就是在 Global.asax 中为

添加一个事件处理程序
PostAuthenticateRequest

检查 AD。
此处要小心,因为此事件会针对服务器上的所有请求触发,并且可能会影响性能。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多