Как я могу получить всех пользователей из Oracle Internet Directory, используя vbscript?

Как я могу получить всех пользователей из Oracle Internet Directory, используя vbscript?


person smith de jesus    schedule 26.07.2011    source источник


Ответы (1)


Насколько я понимаю, OID — это просто еще одна служба LDAP, поэтому я предполагаю, что ее можно запросить с помощью кода, подобного этому:

Const ADS_SCOPE_SUBTREE = 2

Set conn = CreateObject("ADODB.Connection")
Set cmd =   CreateObject("ADODB.Command")
conn.Provider = "ADsDSOObject"
conn.Open "Active Directory Provider"
Set cmd.ActiveConnection = conn

cmd.Properties("Page Size") = 1000
cmd.Properties("Searchscope") = ADS_SCOPE_SUBTREE 

cmd.CommandText = "SELECT Name FROM 'LDAP://dc=test,dc=com' WHERE objectCategory='user'"
Set rec = cmd.Execute

rec.MoveFirst
Do Until rec.EOF
    Wscript.Echo rec.Fields("Name").Value
    rec.MoveNext
Loop

Но измените LDAP://dc=test,dc=com на то, что вам нужно использовать для правильной привязки к нему.

person Hans Olsson    schedule 10.08.2011
comment
Как насчет того, чтобы восстановить их пароль? мне нужно изменить имя на userpassword, а также objectCategory? - person smith de jesus; 11.08.2011
comment
objectCategory останется прежним для других свойств пользователя, но я предполагаю, что вы не сможете получить пароль, поскольку это будет небезопасно. Однако вы можете изменить пароль, используя что-то вроде SetPassword. - person Hans Olsson; 11.08.2011
comment
атрибут пароля пользователя OID называется UserPassword. - person olivierg; 07.03.2017