powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / [игнор отключен] [закрыт для гостей] / Работа с LDAP
8 сообщений из 8, страница 1 из 1
Работа с LDAP
    #38305755
rbv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
rbv
Гость
Здравствуйте помогите плиз новичку, возникла необходимость в 1c 8.2 вытащить все не отключенные компы из AD. Как именно в запросе прописать значение userAccountControl. Пытаюсь прикрутить не помогает никак. пр. кода
АДОКоннектор = Новый COMОбъект("ADODB.Connection");
АДОКоннектор.ConnectionString = "Provider=""ADsDSOObject""";
АДОКоннектор.Open();

ТекстЗапроса = "
|SELECT AdsPath
|FROM 'LDAP://ad.ies-holding.com/OU=KOM-S,OU=KOM,DC=ad,DC=ies-holding,DC=com'

|WHERE
| objectCategory='computer'
| and userAccountControl = // какой параметр прикрутить что бы заработало???

|ORDER BY sn
|";
...
Рейтинг: 0 / 0
Работа с LDAP
    #38305806
AHDP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поищи книгу А.Михайлова Системное программирование для 1С (или как-то созвучно), там расписано.
...
Рейтинг: 0 / 0
Работа с LDAP
    #38305938
narval
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не понял с какого боку в данном случае тут userAccountControl, но впрочем держи возможные значения. Комбинации их ищутся специальными конструкциями, в "лоб" как ты пытаешься у тебя либы выйдет очень длинно, либо вообще не выйдет

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
SCRIPT = 1
ACCOUNTDISABLE = 2
HOMEDIR_REQUIRED = 8
LOCKOUT = 16
PASSWD_NOTREQD = 32
PASSWD_CANT_CHANGE = 64
ENCRYPTED_TEXT_PASSWORD_ALLOWED = 128
TEMP_DUPLICATE_ACCOUNT = 256
NORMAL_ACCOUNT = 512
INTERDOMAIN_TRUST_ACCOUNT = 2048
WORKSTATION_TRUST_ACCOUNT = 4096
SERVER_TRUST_ACCOUNT = 8192
DONT_EXPIRE_PASSWD = 65536
MNS_LOGON_ACCOUNT = 131072
SMARTCARD_REQUIRED = 262144
TRUSTED_FOR_DELEGATION = 524288
NOT_DELEGATED = 1048576
USE_DES_KEY_ONLY = 2097152
DONT_REQUIRE_PREAUTH = 4194304
PASSWORD_EXPIRED = 8388608
TRUSTED_TO_AUTHENTICATE_FOR_DELEGATION = 16777216 
...
Рейтинг: 0 / 0
Работа с LDAP
    #38305987
rbv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
rbv
Гость
narval,Спасибо, перебором, сделаю. думал может как то заставить работать вот такой вариант (!userAccountControl:1.2.840.113556.1.4.803:=2)), видимо в 1с никак.
...
Рейтинг: 0 / 0
Работа с LDAP
    #38305999
narval
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну почему же. Ты нашел правильную конструкцию, фильтр по битовой маске называется. В 1С отлично работает. Тебе только нужно понять как маска составляется. вот например: http://www.selfadsi.org/ldap-filter.htm#BitAndOr описан в достаточной мере процесс
...
Рейтинг: 0 / 0
Работа с LDAP
    #38306127
rbv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
rbv
Гость
narval, конструкция правильная только в запросе не работает , ошибку показывает, как в запросе ее указать ?
...
Рейтинг: 0 / 0
Работа с LDAP
    #38306160
narval
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
так и использовать. Ты видимо синтаксис неподходящий выбрал для решения своей задачи. провайдер ADsDSOObject поддерживает два варианта синтаксиса, sql подобный и язык LDAP запросов. Оба выдают одинаковые результаты (при правильно составленных аналогов тектов запросов понятно), первый - проще и удобнее, хорош для простых динамических запросов, второй покудрявее. Сравни что нибудь вроде

Код: vbnet
1.
Select  displayName from LDAP://Domain where objectSid='S-0-0-00-00000000000000-00000-0000'


и

Код: vbnet
1.
2.
3.
4.
<LDAP://DOMAIN>; 
(&(objectCategory=person)(objectClass=user)(!userAccountControl:1.2.840.113556.1.4.803:=2));
displayName;
OneLevel



В твоем случае - идти по второму пути. Либо тебе придется писать сложное условие where в первом. Еще - как вариант, забери из AD все записи которые тебя интересуют, впихни во временную таблицу на стороне 1С и обрабатывай удобным тебе способом на языке запросов 1С
...
Рейтинг: 0 / 0
Работа с LDAP
    #38306270
rbv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
rbv
Гость
narval, спасибо буду пробовать)
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / [игнор отключен] [закрыт для гостей] / Работа с LDAP
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]