Visual basic + Active directory

Hace unos dias, estuve desarrollando una pequeña aplicación en la cual era necesario extraer la lista de usuarios de el active directory que se encuentra en el servidor, vaya que tarde algunas horas (casi 4 hrs), pero al final lo resolví de una manera un poco práctica. Primeramente revisemos la estructura del active directory

Como pueden darse cuenta, tenemos el dominio, un grupo de trabajo, y por ultimo los usuarios de ese grupo.

Para leer de nuestro active directory desde visual basic añadimos en la referencia Active DS Type Library.

Con el siguiente código podremos accesar a la lista de usuarios y cargarla en un listbox.


Public Function load_user(ByVal lista As ListBox)
Dim ou As IADs
On Error GoTo Cleanup
'La sintaxis en DC, y en OU corresponden a los
'folders que deseamos acceder.
Set ou = GetObject("LDAP://OU=Usuarios, OU=group" & _
", DC=domain, DC=org " )
' El child en OU es Usuarios
For Each Child In ou
    nombre = Mid(Child.Name, 4)
    If valida(nombre) = False Then
        lista.AddItem nombre
   End If
Next
Set ou = Nothing
Exit Function
Cleanup:
    If (Err.Number  0) Then
        MsgBox ("Ha ocurrido el error: " & Err.Number)
    End If
    Set ou = Nothing
End Function

Con esto tendremos un listbox, cargado con los nombre de los usuarios, jejejeje, para poner la sintaxis de codigo VB6 me sirvio la pagina de Vargas, donde trae un vinculo hacia los FAQ’s de wordpress, donde explica la sintaxis a utilizar para que se vea un poco mas bonito el código.

saludos

2 Comments »

  1. Erika Calderon said,

    June 23, 2008 @ 12:32 pm

    Se podra generar en visual basic algun tipo de plantilla para crear cuentas.
    llegan aproximadamente 79 por dia. alguna manera para evitar perder tiempo en estar creando una por una. lo que cambiaria es el user name.
    se establecen grupos estandar. permisos igula manera.

  2. Dvorak said,

    June 23, 2008 @ 7:32 pm

    Seguramente es posible hacerlo, aunque destaco que este procedimiento es solo para leer la lista de usuarios, los cuales han sido cargados en la variable ‘ou’, por lo que esa variable deberá tener algunas propiedades, de las cuales alguna de ellas podrá añadir usuarios.

    saludos

RSS feed for comments on this post · TrackBack URI

Leave a Comment