【发布时间】:2012-03-08 15:39:04
【问题描述】:
我正在使用 C# 应用程序来验证和检查位于 Window 2008 64 位服务器上的 Active Directory 用户。
使用以下代码提供用户名和密码时,我能够成功验证用户身份:我的 domainName 值为 rootforest.com,我的 userName 为 admin6
UserPrincipal usr;
PrincipalContext ad;
//Enter Active Directory settings
ad = new PrincipalContext(ContextType.Domain, domainName,usrName,pswd);
//search user
usr = new UserPrincipal(ad);
usr.SamAccountName = usrName;
PrincipalSearcher search = new PrincipalSearcher(usr);
usr = (UserPrincipal)search.FindOne();
search.Dispose();
在另一个函数中,我想检查用户 'admin6' 是否存在并且我没有密码,但是当我检查它时,该函数不断抛出“登录失败:未知用户名或密码错误。\r\n ”。除了这一行之外,我使用的代码几乎与上面相同:
//Enter Active Directory settings
ad = new PrincipalContext(ContextType.Domain, domainName);
这不起作用,我尝试了在网上找到的其他代码,但它们都给了我同样的错误。我开始认为这可能是我设置 Active Directory 域的方式?
下图是我的域名的样子:
https://picasaweb.google.com/100922945973553878191/ActiveDirectory?authuser=0&feat=directlink
谁能帮我解决这个问题?我在最后一天左右一直被这个问题困扰,我似乎无法找出原因。如果你有一些代码,我可以试试它会很棒
【问题讨论】:
标签: c# active-directory ldap