Как найти пользователя с параметром GUID(objectGUID) в Active Directory
в моем ASP.NET приложение я получаю информацию из Active Directory. Я должен получить информацию о пользователе с информацией GUID (пример: a28a6a34dsfdsf57d9e54f945a241), но я не знаю, как я могу использовать фильтр прямо для этого поиска :/
например, если я ищу имя пользователя:
DirectoryEntry Entry = new DirectoryEntry("LDAP://" + "Domain");
string filter = "(&(objectClass=user)(objectCategory=person)(cn=" + txtBenutzer.Text + "*))";
DirectorySearcher Searcher = new DirectorySearcher(Entry, filter);
var q = from s in Searcher.FindAll().OfType<SearchResult>()
select new
{
//GetProperty(s, "objectGUID"),
Benutzer = GetProperty(s, "sAMAccountName"),
eMail = GetProperty(s, "mail"),
Vorname = GetProperty(s, "givenName"),
Nachname = GetProperty(s, "sn"),
Telefon = GetProperty(s, "telephoneNumber"),
UserID = s.GetDirectoryEntry().NativeGuid
};
this.myListView.DataSource = q;
this.myListView.DataBind();
теперь мне нужен фильтр с GUID, который я могу найти одного и единственного пользователя в AD. Идентификатор GUID для этого поиска у меня есть в строке UserID = Сессия ["UserID"].toString ()
Тарасова
1 ответов
вам не нужно искать, вы можете привязаться непосредственно к объекту, если вы знаете GUID, например
var user = new DirectoryEntry("LDAP://<GUID=119d0d80-699d-4e81-8e4e-5477e22ac1b3>");
(замените фактическим ObjectGUID).
проверьте эту запись MSDN:использование ObjectGUID для привязки к объекту