powershell или .net — как получить доменные учетные записи с доменными именами

Несколько дней назад я спрашивал, как объединить данные Lotus Notes с данными из Active Directory. Я был уверен, что не будет проблем с получением учетных записей пользователей из AD, но на самом деле есть одна проблема. Я использовал Get-QADUser для получения имен пользователей, но, как я позже понял, учетных записей пользователей нет. У меня есть только сервер winxp и win2003, поэтому я не могу использовать модуль Active Directory для PowerShell и его командлет Search-ADAccount.

Я пытаюсь получить-QADUser, но безрезультатно. Эта команда выводит список доменных имен в следующей форме:

Markus Elen                user            CN=Markus Elen,OU=Users,OU=CENTRAL,DC=pb,DC=sk

но мне нужно имя пользователя и его доменная учетная запись.

Можно ли это сделать с помощью QADUser или другого командлета, отличного от Search-ADAccount? Спасибо!


person culter    schedule 21.05.2012    source источник
comment
Опубликуйте, как вы используете get-qaduser, и более подробно о том, чего вы хотите достичь.   -  person CB.    schedule 21.05.2012
comment
Извините, я запутался: вы пытаетесь использовать Get-QADUser для получения чего-то другого, кроме учетной записи пользователя, потому что у вас нет учетных записей пользователей? Или вы имеете в виду отсутствие учетных записей, соответствующих определенному запросу или другим критериям? Что именно вы пытаетесь получить?   -  person Rup    schedule 21.05.2012
comment
Извините за запутанный вопрос. Get-QADUSser отображает имена пользователей, но мне нужны учетные записи пользователей. Я пробовал все 27 примеров из файла справки, но безрезультатно.   -  person culter    schedule 21.05.2012


Ответы (2)


Get-QADUser возвращает объект с большим количеством свойств, включая имя учетной записи пользователя. Пытаться

Get-QADUser markus |fl

увидеть их всех. Вы, вероятно, хотите либо

Get-QADUser markus |ft Name, LogonName
Get-QADUser markus |ft Name, NTAccountName

хотя, если вы читаете их программно, вы должны принимать объекты непосредственно из Get-QADUser и запрашивать свойства непосредственно из них.

person Rup    schedule 21.05.2012
comment
Тем временем я обнаружил, что Get-QADUser | имя объекта, SamAccountName работает, но ваш Get-QADUser | ft Name, LogonName тоже работает! Спасибо - person culter; 22.05.2012

PowerShell позволяет выполнять запросы к AD изначально, используя ярлык типа [ADSISEARCHER] (оболочка для типа System.DirectoryServices.DirectorySearcher). Вот пример получения всех пользователей из вашего домена по умолчанию.

$searcher = [adsisearcher]'(objectCategory=user)(objectClass=user)" 
$searcher.FindAll()
person Shay Levy    schedule 21.05.2012