Страницы: 1
RSS
Подтягивание списка пользователей из ActiveDirectory на лист Excel
 
Уважаемые коллеги, поиск по форуму не помог, поэтому задаю вопрос.

Как можно подтянуть список пользователей из ActiveDirectory в столбец на лист Excel, находясь внутри области действия LAN c AD?

Функционал нужен для автоматического формирования актуального списка пользователей внутренней сети предприятия. Уровни прав доступа пока не сильно интересуют, важно понять механизм.

Или где про это почитать можно? Желательно с примерами.
 
Запрос в LDAP
в инете полно вариантов
https://forum.script-coding.com/viewtopic.php?id=3217
http://www.cruto.com/resources/vbscript/vbscript-examples/vbscript-sitemap.asp
например этот
http://www.cruto.com/resources/vbscript/vbscript-examples/ad/users/status/List-All-the-Disabled-User-Accounts-in-Active-Directory.asp
но я с ним не согласен так как фильтровать можно уже только незаблокированные учетки
Все включенные пользователи (&(objectCategory=person)(objectClass=user)
(!userAccountControl:1.2.840.113556.1.4.803:=2))
https://social.technet.microsoft.com/wiki/contents/articles/8077.active-directory-ldap-ru-ru.aspx и это не потребует
Код
    intUAC=objRecordset.Fields("userAccountControl")
    If intUAC AND ADS_UF_ACCOUNTDISABLE Then
Изменено: БМВ - 22.09.2021 23:11:07
По вопросам из тем форума, личку не читаю.
 
Доброе время суток,

У меня такой код работает:
Код
objCommand.CommandText = _
"Select SamAccountName, Name, whenCreated, telephoneNumber, mail, Enabled, DistinguishedName, MemberOf, whenCreated, lastLogon, lastLogonTimeStamp, userAccountControl, pwdLastSet " _
& " from 'LDAP://" & strDomain & "' " _
& "Where   objectClass='User' and objectCategory='Person' "
Но надо добавить условие чтобы исключать отключенные учетки (Disabled).
Написал так, но понимает:
Код
objCommand.CommandText = _
"Select SamAccountName, Name, whenCreated, telephoneNumber, mail, Enabled, DistinguishedName, MemberOf, whenCreated, lastLogon, lastLogonTimeStamp, userAccountControl, pwdLastSet " _
& " from 'LDAP://" & strDomain & "' " _
& "Where   objectClass='User' and objectCategory='Person' " _
& " and (!userAccountControl:1.2.840.113556.1.4.803:=2) "

Подскажите пожалуйста, как правильно добавить условие.
 
В SQL нотации !userAccountControl:1.2.840.113556.1.4.803:=2 не добавить ,собственно это запись сравнения второго бита в значении и он не должен быть равен 1. только зачем такие мучения если можно все прописать в LDAP нотации запроса.

Как то давно это у меня получилось но сейчас не найти, попробуйте  просто сравнить (userAccountControland AND 2)=0 но я не гарантирую
По вопросам из тем форума, личку не читаю.
Страницы: 1
Наверх