Feature Discovery in Lightweight Directory Access Protocol (LDAP)
RFC 3674

Document Type RFC - Proposed Standard (December 2003; No errata)
Obsoleted by RFC 4512
Was draft-zeilenga-ldap-features (individual in app area)
Author Kurt Zeilenga 
Last updated 2018-07-18
Stream IETF
Formats plain text html pdf htmlized bibtex
Stream WG state (None)
Document shepherd No shepherd assigned
IESG IESG state RFC 3674 (Proposed Standard)
Action Holders
Consensus Boilerplate Unknown
Telechat date
Responsible AD Ted Hardie
Send notices to (None)
Network Working Group                                        K. Zeilenga
Request for Comments: 3674                           OpenLDAP Foundation
Category: Standards Track                                  December 2003

   Feature Discovery in Lightweight Directory Access Protocol (LDAP)

Status of this Memo

   This document specifies an Internet standards track protocol for the
   Internet community, and requests discussion and suggestions for
   improvements.  Please refer to the current edition of the "Internet
   Official Protocol Standards" (STD 1) for the standardization state
   and status of this protocol.  Distribution of this memo is unlimited.

Copyright Notice

   Copyright (C) The Internet Society (2003).  All Rights Reserved.


   The Lightweight Directory Access Protocol (LDAP) is an extensible
   protocol with numerous elective features.  This document introduces a
   general mechanism for discovery of elective features and extensions
   which cannot be discovered using existing mechanisms.

1.  Background and Intended Use

   The Lightweight Directory Access Protocol (LDAP) [RFC3377] is an
   extensible protocol with numerous elective features.  LDAP provides
   mechanisms for a client to discover supported protocol versions,
   controls, extended operations, Simple Authentication and Security
   Layer (SASL) mechanisms, and subschema information.  However, these
   mechanisms are not designed to support general feature discovery.

   This document describes a simple, general-purpose mechanism which
   clients may use to discover the set of elective features supported by
   a server.  For example, this mechanism could be used by a client to
   discover whether or not the server supports requests for all
   operational attributes, e.g., "+" [RFC3673].  As another example,
   this mechanism could be used to discover absolute true, e.g., "(&)"
   and false, e.g., "(|)", search filters [T-F] support.

   This document extends the LDAP Protocol Mechanism registry [RFC3383]
   to support registration of values of the supportedFeatures attribute.
   This registry is managed by the Internet Assigned Numbers Authority

Zeilenga                    Standards Track                     [Page 1]
RFC 3674               Feature Discovery in LDAP           December 2003

   Schema definitions are provided using LDAP description formats
   [RFC2252].  Definitions provided here are formatted (line wrapped)
   for readability.

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   document are to be interpreted as described in BCP 14 [RFC2119].

2.  Discovery of supported features

   Each elective feature whose support may be discovered SHALL be
   identified by an Object Identifier (OID).  A server advertises its
   support for a given feature by providing the OID associated with the
   feature as a value of the 'supportedFeatures' attribute held in the
   root DSE.  A client may examine the values of this attribute to
   determine if a particular feature is supported by the server.  A
   client MUST ignore values it doesn't recognize as they refer to
   elective features it doesn't implement.

   Features associated with Standard Track protocol mechanisms MUST be
   registered.  Features associated with other protocol mechanisms
   SHOULD be registered.  Procedures for registering protocol mechanisms
   are described in BCP 64 [RFC3383].  The word "Feature" should be
   placed in the usage field of the submitted LDAP Protocol Mechanism

   The 'supportedFeatures' attribute type is described as follows:

        NAME 'supportedFeatures'
        DESC 'features supported by the server'
        EQUALITY objectIdentifierMatch
        USAGE dSAOperation )

   Servers MUST be capable of recognizing this attribute type by the
   name 'supportedFeatures'.  Servers MAY recognize the attribute type
   by other names.

3.  Security Considerations

   As rogue clients can discover features of a server by other means
   (such as by trial and error), this feature discovery mechanism is not
   believed to introduce any new security risk to LDAP.

Zeilenga                    Standards Track                     [Page 2]
RFC 3674               Feature Discovery in LDAP           December 2003

4.  IANA Considerations

4.1.  Registration of Features as Protocol Mechanisms

   Future specifications detailing LDAP features are to register each
   feature as a LDAP Protocol Mechanism per guidance given in BCP 64
   [RFC3383].  A usage of "Feature" in a Protocol Mechanism registration
   template indicates that the value to be registered is associated with
   an LDAP feature.

4.2.  Registration of the supportedFeatures descriptor

   The IANA has registered the LDAP 'supportedFeatures' descriptor.  The
   following registration template is suggested:
Show full document text