terms and conditions set forth in the Open Publication License, V1.0 or later (the latest version is presently available at
http://www.opencontent.org/openpub/).
Distribution of substantively modified versions of this document is prohibited without the explicit permission of the copyright holder.
Distribution of the work or derivative of the work in any standard (paper) book form for commercial purposes is prohibited unless prior permission is
obtained from the copyright holder.
Red Hat and the Red Hat "Shadow Man" logo are registered trademarks of Red Hat, Inc. in the United States and other countries.
All other trademarks referenced herein are the property of their respective owners.
The GPG fingerprint of the security@redhat.com key is:
CA 20 86 86 2B D6 9D FC 65 F6 EC C4 21 91 80 CD DB 42 A6 0E
10Red Hat Directory Server Schema Reference • May 2005
About This Reference Guide
Red Hat Directory Server (Directory Server) is a powerful and scalable distributed
directory server based on the industry-standard Lightweight Directory Access
Protocol (LDAP). Directory Server is the cornerstone for building a centralized and
distributed data repository that can be used in your intranet, over your extranet
with your trading partners, or over the public Internet to reach your customers.
This preface contains the following sections:
•Purpose of This Guide (page 11)
•Directory Server Overview (page 11)
•Contents of This Guide (page 12)
•Prerequisite Reading (page 12)
•Conventions Used in This Book (page 13)
•Related Information (page 13)
Purpose of This Guide
This Schema Reference guide describes the standard directory schema for Directory
Server and lists all the object classes and attributes defined by the standard schema.
The information provided here is intended for the administrator who manages and
maintains the schema.
Directory Server Overview
The major components of Directory Server include:
•An LDAP server — The core of the directory service, provided by the
ns-slapd
daemon, and compliant with the LDAP v3 Internet standards.
11
Contents of This Guide
•Directory Server Console — An improved management console that
dramatically reduces the effort of setting up and maintaining your directory
service. The directory console is part of Red Hat Console, the common
management framework for LDAP directory services.
•SNMP Agent — Permits you to monitor your Directory Server in real time
using the Simple Network Management Protocol (SNMP).
•Online backup and restore — Allows you to create backups and restore from
backups while the server is running.
Contents of This Guide
•Chapter 1, “About Schema” — Provides an overview of some of the basic
concepts of the directory schema and lists the files in which the schema is
described. It describes object classes, attributes, and Object Identifiers (OIDs)
and briefly discusses schema checking and extending server schema.
•Chapter 2, “Object Class Reference”— Contains an alphabetical list of the
object classes accepted by the default schema. It gives a definition of each
object class and gives the list of required and allowed attributes specific to the
particular object class. However, any mandatory and optional attributes
inherited from superior object classes are not listed.
•Chapter 3, “Attribute Reference” — Contains an alphabetic list of the
standard attributes. It gives a definition of each attribute and gives the
attribute syntax.
•Chapter 4, “Operational Attributes, Special Attributes, and Special Object Classes” — Contains operational attributes used by Directory Server. The
chapter also describes some special attributes and object classes that are used
by the server.
Prerequisite Reading
This guide describes the standard schema and the standard object classes and
attributes. However, this guide does not describe how to design, customize or
maintain your schema, nor does it give any information on replication. Those
concepts are described in the Red Hat Directory Server Deployment Guide. You
should read that book before continuing with this manual.
12Red Hat Directory Server Schema Reference • May 2005
When you are familiar with Directory Server schema concepts and have done some
preliminary planning for your directory service, you can install the Directory
Server. The instructions for installing the various Directory Server components are
contained in the Red Hat Directory Server Installation Guide.
Preliminary planning includes deciding how to represent the data you store. You
should chose predefined schema elements to meet as many of your needs as
possible. These predefined schema elements are listed in this guide.
Conventions Used in This Book
This section explains the conventions used in this book.
•
Monospaced font
computer screen or text that you should type. It is also used for filenames,
functions, and examples.
•Throughout this book, you will see path references of the form:
— This typeface is used for any text that appears on the
Conventions Used in This Book
serverRoot
serverRoot is the installation directory. The default installation directory is
/opt/redhat-ds/servers
location, you should adapt the path accordingly.
serverID is the ID or identifier you assigned to an instance of Directory Server
when you installed it. For example, if you gave the server an identifier of
•In examples/sample code, paths assume that the Directory Server is installed
in the default location
Directory Server in a different location, adapt the paths accordingly. Also, all
examples use
/slapd-
, then the actual path would look like this:
phonebook
Related Information
The document set for Directory Server also contains the following guides:
•Red Hat Directory Server Deployment Guide. Provides an overview for planning
your deployment of the Directory Server. Includes deployment examples.
serverID
/opt/redhat-ds/servers
/...
. If you have installed Directory Server in a different
. If you have installed your
for the server identifier where appropriate.
13
Related Information
•Red Hat Directory Server Installation Guide. Procedures for installing your
Directory Server as well as procedures for migrating your Directory Server.
•Red Hat Directory Server Administrator’s Guide. Procedures for the day-to-day
maintenance of your Directory Server. Includes information on configuring
server-side plug-ins.
•Red Hat Directory Server Configuration, Command, and File Reference.
Information about the command-line scripts, configuration attributes, and log
files shipped with Directory Server.
•Red Hat Directory Server Plug-in Programmer’s Guide. Describes how to write
server plug-ins in order to customize and extend the capabilities of Directory
Server.
•Red Hat Directory Server Gateway Customization Guide. Introduces Directory
Server Gateway and explains how to implement a gateway instance with basic
directory look-up functionality. Also contains information useful for
implementing a more powerful gateway instance with directory
authentication and administration capability.
•Red Hat Directory Server Org Chart. Introduces the Red Hat Directory Server
Org Chart application and explains how to integrate it with an instance of
Directory Server.
•Red Hat Directory Server DSML Gateway Guide. Introduces the Red Hat
Directory Server DSML Gateway function and explains how to customize it
for use as an independent gateway.
For a list of documentation installed with Directory Server, open the
server_root/manual/en/slapd/index.htm
file, where
server_root
is the directory in
which you installed Directory Server.
For the latest information about Directory Server, including current release notes,
complete product documentation, technical notes, and deployment information,
check this site:
http://www.redhat.com/docs/manuals/dir-server/
14Red Hat Directory Server Schema Reference • May 2005
Chapter1
About Schema
This chapter provides an overview of some of the basic concepts of the directory
schema and lists the files in which the schema is described. It describes object
classes, attributes, and object identifiers (OIDs) and briefly discusses extending
server schema and schema checking.
This chapter contains the following sections:
•Schema Definition (page 15)
•Schema Supported by Directory Server (page 19)
•Object Identifiers (OIDs) (page 21)
•Extending Server Schema (page 22)
•Schema Checking (page 22)
Schema Definition
The directory schema is a set of rules that defines how the data can be stored in the
directory. The data is stored in the form of directory entries. Each entry is a set of
attributes and their values. Each entry must have an object class. The object class
specifies the kind of object the entry describes and defines the set of attributes it
contains. The schema defines the type of entries allowed, their attribute structure,
and the syntax of the attributes.The schema can be modified and extended if it does
not meet your required needs.
To find detailed information about object classes, attributes, and how the Red Hat
Directory Server (Directory Server) uses the schema, refer to the Red Hat Directory Server Deployment Guide.
15
Schema Definition
CAUTIONDirectory Server fails to start if schema definitions include too few or
too many space characters.
Use exactly one space in those places where the LDAP standards
allow the use of zero or many spaces; for example, the place between
the NAME keyword and the name of an attribute type.
Object Classes
In LDAP, an object class defines the set of attributes that can be used to define an
entry. The LDAP standard provides some basic types of object classes, including:
•Groups, including unordered lists of individual objects or groups of objects.
•Locations, such as the country name and description
•Organizations
•People
•Devices
Required and Allowed Attributes
Every object class includes a number of required attributes and of allowed
attributes. Required attributes are the attributes that must be present in entries
using the specified object class, while allowed attributes are permissible and
available for the entry to use, but are not require for the entry to be validated.
All entries require the
objectClass
attribute, which lists the object classes
assigned to the entry.
For example, the
attributes and allows the
userPassword
person
.
object class requires the cn, sn, and
description, seeAlso, telephoneNumber
objectClass
, and
Object Class Inheritance
An entry can have more than one object class. For example, the entry for a person
is defined by the
inetOrgPerson, groupOfNames
person
object class but may also be defined by attributes in the
, and
organizationPerson
object classes.
The server’s object class structure determines the list of required and allowed
attributes for a particular entry. For example, a person entry is usually defined
with the following object class structure:
16Red Hat Directory Server Schema Reference • May 2005
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgperson
Schema Definition
In this structure, the
person
object classes. Therefore, when you assign the
inetOrgperson
inherits from the
organizationalPerson
inetOrgperson
object class
and
to an entry, it automatically inherits the required and allowed attributes from the
superior object class.
Attributes
Directory data is represented as attribute-value pairs. Any piece of information in
the directory is associated with a descriptive attribute.
For instance, the
person named Jonas Salk can be represented in the directory as
cn: Jonas Salk
Each person entered in the directory can be defined by the collection of attributes
in the
inetOrgperson
include:
givenname: Jonas
surname: Salk
mail: jonass@example.com
commonName
, or cn, attribute is used to store a person’s name. A
object class. Other attributes used to define this entry could
Attribute Syntax
Each attribute has a syntax definition that describes the type of information
provided by the attribute.
Attribute syntax is used by the Directory Server to perform sorting and pattern
matching.
Table 1-1 lists the different syntax methods that can be applied to attributes and
gives an OID and a definition for each syntax method.
Table 1-1Attribute Syntax
Syntax MethodOIDDefinition
Binary1.3.6.1.4.1.1466.115.121.1.5Indicates that values for this attribute are binary.
Boolean1.3.6.1.4.1.1466.115.121.1.7Indicates that this attribute has one of only two
values: True or False.
Chapter 1About Schema17
Schema Definition
Table 1-1Attribute Syntax (Continued)
Syntax MethodOIDDefinition
Country String1.3.6.1.4.1.1466.115.121.1.11Indicates that values for this attribute are limited
to exactly two printable string characters; for
example, US.
DN1.3.6.1.4.1.1466.115.121.1.12Indicates that values for this attribute are DNs.
DirectoryString1.3.6.1.4.1.1466.115.121.1.15Indicates that values for this attribute are not
case sensitive.
GeneralizedTime1.3.6.1.4.1.1466.115.121.1.24Indicates that values for this attribute are
encoded as printable strings. The time zone
must be specified. It is strongly recommended to
use GMT time.
IA5String1.3.6.1.4.1.1466.115.121.1.26Indicates that values for this attribute are case
sensitive.
INTEGER1.3.6.1.4.1.1466.115.121.1.27Indicates that valid values for this attribute are
numbers.
OctetString1.3.6.1.4.1.1466.115.121.1.40Same behavior as binary.
Postal Address1.3.6.1.4.1.1466.115.121.1.41Indicates that values for this attribute are
encoded according to
postal-address = dstring * ("$"
dstring)
where each dstring component is encoded as a
value of type DirectoryString syntax.
Backslashes and dollar characters, if they occur,
are quoted, so that they will not be mistaken for
line delimiters. Many servers limit the postal
address to 6 lines of up to thirty characters. For
example:
1234 Main St.$Anytown, TX 1234$USA
TelephoneNumber1.3.6.1.4.1.1466.115.121.1.50Indicates that values for this attribute are in the
form of telephone numbers. It is recommended
to use telephone numbers in international form.
URI-Indicates that the values for this attribute are in
the form of a URL, introduced by a string such
as http://, https://, ftp://, ldap://,
and ldaps://. The URI has the same behavior
as IA5String. See RFC 2396.
18Red Hat Directory Server Schema Reference • May 2005
Single-Valued and Multi-Valued Attributes
By default, most attributes are multi-valued. This means that an entry can contain
the same attribute with multiple values. For example, cn,
are all attributes that can have more than one value. Attributes that are
single-valued — that is, only one instance of the attribute can be specified — are
noted as such. For example,
uidNumber
can only have one possible value.
Schema Supported by Directory Server
The schema provided with Directory Server is described in a set of files stored in
the serverRoot
You can modify the schema by creating new object classes and attributes. These
modifications are stored in a separate file called
modify the standard files provided with the Directory Server because you incur the
risk of breaking compatibility with other products or of causing interoperability
problems with directory servers from vendors other than Red Hat, Inc.
/slapd-
serverID
/config/schema
directory.
99user.ldif
Schema Supported by Directory Server
tel
, and
objectclass
. You should not
For more information about how the Directory Server stores information and
suggestions for planning directory schema, refer to the Red Hat Directory Server Deployment Guide.
The following tables list the schema files that are provided with Directory Server.
Table 1-2 lists the schema files that are used by the Directory Server. Table 1-3 lists
the schema files that are used by other Red Hat products, and Table 1-4 lists
schema files used by legacy server products.
Table 1-2Schema Files Used by Directory Server
Schema FilenamePurpose
00core.ldifRecommended core schema from the X.500 and LDAP
standards (RFCs) and schema used by the Directory
Server itself.
05rfc2247.ldifSchema from RFC 2247 and related pilot schema
“Using Domains in LDAP/X.500 Distinguished
Names.”
05rfc2927.ldifSchema from RFC 2927 “MIME Directory Profile for
LDAP Schema.”
10rfc2307.ldifSchema from RFC 2307, “An Approach for Using
LDAP as a Network Information Service.”
Chapter 1About Schema19
Schema Supported by Directory Server
Table 1-2Schema Files Used by Directory Server (Continued)
Schema FilenamePurpose
20subscriber.ldifCommon schema elements for Red Hat-Nortel
subscriber interoperability.
25java-object.ldifSchema from RFC 2713, “Schema for Representing
Java(tm) Objects in an LDAP Directory.”
28pilot.ldifSchema from the pilot RFCs, especially RFC 1274, that
are no longer recommended for use in new
deployments.
30ns-common.ldifCommon schema.
50ns-directory.ldifAdditional schema used by Directory Server 4.x.
Table 1-3Schema Files Used by Other Red Hat Products
Schema FilenamesPurpose
50ns-admin.ldifSchema used by Red Hat Administration Server.
50ns-certificate.ldifSchema for Red Hat Certificate Management System.
Table 1-4Schema Files Used by Legacy Products
Schema FilenamesPurpose
50ns-calendar.ldifNetscape Calendar Server schema.
50ns-compass.ldifSchema for the Netscape Compass Server.
50ns-delegated-admin
Schema for Netscape Delegated Administrator.
.ldif
50ns-mail.ldifSchema for Netscape Messaging Server.
50ns-mcd-browser.ldifSchema for Netscape Mission Control Desktop - Browser.
20Red Hat Directory Server Schema Reference • May 2005
Table 1-4Schema Files Used by Legacy Products (Continued)
Schema FilenamesPurpose
50ns-mcd-config.ldifSchema for Netscape Mission Control Desktop -
Configuration.
50ns-mcd-li.ldifSchema for Netscape Mission Control Desktop - Location
Independence.
50ns-mcd-mail.ldifSchema for Netscape Mission Control Desktop - Mail.
50ns-media.ldifSchema for Netscape Media Server.
50ns-mlm.ldifSchema for Netscape Mailing List Manager.
50ns-msg.ldifSchema for Netscape Web Mail.
50ns-netshare.ldifSchema for Netscape Netshare.
50ns-news.ldifSchema for Netscape Collabra Server.
50ns-proxy.ldifSchema for Netscape Proxy Server.
50ns-wcal.ldifSchema for Netscape Web Calendaring.
Object Identifiers (OIDs)
50ns-web.ldifSchema for Netscape Web Server.
51ns-calendar.ldifSchema for Netscape Calendar Server.
Object Identifiers (OIDs)
Object identifiers (OIDs) are assigned to all attributes and object classes to conform
to the LDAP and X.500 standards. An OID is a sequence of integers, typically
written as a dot-separated string. When no OID is specified, the Directory Server
automatically uses ObjectClass_name-oid and attribute_name-oid.
The Netscape base OID is
2.16.840.1.113730
The base OID for the Directory Server is
2.16.840.1.113730.3
All Netscape-defined attributes have the base OID of
2.16.840.1.113370.3.1
All Netscape-defined object classes have the base OID of
2.16.840.1.113730.3.2
Chapter 1About Schema21
Extending Server Schema
For more information about OIDs or to request a prefix for your enterprise, please
go to the Internet Assigned Number Authority (IANA) web site at
http://www.iana.org/
.
Extending Server Schema
The Directory Server schema includes hundreds of object classes and attributes
that can be used to meet most of your requirements. This schema can be extended
with new object classes and attributes that meet evolving requirements for the
directory service in the enterprise.
When adding new attributes to the schema, a new object class should be created
to contain them. Adding a new attribute to an existing object class can
compromise the Directory Server’s compatibility with existing LDAP clients that
rely on the standard LDAP schema and may cause difficulties when upgrading
the server.
For more information about extending server schema, refer to the Red Hat Directory Server Deployment Guide.
Schema Checking
You should run Directory Server with schema checking turned on.
The schema checking capability of Directory Server checks entries when you add
them to the directory or when you modify them, to verify that:
•Object classes and attributes used in the entry are defined in the directory
schema.
•Attributes required for an object class are contained in the entry.
•Only attributes allowed by the object class are contained in the entry.
Schema checking also occurs when importing a database using LDIF. For more
information, refer to the Red Hat Directory Server Administrator’s Guide.
22Red Hat Directory Server Schema Reference • May 2005
Chapter2
Object Class Reference
This chapter contains an alphabetical list of the object classes accepted by the
default schema. It gives a definition of each object class and lists its required and
allowed attributes. The object classes listed in this chapter are available for you to
use to support your own information in the Red Hat Directory Server (Directory
Server). Object classes that are used by the Directory Server for internal operations
are not documented here. For information about these object classes, please refer to
the Red Hat Directory Server Configuration, Command, and File Reference. Replication
and synchronization object classes are listed in chapter 4, “Operational Attributes,
Special Attributes, and Special Object Classes.”
account
The required attributes listed for an object class must be present in the entry when
that object class is added to the
class, both of these object classes with all required attributes must be present in the
entry. If required attributes are not listed in the
restart.
NOTEThe LDAP RFCs and X.500 standards allow for an object class to
have more than one superior. This behavior is not currently
supported by Directory Server.
Definition
Used to define entries representing computer accounts.
This object class is defined in RFC 1274.
ldif
file. If an object class has a superior object
ldif
file, than the server will not
Chapter 2Object Class Reference23
Superior Class
top
OID
0.9.2342.19200300.100.4.5
Required Attributes
objectClassDefines the object classes for the entry.
uid (userID)Identifies the account’s user ID.
Allowed Attributes
descriptionText description of the entry.
hostHostname of the computer on which the account resides.
l (localityName)Place where the account is located.
o (organizationName)Organization to which the account belongs.
ou (organizationalUnitName)Organizational unit to which the account belongs.
alias
seeAlsoURL to information relevant to the account.
Definition
Used to point to other entries in the directory tree.
Note: Aliasing is not supported in Directory Server.
This object class is defined in RFC 2256.
Superior Class
top
OID
2.5.6.1
24Red Hat Directory Server Schema Reference • May 2005
Required Attributes
objectClassDefines the object classes for the entry.
aliasedObjectNameDistinguished name of the entry for which this entry is
cosClassicDefinition
Definition
Identifies the template entry using both the template entry’s DN (as specified in the
cosTemplateDn
specified in the
This object class is defined in Directory Server.
Superior Class
cosSuperDefinition
OID
2.16.840.1.113730.3.2.100
attribute) and the value of one of the target entry’s attributes (as
cosSpecifier
an alias.
attribute).
Required Attributes
objectClassDefines the object classes for the entry.
cosAttributeProvides the name of the attribute for which you want
to generate a value. You can specify more than one
cosAttribute value.
Allowed Attributes
cn (commonName)Common name of the entry.
cosSpecifierSpecifies the attribute value used by a classic CoS,
which, along with the template entry’s DN, identifies
the template entry.
cosTemplateDnProvides the DN of the template entry associated with
the CoS definition.
descriptionText description of the entry.
Chapter 2Object Class Reference25
cosDefinition
Definition
Defines the Class of Services you are using. This object class is supported in order
to provide compatibility with the DS4.1 CoS Plug-in.
This object class is defined in Directory Server.
Superior Class
top
OID
2.16.840.1.113730.3.2.84
Required Attributes
objectClassDefines the object classes for the entry.
Allowed Attributes
aciEvaluates what rights are granted or denied when the
Directory Server receives an LDAP request from a
client.
cn (commonName)Common name of the entry.
cosAttributeProvides the name of the attribute for which you want
to generate a value. You can specify more than one
cosAttribute value.
cosSpecifierSpecifies the attribute value used by a classic CoS,
which, along with the template entry’s DN, identifies
the template entry.
cosTargetTreeDetermines the subtrees of the DIT to which the CoS
schema applies.
cosTemplateDnProvides the DN of the template entry associated with
the CoS definition.
uid (userID)Identifies the user ID.
26Red Hat Directory Server Schema Reference • May 2005
cosIndirectDefinition
Definition
Identifies the template entry using the value of one of the target entry’s attributes.
The attribute of the target entry is specified in the
attribute.
This object class is defined in Directory Server.
Superior Class
cosSuperDefinition
OID
2.16.840.1.113730.3.2.102
Required Attributes
objectClassDefines the object classes for the entry.
cosAttributeProvides the name of the attribute for which you want to
cosIndirectSpecifier
generate a value. You can specify more than one
cosAttribute value.
Allowed Attributes
cn (commonName)Common name of the entry.
cosIndirectSpecifierSpecifies the attribute value used by an indirect CoS to
descriptionText description of the entry.
cosPointerDefinition
Definition
Identifies the template entry associated with the CoS definition using the template
entry’s DN value. The DN of the template entry is specified in the
attribute.
This object class is defined in Directory Server.
identify the template entry.
cosTemplateDn
Chapter 2Object Class Reference27
Superior Class
cosSuperDefinition
OID
2.16.840.1.113730.3.2.101
Required Attributes
objectClassDefines the object classes for the entry.
cosAttributeProvides the name of the attribute for which you want to
generate a value. You can specify more than one
cosAttribute value.
Allowed Attributes
cn (commonName)Common name of the entry.
cosTemplateDnProvides the DN of the template entry associated with
the CoS definition.
descriptionText description of the entry.
cosSuperDefinition
Definition
All CoS definition object classes inherit from the
class.
This object class is defined in Directory Server.
Superior Class
ldapSubEntry
OID
2.16.840.1.113730.3.2.99
Required Attributes
objectClassDefines the object classes for the entry.
28Red Hat Directory Server Schema Reference • May 2005
cosSuperDefinition
object
cosAttributeProvides the name of the attribute for which you want to
Allowed Attributes
cn (commonName)Common name of the entry.
descriptionText description of the entry.
cosTemplate
Definition
Contains a list of the shared attribute values.
This object class is defined in Directory Server.
Superior Class
top
generate a value. You can specify more than one
cosAttribute value.
OID
2.16.840.1.113730.3.2.128
Required Attributes
objectClassDefines the object classes for the entry.
Allowed Attributes
cn (commonName)Common name of the entry.
cosPrioritySpecifies which template provides the attribute
value when CoS templates compete to provide an
attribute value.
Chapter 2Object Class Reference29
country
Definition
Used to define entries that represent countries.
This object class is defined in RFC 2256.
Superior Class
top
OID
2.5.6.2
Required Attributes
objectClassDefines the object classes for the entry.
c (countryName)Contains the two-character code representing country
names, as defined by ISO, in the directory.
dcObject
Allowed Attributes
descriptionText description of the country.
searchGuideSpecifies information for suggested search criteria when
using the entry as the base object in the directory tree for
a search operation.
Definition
Allows domain components to be defined for an entry. This object class is defined
as auxiliary because it is commonly used in combination with another object class,
such as
o (organizationName), ou
(organizationalUnitName), or
l (localityName)
. For
example:
30Red Hat Directory Server Schema Reference • May 2005
Loading...
+ 154 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.