Schema Components
The schema is made up of classSchema objects and attributeSchemaobjects. The classSchema objects are definitions that are stored in the schema and are used to define classes. Classes define groups of attributes that have something in common. The User class includes a variety of attributes, including the users logon name, first name, last name, and password.
The schema also defines the attributes that can be stored for each class. Attributes are defined globally in AD DS as attributeSchema objects, and each class can use multiple globally defined attributes. Each of these attributes is defined by attribute objects that also have their own definition that specifies information such as the type of data that they store and the minimum and maximum length or value. The directory service uses attributeSchema
objects to define the type of the data stored in attributes for each object of a given class and to enforce the constraints defined in the attributeSchema
The classSchema object specifies the attributes that are associated with the object. The specification includes all of the attributes that can be associated with the object, which can be broken into four categories:
mustContain attributes, which include mandatory attributes that must be present on any
object that is an instance of this class
mayContain attributes, which include optional attributes that may be found on an object
that is an instance of this class
systemmayContain attributes, which are optional attributes configured during object
creation, and which cannot be modified after the object has been created
systemmustContain attributes, which are mandatory attributes configured during object creation, and which cannot be modified after the object has been created