Как я могу получить DOMAIN\USER от AD DirectoryEntry?

Вы можете сохранить массив messages и рассчитать сообщение, которое будет отображаться на ходу, например:

var messages = ["Good!", "Great!", "Awesome!", "Super!", "Nice!"];
function getMessage() {
   return messages[Math.floor(Math.random() * messages.length)];
}

Попробуйте здесь , затем просто позвоните getMessage ] в вашем .text() вызове, например:

label.addClass("valid").text(getMessage());

15
задан Joel Coehoorn 5 June 2009 в 14:17
поделиться

5 ответов

Я нашел контейнер разделов в CN = Partitions, CN = Configuration, который содержит все домены.

Когда вы сопоставляете пользователя с разделом, вы можете прочитать реальное доменное имя из nETBIOSName + " \ "+ свойство sAMAccountName.

3
ответ дан 1 December 2019 в 00:33
поделиться

Предполагается, что results - это SearchResultCollection, полученный из DirectorySearcher, но вы должны иметь возможность получить идентификатор объекта напрямую из DirectoryEntry.

SearchResult result = results[0];
var propertyValues = result.Properties["objectsid"];
var objectsid = (byte[])propertyValues[0];

var sid = new SecurityIdentifier(objectsid, 0);

var account = sid.Translate(typeof(NTAccount));
account.ToString(); // This give the DOMAIN\User format for the account
25
ответ дан 1 December 2019 в 00:33
поделиться

Вы выиграли ' К сожалению, не удалось найти то, что вы ищете в DirectoryEntry.

У вас есть sAMAccountName , которое обычно выглядит как myuser (без домена). У вас есть отличительное имя , что-то вроде LDAP: // cn = joe myuser, cn = Users, dc = yourCompany, dc = com . У вас также есть userPrincipalName , но обычно это имя в формате joeUser@mycompany.com.

Но, к сожалению, вы не найдете ни одного атрибута, в котором есть домен \ MyUser . Вам нужно будет собрать это вместе из вашей информации о доменном имени и sAMAccountName DirectoryEntry.

Для получения дополнительной информации и некоторых отличных таблиц Excel по всем свойствам LDAP и WinNT в System.DirectoryServices, посетите Веб-сайт Hilltop Lab , разработчик ADSI MVP Ричард Мюллер.

Марк

7
ответ дан 1 December 2019 в 00:33
поделиться

Если вы используете библиотеки System.DirectoryServices , у вас должна быть коллекция SearchResultsCollection из DirectorySearcher.

В каждой коллекции свойств SearchResult есть свойство «отличительное имя». Он будет содержать все части DC, составляющие домен, к которому принадлежит ваша запись в каталоге.

2
ответ дан 1 December 2019 в 00:33
поделиться

Чтобы получить имя домена DirectoryEntry, вы можете использовать рекурсию для directoryEntry.Parent . И тогда, если directoryEntry.SchemaClassName == "domainDNS" , вы можете получить имя домена следующим образом:

directoryEntry.Properties["Name"].Value
7
ответ дан 1 December 2019 в 00:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: