What is Active Directory Schema?

The Active Directory schema is a component of Active Directory which contains rules for object creation within an Active Directory forest. The Active Directory schema is a list of definitions about Active Directory objects and information about those objects that are stored in Active Directory.

The schema is the blueprint of Active Directory and schema defines what kinds of objects can exist in the Active Directory database and attributes of those objects.

Active Directory Classes, Objects and Attributes

The information in the Active Directory is represented as Objects, and there is an object for each user, computer, printer etc. Object of the same type belong to same class.

Example: All user objects belong to class "user", all computer objects belong to class “computer” and all printer objects belong to class "printQueue".

The information in an object is stored as Attributes (Properties), which the corresponding class supports. Attributes define various information that a class can contain.

The process of creating an object from a class is called instantiation, and an object created from a class is called an instance of that class.

Example: You have created a user called jerome.h in the Active Directory. The user object jerome.h is an instance of the Active Directory class "user".

Classes are categorized as abstract, structural and auxiliary classes.

Abstract classes: Abstract classes provide attributes that flow through the hierarchy, but they cannot be used to instantiate an object. Abstract classes can inherit from other classes and can have attributes defined on them directly, but you cannot create (instantiate) and object of an abstract class.

Structural classes: Structural classes can be instantiated into objects and can contain additional attributes that are not inherited from the other class types. The user and group classes are the examples of structural classes.

Auxiliary classes. Auxiliary classes provide attributes that extend a structural class, but they cannot be used to form a structural class by themselves or instantiate an object.

Related Tutorials