Continuando con el tema de la nota anterior (Active Directory: Mostrar y Editar Atributos Ocultos), en esta nota veremos cómo podemos crear nuestros propios atributos de acuerdo a necesidad
Aunque podemos utilizar uno de los atributos normales para otro uso, siempre y cuando tengan la misma sintaxis, como ejemplo desarrollaré en este caso cómo agregarle a la clase “Users” un atributo como el DNI (Documento Nacional de Identidad), pero el procedimiento sería totalmente análogo para otros casos
Para esta demostración utilizaré sólo un Controlador de Dominio, en donde haré la modificación del “Schema” (Esquema).
Recuerdo que el “Schema” contiene la definición formal de todos los atributos y clases que comprenden los objetos de nuestro Dominio
Además, este procedimiento lo debemos ejecutar desde una cuenta que pertenezca los grupos “Schema Admins” y “Enterprise Admins”, ya que afectará a todo el “Forest” (Bosque)
Una acotación muy importante a tener en cuenta es que el “Schema” puede ampliarse y modificarse, pero luego no hay forma de volver atrás. Lo más que se puede hacer es deshabilitar la clase o atributo creado, pero será imposible eliminarlo
Y además el “Schema” es el único componente del que no se puede ejecutar un “Authoritative Restore”
Por lo tanto recomiendo siempre hacer primero la prueba en ambiente no productivo, y recién cuando estamos totalmente seguros del procedimiento ejecutarlo en el ambiente de producción
Para proteger el “Schema” de quien no conoce mucho del tema, el sistema crea un paso adicional antes de poder crear la consola que nos permite su manipulación directa. Debemos registrar una DLL
Por lo tanto debemos ejecutar: REGSVR32.EXE SCHMMGMT.DLL
Recién luego de registar esta DLL podremos crear una consola con “Active Directory Schema”
Que a simple vista es muy simple. Si abren el árbol de la izquierda verán que hay una larga lista tanto de atributos como de clases
Antes de poder crear una clase o atributo nuevo debemos obtener un OID (Object ID). La forma más sencilla es descargar en una carpeta cualquier un script de Microsoft que permite generar un OID único
Lo pueden descargar desde: http://gallery.technet.microsoft.com/scriptcenter/56b78004-40d0-41cf-b95e-6e795b2e8a06
Lo ponemos en una carpeta cualquiera y lo ejecutamos; nos proporcionará un OID propio, e inclusive instrucciones de qué OIDs usar para generar clases y atributos
Vuelvo a la ventana del “Schema” y las arreglo como para ver el OID generado y copiarlo exactamente
Lo primero es crear nuestro atributo
¿Está seguro? te aviso … 😉
Ahora completamos los campos de nuestro atributo, prestando atención especial al asignarle el OID. En mi caso yo le he agregado “.1.1”. Cualquier duda vean la ayuda que proporciona el propio cuadro del script
Tengan también en cuenta que de acuerdo al atributo que vayamos a agregar, seleccionar adecuadamente la sintaxis
Ya creado el nuevo atributo, abrimos “Classes”, y en nuestro caso “Users” y con botón derecho seleccionamos “Properties”
En la ficha “Attributes” procedemos a agregar el atributo nuevo
La consola ha dado un error. Primero pensé que era un problema de mi instalación, pero lo probé en otra instalación y dio exactamente el mismo error. Puede ser porque es una instalación sin ningún tipo actualización. De todas formas no preocuparse, ya que todo funciona de acuerdo a lo previsto
Debemos reinciar el servicio de directorio para que se lea el nuevo “Schema”, esto lo haremos con desde un CMD,EXE en modo administrador:
- NET STOP NTDS
- NET START NTDS
Ahora en “Active Directory Users and Computers” seleccionamos la opción de vista avanzada
Y en las propiedades de cualquier usuario, ficha “Attribute Editor” podremos ver el nuevo atributo
Recuerdo nuevamente la nota anterior (Active Directory: Mostrar y Editar Atributos Ocultos) donde tenemos el procedimiento para asignarle un script y poder editarlo más cómodamente