AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 20.09.2008, 18:53   #1  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5813 (201) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
Цитата:
Сообщение от Eland Посмотреть сообщение
Задача: получить список всех пользователей домена вне зависимости от того, является ли пользователь членом (member of) чего-нибудь.
Есть пример на VBScript получения всех пользователей текущего домена с помощью ADODB-адаптера. Думаю, перевести его на Х++ не должно составить труда.
Код:
' какие атрибуты объектов будут возвращены запросом
const strAttributes     = "name,sAMAccountName,displayName,adspath"
const strAdsiFilter     = "(&(objectCategory=person)(objectClass=user))"

' построение запроса
strNamingContext        = GetObject("LDAP://rootDSE").get("defaultNamingContext")
strADOQuery             = "<LDAP://" & strNamingContext & ">;" & strAdsiFilter & ";" & strAttributes & ";subtree"

' настройка соединения
set oConn               = CreateObject("ADODB.Connection")
oConn.Provider          = "ADsDSOObject"
oConn.open                "ADs Provider"
set oCmd                = CreateObject("ADODB.Command")
oCmd.ActiveConnection   = oConn
oCmd.CommandText        = strADOQuery
oCmd.Properties("Page Size")        = 4000
oCmd.Properties("Timeout")          = 1000
oCmd.Properties("Cache Results")    = True

' выполнение запроса
set oRS                 = oCmd.execute
wscript.echo oRS.RecordCount & " objects found. Processing..."
while not oRS.EOF
    wscript.echo    oRS.Fields("name")              & ", " & _
                    oRS.Fields("sAMAccountName")    & ", " & _
                    oRS.Fields("displayName")       & ", " & _
                    oRS.Fields("adspath")
    oRS.MoveNext
wend
Важные моменты тут: strNamingContext, который будет указывать на текущий домен (типа DC=mydomain,DC=ru), соотв., если нужен другой домен, надо прописать что-то свое; strAttributes, где перечислены возвращаемые атрибуты, - если нужны другие, соотв., надо их указать.
Цитата:
Сообщение от Eland Посмотреть сообщение
Есть мысль поковыряться в Microsoft.Dynamics.IntegrationFramework.dll, копчиком чувствую есть там кой-чего полезного.
Нету там ничего, связанного с указанной задачей. Там живут такие классы, как RosourceMgr, AIFBase с наследниками-адаптерами (FileSystem, MessageQueue, WebService, ServiceGeneration) да классец Util с одним-единственным методом, возвращающим SID пользователя по указанному домену/логину.
Теги
ax4.0

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Организация доступа внешних веб-пользователей к DAX 4.0 alex55 DAX: Администрирование 1 07.06.2009 17:48
Как сделать фильтр по группе пользователей? Zabr DAX: Программирование 12 08.04.2009 11:40
Периодически пропадает доступ к Системе у удаленных пользователей andy_555 DAX: Администрирование 4 04.03.2009 15:02
Закрыть доступ к компаниям без создания домена и группы пользователей Рустем Гизатуллин DAX: Администрирование 3 04.12.2007 09:38
Настройка форм для групп пользователей Роман Кошелев DAX: Функционал 14 05.08.2002 16:32

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 07:52.