我必须在“我的应用程序”中创建用户,但是在此之前,我需要验证Active Directory中的用户,还需要使用用户名/密码来验证用户的登录名,但是当我运行以下代码时,它表明该服务器不可用。
try {
LdapConnection connection = new LdapConnection(ConfigurationManager.AppSettings["ADDomain"]);
Console.WriteLine("Enter LDAP User Name:");
string LDAPUser = Console.ReadLine();
Console.WriteLine("Enter LDAP User Password:");
string LDAPPass = Console.ReadLine();
NetworkCredential credential = new NetworkCredential(LDAPUser, LDAPPass);
connection.Credential = credential;
connection.Bind();
Console.WriteLine("logged in");
string c = Console.ReadLine();
} catch (LdapException lexc) {
String error = lexc.ServerErrorMessage;
Console.WriteLine(lexc);
string ads = Console.ReadLine();
} catch (Exception exc) {
Console.WriteLine(exc);
string ss = Console.ReadLine();
}
string s = Console.ReadLine();
ConfigurationManager.AppSettings [“ ADDomain”]是ldap路径“ ldap:// IP:389 / ou =服务帐户,DC = DEVDD,DC = ABC,DC =本地?sAMAccountName?sub”
.bind()行上出现错误服务器不可用。
答案 0 :(得分:0)
documentation for the LdapConnnection
constructor说参数应该为:
指定服务器的字符串,可以是域名,LDAP服务器名称或代表LDAP服务器IP地址的点划线字符串。 (可选)此参数还可以包括端口号,该端口号与字符串的右端以冒号(:)分隔。
因此它应该是服务器,而不是LDAP路径。您可以将ADDomain
更改为服务器IP(或域DNS名称)。端口389是默认端口,因此除非端口不是389,否则无需包括该端口。