Importar 50.000 usuarios de prueba en Directorio Activo con CSVDE y VBScript
|
Estos últimos días he estado preparando una carga de usuarios en Directorio Activo. El objetivo, generar unos 50.000 usuarios con datos aleatorios, que permitan hacer pruebas variopintas con ellos (en SharePoint, SQL Server, etc.), por lo de siempre, que las cosas con cinco usuarios funcionan muy bien, pero cuando trabajas en un entorno real con miles de usuarios, la cosa cambia. Probemos las cosas bien, desde el principio (pruebas de concepto y entornos de desarrollo y pre-producción). |
Hace poco escribí un artículo sobre cómo importar usuarios en Directorio Activo con CSVDE. En aquel momento, aproveché para incluir una hoja Excel de ejemplo, con la cual, es posible generar el contenido de un fichero CSV para importar en Directorio Activo. Sin embargo, aquella Excel tenía un par de inconvenientes:
- Sólo incluía información sobre unas pocas decenas de usuarios.
- Faltaba algo de información adicional, que puede resultar de interés para hacer pruebas más completas, como es el caso de datos del usuario como el departamento, puesto de trabajo, teléfono, el Manager del empleado (para tener una Jerarquía de empleados), y algún otro detalle más. Además, aquella carga se realizaba sobre una única Unidad Organizativa (OU), cuando en la vida real, en muchas ocasiones nos encontramos una estructura de OUs algo más compleja, por diferentes motivos organizativos (GPOs que se desean aplicar, delegación de tareas administrativas, etc.).
En esta ocasión, quiero aprovechar para adjuntar un nuevo ZIP, en el cual, se cubren estos pequeños vacíos que dejé en la vez anterior. Básicamente, se incluyen datos de aproximadamente 50.000 usuarios generados aleatoriamente. También se incluye una estructura de OUs, sobre la cual, se importan dichos usuarios (esta estructura de OUs también se puede importar con CSVDE en nuestro Directorio Activo). Además, he modificado el VBScript que creé para el anterior Post, de tal modo, que la nueva versión de dicho VBScript tiene una función que espera como variable el DN de la OU sobre la que se desea aplicar (principalmente, activar todas las cuentas de usuario, configurarlas como que la cuenta de usuario no caduca, y establecer una contraseña), y así, se pueda llamar a dicha función para cada OU.
Para la generación de los datos aleatorios de los usuarios, he utilizado un generador de datos aleatorios que he encontrado googleando por los Interneses, y que me ha resultado de gran utilidad, además de ser de descarga gratuita. Desde aquí, mil gracias al autor.
Sin más dilatación, a continuación tenéis disponible el ZIP para su descarga, en el interior del cual, podréis encontrar:
- Un fichero CSV para la importación de las Unidades Organizativas (OUs) en Directorio Activo con CSVDE.
- Un fichero CSV para la importación de usuarios en Directorio Activo con CSVDE.
- Un fichero VBScript para activar las cuentas de usuario (habilitarlas, configurarlas para que no caduquen, y establecerlas una contraseña).
- Una hoja Excel, que os puede servir para generar vuestros propios CSV de cargas, al margen de que utilicéis para ello datos reales de usuarios o datos de laboratorio generados aleatoriamente.
Por mi parte, he realizado la correspondiente carga de usuarios en Directorio Activo y la ejecución del VBScript para todas las OUs afectadas, funcionando satisfactoriamente. Probado tanto en un Directorio Activo de Windows Server 2003 R2 como en otro Directorio Activo de Windows Server 2008 R2, en ambos casos OK. Eso sí, el tiempo de carga es de aproximadamente una hora, y el tiempo de ejecución del script es de otra hora (más o menos, en estos momentos hablo de memoria).
Con un conjunto de 50.000 usuarios podemos hacer pruebas y experimentar situaciones interesantes, aun estando en un entorno de laboratorio. Desde cosas tan básicas como toparnos con el límite de 2000 elementos que tiene por defecto la consola Active Directory Users and Computers (ADUC) que tendremos que ampliar a un valor más alto (quizás 5000), como otros detalles algo más complejos. Por ejemplo, una importación de perfiles (profile import) de tipo FULL desde Directorio Activo en SharePoint 2010, con este conjunto de 50.000 usuarios de prueba, me ha tardado más de 24 horas en mi entorno de laboratorio.
Poco más por hoy. Como siempre, confío que la lectura resulte de interés.
|
]
[Autor: GuilleSQL]
|
|
|