• Domingo 22 de Diciembre de 2024, 14:01

Autor Tema:  Vba-->crea Usuarios Y Passwrod En Active Directory  (Leído 1826 veces)

sete15

  • Nuevo Miembro
  • *
  • Mensajes: 4
    • Ver Perfil
Vba-->crea Usuarios Y Passwrod En Active Directory
« en: Miércoles 7 de Diciembre de 2005, 11:36 »
0
Hola Chic@s!

Soy nuevo aquí, y tengo un problemilla que espero que me ayudeis a resolver. El caso es que debo realizar un trabajo en VBA (excel).

Éste consiste en que, a partir de unos nombres de usuarios insertados en un libro de excel, creemos un formulario y, mediante un botón,  se cree un password para cada usuario y que estos usuarios se creen dentro de un dominio en Windows 2003 Server con ese password. Esto es lo que me falta porque yo, ya he creado los nombres de usuario y los usuarios se me han creado dentro del Active Directory. Tan solo me quedaría poder crear un password al azar (de 8 digitos) para cada usuario. Si queréis puedo poner el código de como cree los usuarios y los inserte en el Active Directory.

                                                                                        Muchas Gracias a todos!!!!
                                                                                                                   Sete15

Shiquilla

  • Miembro MUY activo
  • ***
  • Mensajes: 188
  • Nacionalidad: es
    • Ver Perfil
    • http://www.songesoft.com
Re: Vba-->crea Usuarios Y Passwrod En Active Directory
« Respuesta #1 en: Miércoles 7 de Diciembre de 2005, 11:40 »
0
Función que le pasas una longitud y te devuelve un string (en este caso le pasarías longitud 8).

Código: Text
  1. Public Function mfbCadenaAleatoria(lnLongitud As Long) As String
  2. Dim lnNumSimbolos As Long
  3. Dim laSimbolos
  4.     laSimbolos = Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", _
  5.     "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", _
  6.     "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", _
  7.     "U", "V", "W", "X", "Y", "Z", _
  8.     "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", _
  9.     "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", _
  10.     "u", "v", "w", "x", "y", "z")
  11.     
  12.     lnNumSimbolos = UBound(laSimbolos) + 1
  13.     Randomize
  14.     Do While Len(mfbCadenaAleatoria) < lnLongitud
  15.         mfbCadenaAleatoria = mfbCadenaAleatoria & laSimbolos(Int(lnNumSimbolos * Rnd()))
  16.     Loop
  17.     
  18. End Function
  19.  

PD: Podrías poner el código para crear los usuarios? Gracias.

Saludos
« §hÿqµïllæ »

sete15

  • Nuevo Miembro
  • *
  • Mensajes: 4
    • Ver Perfil
Re: Vba-->crea Usuarios Y Passwrod En Active Directory
« Respuesta #2 en: Miércoles 7 de Diciembre de 2005, 12:06 »
0
Muchas gracias 'Shiquilla', es que ando un poco perdido con esto y es un proyecto para clase que tengo que entregar la próxima semana. Gracias de nuevo, voy a probar tu código  :D

Código: Text
  1.  
  2. Dim usu, passwd As String
  3.  
  4. Rem Crear usuarios para 2003 Server
  5. TextBox4 = Left(Me.TextBox1.Value, 1) & Left(Me.TextBox2.Value, 3) & Left(Me.TextBox3.Value, 3)
  6.  
  7. Rem aki me tengo que colocar en la primera celda donde hay nombres (en la 9) y que genere los
  8. Rem usuarios hasta que vea que hay una nula
  9. Range("A10").Select
  10. ActiveCell.Offset(0, 3).Select
  11. Do While ActiveCell <> Empty
  12.  
  13. If ActiveCell <> Empty Then
  14. usu = ActiveCell
  15. ActiveCell.Offset(0, 1).Select
  16. passwd = ActiveCell
  17. ActiveCell.Offset(0, 1).Select
  18.  
  19.  
  20. Rem Crear el usuario en Usuarios y grupos del Active Directory
  21. Rem En mi caso, el nombre de la unidad organizativa es: AULA109
  22. Rem  "  "   " , el nombre del dominio es: "informatica.iespuertodelacruz", pues bien
  23. Rem como esta separado por punto, cada parte del nombre del dominio se pondrá Rem dentro de "dc"
  24. Rem No me explico bien pero aquí debajo tenéis el ejemplo en cuestón:
  25.  
  26. Set objOU = GetObject("LDAP://ou=AULA109,dc=informatica,dc=iespuertodelacruz")
  27. Set objUser = objOU.Create("User", "cn=" & usu)
  28. objUser.Put "sAMAccountName", usu
  29. objUser.SetInfo
  30.  
  31.  
  32. End If
  33. ActiveCell.Offset(1, -2).Select
  34.  
  35. Loop
  36.  
  37. End Sub
  38.  
  39.  

Gracias!!!