20.09.2008, 18:53
|
#6
|
Участник
Регистрация: 28.11.2005
Адрес: Москва
|
Цитата:
Сообщение от 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 пользователя по указанному домену/логину.
|
|