Я работаю с LDAP, и я новичок в этом.
Есть ли способ получить домен, когда вы знаете только имя пользователя, пароль, имя сервера
Я пытаюсь сделатьэто:
string ldapPath = "LDAP://serverName";
string uid = username;
string password = pwd;
string qry = String.Format("(uid={0})", uid);
string adsPath = String.Empty;
try
{
DirectoryEntry nRoot = new DirectoryEntry(ldapPath, null, null, AuthenticationTypes.Anonymous);
DirectorySearcher ds = new DirectorySearcher(nRoot, qry);
SearchResult sr = ds.FindOne();
if (sr != null)
{
// we want to retrieve the DN like this: "uid=myuser,ou=People,dc=findlay,dc=edu
ldapPath = sr.Path; //update where we will bind next
}
Это не работает, если я не поменяю
string ldapPath = "LDAP://serverName";
на
string ldapPath = "LDAP://serverName/DC=mydomain,DC=com";
Любая помощь .. ??
Спасибо
Редактировать rootDSE
string defaultNamingContext;
using (DirectoryEntry rootDSE = new DirectoryEntry("LDAP://serverName/rootDSE", null, null, AuthenticationTypes.Anonymous))
{
defaultNamingContext = rootDSE.Properties["rootDomainNamingContext"].Value.ToString();
}
Я тоже чувствую, что это решение, но в настоящее время оно не работает для меня .. пожалуйста, помогите!