jueves, 22 de octubre de 2009

Members in Active Directory Group

Me vi en la necesidad de obtener una lista de usuarios de un grupo en AD en Win2003 Svr pero al quererlo hacer por medio de las herramientas administrativas no me daba el resultado deseado e inverti más tiempo de lo normal.

¿Qué fue lo que hice?

Tuve que recurrir al Command Prompt (Modo texto nunca se "raja").
Indagando un poco pude crear un pseudo vbs script:

On Error Resume Next

Const DOMAINGROUP = "LDAP://cn=grupo, cn=Users, dc=midominio,dc=com"
Const GROUPHEADER = "<-= GROUP grupo =->"
Const GROUPFOOTER = "====================="

doYourJob

openFile

Private Sub doYourJob()
Set objGroup = GetObject _
(DOMAINGROUP)
''objGroup.GetInfo

Set fso = CreateObject("Scripting.FileSystemObject")
Set file = fso.CreateTextFile("members.txt", True)

file.Writeline GROUPHEADER

For each objMember in objGroup.Members
file.Writeline objMember.Name
Next
file.Writeline GROUPFOOTER
file.Close
End Sub

Private Sub openFile()
Const WIN_STYLE = 4
Set objShell = WScript.CreateObject("WScript.Shell")
objShell.Run "notepad.exe c:members.txt", WIN_STYLE
End Sub


Solo hay que hacer copy-paste y grabarlo con extensión vbs.

Saludos!