在我的asp.net网站中集成Active Directory

时间:2010-06-30 17:36:10

标签: asp.net authentication active-directory

在我的网站中,我想使用活动目录用户进行身份验证。我怎么能这样做。

2 个答案:

答案 0 :(得分:2)

您需要在web.config中指定Windows身份验证

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

然后设置允许/拒绝块以指定具有访问权限的用户

<authorization>
  <allow roles="AuthorizedADGroup" />
  <allow users="AllowedUserName" />
  <deny users="*" />
  <deny users="?"/>      
</authorization>

答案 1 :(得分:2)

如果需要对Active Directory进行凭据的编程验证,则应使用.NET 3.5中提供的新System.DirectoryServices.AccountManagement类。

阅读MSDN杂志2008年1月刊中的Managing Directory Security Principals in the .NET Framework 3.5以获取更多信息。 注意:仅限CHM下载

要验证凭据,您必须创建一个主体上下文 - 机器(单个服务器)或域(网络),然后在其上调用.ValidateCredentials()方法:

using System.DirectoryServices.AccountManagement;

PrincipalContext ctx = new PrincipalContext(ContextType.Domain, "YOURDOMAIN");

if(ctx.ValidateCredentials(userName, password))
{
    // user is validated
}

很简单,不是吗?如果您的用户需要使用输入用户名和密码的表单登录,并且您可以抓住这些用户来检查他们的帐户,这非常有用。