По теме из базы знаний
- Magic Updater. Система администрирования распределенной сети 1С:РИБ
- Практический опыт построения защищенного контура для 1С-приложения
- Как я мониторинг разворачивал
- VKEnterprise - простая в использовании open-source библиотека интеграции с ВКонтакте для 1С
- Автоматическое взаимодействие между 1С: ЗУП и Active Directory с Outlook
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Даже больше вопрос в том, можно ли получил выборку пользователей домена в обходе ее работать с пользователем. Там где ! знаки.
КомандаАДО = Новый COMОбъект("ADODB.Command");
СоединениеАДО = Новый COMОбъект("ADODB.Connection");
СоединениеАДО.Provider = "ADSDSOObject";
Попытка
СоединениеАДО.Open("Active Directory Provider");
Исключение
Сообщить("Ошибка при открытии Active Directory Provider: " + ОписаниеОшибки());
Возврат "не удалось получить пользователя домена";
КонецПопытки;
КомандаАДО.ActiveConnection = СоединениеАДО;
Попытка
RootDSE = ПолучитьCOMОбъект("LDAP://RootDSE");
Исключение
Сообщить("Ошибка ПолучитьCOMОбъект(LDAP://RootDSE): " + ОписаниеОшибки());
Возврат "не удалось получить пользователя домена";
КонецПопытки;
ТекущийДомен = RootDSE.Get("defaultNamingContext");
Сообщить("ТекущийДомен: " + ТекущийДомен);
Попытка
ОбъектТекущегоДомена = ПолучитьCOMОбъект("LDAP://" + ТекущийДомен);
Исключение
Сообщить("Ошибка ПолучитьCOMОбъект "+"LDAP://" + ТекущийДомен+": " + ОписаниеОшибки());
Возврат "не удалось получить пользователя домена";
КонецПопытки;
ДоменноеИмя = "TestUser";
//Фильтр = "(&(objectCategory=person)(objectClass=user))";
КомандаАДО.CommandText = "SEL ECT ADsPath,userAccountControl,displayName,sAMAccountName,Mail,givenName,sn,telephoneNumber FR OM 'LDAP://"+"SYN.local"+"' WHERE objectClass='"+"user"+"'"+" and sAMAccountName='"+ДоменноеИмя+"'";
КомандаАДО.Properties("Page Size").Value = 100;
КомандаАДО.Properties("Timeout").Value = 30;
КомандаАДО.Properties("Cache Results").Value = Ложь;
Попытка
ВыборкаАДО = КомандаАДО.Execute();
Исключение
Сообщить("Ошибка Execute(): " + ОписаниеОшибки());
Возврат "не удалось получить пользователя домена";
КонецПопытки;
Пока НЕ ВыборкаАДО.EOF Цикл
Если ВыборкаАДО.Fields("userAccountControl").Value = 514 ИЛИ
ВыборкаАДО.Fields("userAccountControl").Value = 546 ИЛИ
ВыборкаАДО.Fields("userAccountControl").Value = 66050 Тогда
//Сообщить("Заблокирован");
Иначе
Если НЕ ЗначениеЗаполнено(СокрЛП(ВыборкаАДО.Fields("telephoneNumber").Value)) Тогда
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
КонецЕсли;
КонецЕсли;
ВыборкаАДО.MoveNext();
КонецЦикла;
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот