22.12.2012 Views

Front cover - IBM Redbooks

Front cover - IBM Redbooks

Front cover - IBM Redbooks

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Define a schema<br />

The directory schema has three main components. They are:<br />

► Object classes: This refers to the type of object being stored. An object may<br />

use multiple object classes providing the classes are not mutually exclusive.<br />

We discussed this type of component in more detail in 8.3.2, “Object classes”<br />

on page 316.<br />

► Attributes: These are the record “fields” of data for an object. For example,<br />

an OrganizationPerson object may have a “Title” attribute value. In this case,<br />

the Title attribute is optional. Attributes can also be mandatory for a given<br />

object class, for example a Person object must have CN (common name) and<br />

SN (surname) attribute values. We discussed this type of component in more<br />

detail in 8.3.3, “Attributes” on page 320.<br />

► Directory Information Tree (DIT): LDAP directory data uses a hierarchical<br />

tree organizational structure. As with any hierarchy, there is at least one root,<br />

with the potential for multiple branches with leaves, also known as end nodes.<br />

Each node in the tree, the root itself, branch points and leaves, is a<br />

Distinguished Name, DN. From the root, you define branches of the tree,<br />

which are either containers (for example, CN=users), or organizational units<br />

(OU=). Note that a single LDAP directory can have multiple roots with<br />

different access lists and tree structures beneath them. The actual feasibility<br />

of this is dependent on the scalability of the LDAP directory. Typically, a<br />

single root is used for all user objects to keep administration as simple as<br />

possible.<br />

Although the DIT is not technically part of the “schema”, the hierarchical tree<br />

structure has a direct relationship to every object's Distinguished Name (DN).<br />

The DN is the fully qualified hierarchical name. For example, a DN might be<br />

“CN=john q public,OU=sales,O=acme,C=us,” or another typical form is<br />

“UID=jsmith4,CN=users,DC=acme,DC=com.” In the first example, the tree<br />

follows a more traditional X.500 structure, with a country “C=US” as the root. The<br />

second example illustrates a root that follows DNS naming conventions with<br />

domain components “DC=acme, DC=com” as the root. DNs must be unique, so<br />

“flatter” trees dictate the use of unique identifiers, such as in the second<br />

example, where the UID (user ID) is used instead of the CN (common name).<br />

Generally, our experience has been that flatter trees, despite the burden of<br />

needing methods to generate unique identifiers or names, are ultimately easier<br />

to administer. But there is a trade-off in large organizations (over 10,000 users).<br />

A flat tree structure in a large organization requires a non-intuitive user naming<br />

scheme that often forces the use of additional identifying attributes. For example,<br />

consider if there are two unique users such as the following:<br />

DN= uid=bhinkle,cn=users,dc=acme,dc=com<br />

cn=Brendan C Hinkle<br />

mail=b_c_hinkle@acme.com<br />

Chapter 8. Directory strategies 345

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!