Понадобилось сегодня срочно сделать отчет по пользователям которые включены в одну специфическую группу OU в домене AD. Готового под рукой ничего не было, поэтому я раздербанил несколько старых скриптов и соорудил один рабочий:
On Error Resume Next
Set objGroup = GetObject («LDAP://cn=X_Users,ou=Security — Groups,dc=blabla,dc=bla,dc=ru»)
objGroup.GetInfoarrMemberOf = objGroup.GetEx(«member»)
For Each strMember in arrMemberOf
Set objUser = GetObject(«LDAP://» & strMember)
WScript.echo objUser.samaccountname & «;» & objUser.userPrincipalName &»;»& objUser.distinguishedNameNext
Принцип работы очень простой. Копируете в текстовый файл, сохраняете с разрешением VBS, указываете функции GetObject необходимый DN до нужной группы. Затем запускаете из командной строки:
cscript //nologo вашскрипт.vbs > users.csv
Ключ //nologo подавляет вывод в результаты команды служебных заголовков, а модификатор > переправляет результаты в текстовый файл. Его потом можно открыть Excel как структурированные данные с разделителем точка с запятой, и использовать как необходимо.
2 комментария
Как узнать имя пользователя за компьютером? | Жизнь ИТшника
Добрый день, может сталкивались.. мне нужно вытащить из AD пользователей а точнее их логины и имена.. И импортировать в mysql бд.. я так понимаю, что для этого нужен коммутирющий софт использующий ODBC ..