Сервер LDAP не работает
Привет друзья,
Я пытаюсь использовать код для аутентификации пользователей с помощью LDAP. Я перепробовал много типов кода, но не смог подключиться к серверу. Это дает "сервер не работает "или"сервер не может быть достигнут". Я где-то читал, что порт 445 должен быть открыт. Кто-нибудь может сказать, Обязательно ли, чтобы порт 445 был открыт? Фрагменты м выглядит следующим образом:
1-й тип
var host = "domain name here"; using (LdapConnection ldap = new LdapConnection(host)) { ldap.AuthType = AuthType.Basic; ldap.Bind(new NetworkCredential("cn=Manager,dc=maxcrc,dc=com", "newpas")); // SearchRequest searchRequest = new SearchRequest(); searchRequest.DistinguishedName = "cn=Manager,dc=maxcrc,dc=co"; /earchRequest.Filter = "(&(objectClass=user))";//"(&(objectClass=user))"; SearchResponse response = (SearchResponse)ldap.SendRequest(searchRequest); if (response.Entries.Count == 1) { } }
2-й тип
bool isAuthenticated = true; using (PrincipalContext pCtx = new PrincipalContext(ContextType.Domain,"LDAP://domain ")) { isAuthenticated = pCtx.ValidateCredentials("dc = maxcrc, dc = com", "secret"); }
3-й тип
var credential = new NetworkCredential("dc=maxcrc,dc=com","newpass"); using (var con = new LdapConnection(host) { Credential = credential, AuthType = AuthType.Anonymous, AutoBind = false }) { con.SessionOptions.ProtocolVersion = 3; con.Bind(); }
4-й тип
string LDAP_URL = "LDAPS://domain"; DirectoryEntry entry = new DirectoryEntry(LDAP_URL); entry.RefreshCache(); Object obj = entry.NativeObject; DirectorySearcher search = new DirectorySearcher(entry); search.Filter = "(sAMAccountName=" + username + ")"; search.PropertiesToLoad.Add("DisplayName"); //search.PropertiesToLoad.Add("employeeID"); search.PropertiesToLoad.Add("mail"); //search.PropertiesToLoad.Add("SapPrimeDomText"); SearchResult result = search.FindOne(); if (result != null) { }
Я даже не могу подключиться к серверу LDAP .
Может ли кто-нибудь подсказать мне, как я могу этого достичь?
спасибо Даршан