mail us  |  mail this page

contact us
training  | 
tech stuff  | 

Appendix A - LDAP: ObjectClass Hierarchy Definitions

Many documents insist that LDIF files that describe a DIT and its entries define the whole ObjectClass hierarchy as in the LDIF fragment below:

dn:cn=Jim Bob,ou=people,dc=example,dc=com
objectclass: top
objectclass: person
objectclass: organizationalPerson
objectclass: inetOrgPerson
cn: Jim Bob
sn: Bob
mail: jimbob@example.com
ou: sales
....

The objectclass definition includes any objectclass hierarchy (its SUPerior objectcClass). All the schemas, which contain ALL the objectclasses in the hierarchy, must be visible to the LDAP server (in OpenLDAP using the include directives of slapd.conf). The LDAP server can, in theory, figure the hierarchy stuff out itself and certainly a lot faster that you can type it. The above definition can also confuse by apparently having more than one STRUCTURAL Objectclass in an entry - see additional notes on ObjectClass Inheritance.

In practice OpenLDAP 2.x+ version can process the objectclass hierarchy so either the LDIF above or the following LDIF fragment works perfectly including being able to access both objectclasses and attributes that are contained in the SUPerior hierarchy, for instance you can access street which is an attribute of organizationalPerson:

dn:cn=Jim Bob,ou=people,dc=example,dc=com
objectclass: inetOrgPerson
cn: Jim Bob
sn: Bob
mail: jimbob@example.com
ou: sales
....

Caution: If you export the above definition from OpenLDAP it will return precisely what you defined in the original LDIF that created the entries. Not all LDAP servers will process the object hierarchy automatically. If you then try to load this exported LDIF into a non-hierarchy processing LDAP server it may not produce the desired results. If you use only LDAP severs that support hierarchical processing (for example only OpenLDAP) then you can save some typing, else...



Problems, comments, suggestions, corrections (including broken links) or something to add? Please take the time from a busy life to 'mail us' (at top of screen), the webmaster (below) or info-support at zytrax. You will have a warm inner glow for the rest of the day.

Contents

tech info
guides home
intro
contents
1 objectives
big picture
2 concepts
3 ldap objects
quickstart
4 install ldap
5 samples
6 configuration
7 replica & refer
reference
8 ldif
9 protocol
10 ldap api
operations
11 howtos
12 trouble
13 performance
14 ldap tools
security
15 security
appendices
notes & info
ldap resources
rfc's & x.500
glossary
ldap objects
change log

Creative Commons License
This work is licensed under a Creative Commons License.

If you are happy it's OK - but your browser is giving a less than optimal experience on our site. You could, at no charge, upgrade to a W3C STANDARDS COMPLIANT browser such as Firefox

Search

web zytrax.com

Share

share page via facebook tweet this page

Page

email us Send to a friend feature print this page Decrease font size Increase font size Display full width page

Resources

Systems

FreeBSD
NetBSD
OpenBSD
DragonFlyBSD
Linux.org
Debian Linux

Software

LibreOffice
OpenOffice
Mozilla
GitHub
GNU-Free SW Foundation
get-dns

Organizations

Open Source Initiative
Creative Commons

Misc.

Ibiblio - Library
Open Book Project
Open Directory
Wikipedia

Site

CSS Technology SPF Record Conformant Domain
Copyright © 1994 - 2017 ZyTrax, Inc.
All rights reserved. Legal and Privacy
site by zytrax
Hosted by super.net.sg
web-master at zytrax
Page modified: October 21 2015.