1.5 eDirectory Compliance with LDAP v3

LDAP compliance involves a number of issues. LDAP is a protocol, but its specification also includes a directory schema and methods for extending its functionality through extensions and controls.

1.5.1 Protocol Compliance

The following table compares the protocol features of the newest release of the LDAP server in NDS 8.2x with two previous releases of the LDAP server in NDS 8 version 8.1x and NDS version 7.xx.

Table 1-2 Protocol Compliance

LDAP Feature

eDirectory

NDS eDirectory

NDS 8

NDS

 

Version 8.6[x]

Version 8.5x

Version 8.1x

Version 7.xx

Authentication (anonymous, clear text, SSL, and SASL bind)

Yes, for all but SASL

Yes for all but SASL

Yes for all but SASL

Yes for all but SASL

Entry management (search, modify, compare, rename, adding, deleting)

Yes

Yes

Yes

Yes

Thread support

Yes

Yes

Yes

Yes

LDAP extensions

Yes

Yes

No

No

Readable root DSE

Yes

Yes

Yes

Yes

Referrals and traversals

Yes

Yes

Yes

Traversals—Yes

Referrals—Single Configurable URL

Read and write schema

Yes

Yes

Yes for read schema

No

Auxiliary classes

Yes

Yes

Yes

No

Even though NDS version 7.xx is limited in its LDAP functionality, it complies with the LDAP v3 protocol specification because the LDAP server correctly responds to requests for unsupported features. NDS has increased its support of LDAP with each subsequent release.

For more information on LDAP and eDirectory see the NDK: LDAP and eDirectory Integration Integration Guide.

1.5.2 Schema Compliance

eDirectory and LDAP have had numerous differences in naming conventions, structural rules for containment, leaf versus containment classes, and supported syntaxes. Since NDS version 7.09, each release of NDS/eDirectory has extended its support of the LDAP schema.

For example, NDS and LDAP naming conventions for attribute and class definitions are quite different:

  • NDS allows spaces in its schema definition names, usually capitalizes the initial letter of each word in the name, and supports a number of non-alphanumeric characters such as periods and colons.
  • LDAP does not support spaces in a name and supports only one non-alphanumeric character for schema definition names, the dash (-). By convention, LDAP does not capitalize the initial letter of a name, but in multi-word names, it capitalizes the first letter of subsequent words.

Each release of the LDAP server has made these differences less significant. The first release of the LDAP server mapped the LDAP class and attribute names to their corresponding NDS class and attribute definitions. In NDS 8 version 8.1x, if the schema name is a valid LDAP name, mapping is no longer required. Missing attributes or classes have been added to the NDS schema using LDAP naming conventions, and classes have been modified to include the new LDAP attributes. In NDS 8, the schema supports auxiliary classes, and service packs make the auxiliary class feature compatible with earlier versions of NDS.

1.5.3 Extensions and Controls

eDirectory supports several LDAP extensions and controls, and handles unsupported controls according to the LDAP specifications. To determine supported extensions and controls query the server rootDSE.