Restricciones en la extensión de esquema
Para reducir la posibilidad de cambios de esquema por parte de una aplicación que rompe otras aplicaciones y mantener la coherencia del esquema, Servicios de dominio de Active Directory aplicar restricciones en el tipo de cambios de esquema que una aplicación o usuario puede realizar.
Las restricciones solo se imponen a la modificación de los objetos de esquema existentes. El esquema se clasifica en dos categorías. Los objetos de esquema que se incluyen con Windows 2000 en el esquema base pertenecen a la categoría 1. Los objetos de esquema agregados posteriormente por otras aplicaciones o usuarios a través de la extensión de esquema dinámico pertenecen a la categoría 2. La categoría de un objeto de esquema se puede determinar mediante el 0x10 bit establecido en el atributo systemFlags en el objeto classSchema . Este bit solo se establece en objetos Category 1 y no se puede modificar, ni se puede establecer en ningún objeto Category 2.
El atributo systemFlags se usa internamente por Servicios de dominio de Active Directory para identificar características especiales de objetos "infraestructura" en el esquema base. Además de identificar objetos Category 1, systemFlags controla si se puede mover, eliminar o cambiar el nombre de un objeto. Estas operaciones se impiden para los objetos de los que depende Windows 2000.
En cualquier objeto de esquema, Categoría 1 o 2, Servicios de dominio de Active Directory imponer las restricciones siguientes:
- No se puede agregar un nuevo mustContain a una clase (directamente o a través de la herencia agregando una clase auxiliar).
- No se puede eliminar mustContain de la clase (directamente o a través de la herencia).
Además, se imponen las siguientes restricciones adicionales a los objetos de esquema de categoría 1:
No se pueden cambiar los siguientes atributos de un atributo Category 1:
- rangeLower y rangeUpper (intervalo de valores).
- attributeSecurityGuid (determina en qué propiedad se establece el atributo pertenece, si existe).
No se puede cambiar defaultObjectCategory de una clase Category 1.
No se puede cambiar el objectCategory de ninguna instancia de una clase Category 1.
No se puede hacer que una clase o atributo de categoría 1 no funcione.
No se puede cambiar el lDAPDisplayName de una clase o atributo category 1.
No se puede cambiar el nombre de una clase o atributo category 1.