我正在从Active Directory访问用户信息。我的代码在我的本地PC上运行良好(有windows xp,不在域上)。代码是
PrincipalContext ctx = new PrincipalContext(ContextType.Domain, "domainName", "ActiveDirectoryID", "Password");
UserPrincipal qbeUser = new UserPrincipal(ctx);
PrincipalSearcher srch = new PrincipalSearcher(qbeUser);
qbeUser.SamAccountName = "AnyOther_AD_ID"; //To get any one's info
foreach (var found in srch.FindAll())
{
UserPrincipal foundUser = found as UserPrincipal;
if (foundUser != null)
{
emailAddress = foundUser.EmailAddress;
}
}
但是当我将我的应用程序部署到服务器pc(Windows Server 2003,在域上)时。它给出错误“认证机制未知”。 令我印象深刻的问题是服务器,在域上无法访问AD信息,但我的本地PC,不在域上可以访问AD信息(我给了AD_Id和密码)。
答案 0 :(得分:0)
尝试为用户原则或搜索者提供登录凭据。我以前经历过同样的事情,如果我提供了我的AD连接用户名&密码它可以工作。