2010-06-30 60 views

回答

2

如果你需要做的针对Active Directory的凭证编程验证,您应该使用.NET 3.5中提供的新的System.DirectoryServices.AccountManagement类。

阅读2008年1月号MSDN杂志中的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 
} 

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

2

你需要在你的web.config指定Windows身份验证

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

然后设置允许/拒绝块指定谁有权访问用户等

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