Network Working Group                                        K. Zeilenga
Request for Comments: 3673                           OpenLDAP Foundation
Category: Standards Track                                  December 2003


      Lightweight Directory Access Protocol version 3 (LDAPv3):
                      All Operational Attributes

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.

Abstract

  The Lightweight Directory Access Protocol (LDAP) supports a mechanism
  for requesting the return of all user attributes but not all
  operational attributes.  This document describes an LDAP extension
  which clients may use to request the return of all operational
  attributes.

1.  Overview

  X.500 [X.500] provides a mechanism for clients to request all
  operational attributes be returned with entries provided in response
  to a search operation.  This mechanism is often used by clients to
  discover which operational attributes are present in an entry.

  This documents extends the Lightweight Directory Access Protocol
  (LDAP) [RFC3377] to provide a simple mechanism which clients may use
  to request the return of all operational attributes.  The mechanism
  is designed for use with existing general purpose LDAP clients
  (including web browsers which support LDAP URLs) and existing LDAP
  APIs.

  The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
  "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
  document are to be interpreted as described in BCP 14 [RFC2119].






Zeilenga                    Standards Track                     [Page 1]

RFC 3673           LDAPv3: All Operational Attributes      December 2003


2.  All Operational Attributes

  The presence of the attribute description "+" (ASCII 43) in the list
  of attributes in a Search Request [RFC2251] SHALL signify a request
  for the return of all operational attributes.

  As with all search requests, client implementors should note that
  results may not include all requested attributes due to access
  controls or other restrictions.  Client implementors should also note
  that certain operational attributes may be returned only if requested
  by name even when "+" is present.  This is because some operational
  attributes are very expensive to return.

  Servers supporting this feature SHOULD publish the Object Identifier
  1.3.6.1.4.1.4203.1.5.1 as a value of the 'supportedFeatures'
  [RFC3674] attribute in the root DSE.

3.  Interoperability Considerations

  This mechanism is specifically designed to allow users to request all
  operational attributes using existing LDAP clients.  In particular,
  the mechanism is designed to be compatible with existing general
  purpose LDAP clients including those supporting LDAP URLs [RFC2255].

  The addition of this mechanism to LDAP is not believed to cause any
  significant interoperability issues (this has been confirmed through
  testing).  Servers which have yet to implement this specification
  should ignore the "+" as an unrecognized attribute description per
  [RFC2251, Section 4.5.1].  From the client's perspective, a server
  which does not return all operational attributes when "+" is
  requested should be viewed as having other restrictions.

  It is also noted that this mechanism is believed to require no
  modification of existing LDAP APIs.

4.  Security Considerations

  This document provides a general mechanism which clients may use to
  discover operational attributes.  Prior to the introduction of this
  mechanism, operational attributes were only returned when requested
  by name.  Some might have viewed this as obscurity feature.  However,
  this feature offers a false sense of security as the attributes were
  still transferable.

  Implementations SHOULD implement appropriate access controls
  mechanisms to restricts access to operational attributes.





Zeilenga                    Standards Track                     [Page 2]

RFC 3673           LDAPv3: All Operational Attributes      December 2003


5.  IANA Considerations

  This document uses the OID 1.3.6.1.4.1.4203.1.5.1 to identify the
  feature described above.  This OID was assigned [ASSIGN] by OpenLDAP
  Foundation, under its IANA-assigned private enterprise allocation
  [PRIVATE], for use in this specification.

  Registration of this feature has been completed by IANA [RFC3674],
  [RFC3383].

  Subject: Request for LDAP Protocol Mechanism Registration

  Object Identifier: 1.3.6.1.4.1.4203.1.5.1

  Description: All Op Attrs

  Person & email address to contact for further information:
       Kurt Zeilenga <[email protected]>

  Usage: Feature

  Specification: RFC3673

  Author/Change Controller: IESG

  Comments: none

6.  Acknowledgment

  The "+" mechanism is believed to have been first suggested by Bruce
  Greenblatt in a November 1998 post to the IETF LDAPext Working Group
  mailing list.

7.  Intellectual Property Statement

  The IETF takes no position regarding the validity or scope of any
  intellectual property or other rights that might be claimed to
  pertain to the implementation or use of the technology described in
  this document or the extent to which any license under such rights
  might or might not be available; neither does it represent that it
  has made any effort to identify any such rights.  Information on the
  IETF's procedures with respect to rights in standards-track and
  standards-related documentation can be found in BCP-11.  Copies of
  claims of rights made available for publication and any assurances of
  licenses to be made available, or the result of an attempt made to
  obtain a general license or permission for the use of such
  proprietary rights by implementors or users of this specification can
  be obtained from the IETF Secretariat.



Zeilenga                    Standards Track                     [Page 3]

RFC 3673           LDAPv3: All Operational Attributes      December 2003


  The IETF invites any interested party to bring to its attention any
  copyrights, patents or patent applications, or other proprietary
  rights which may cover technology that may be required to practice
  this standard.  Please address the information to the IETF Executive
  Director.

8.  References

8.1.  Normative References

  [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
             Requirement Levels", BCP 14, RFC 2119, March 1997.

  [RFC2251]  Wahl, M., Howes, T. and S. Kille, "Lightweight Directory
             Access Protocol (v3)", RFC 2251, December 1997.

  [RFC3377]  Hodges, J. and R. Morgan, "Lightweight Directory Access
             Protocol (v3): Technical Specification", RFC 3377,
             September 2002.

  [RFC3674]  Zeilenga, K., "Feature Discovery in Lightweight Directory
             Access Protocol (LDAP)", RFC 3674, December 2003.

8.2.  Informative References

  [RFC2255]  Howes, T. and M. Smith, "The LDAP URL Format", RFC 2255,
             December 1997.

  [RFC3383]  Zeilenga, K., "Internet Assigned Numbers Authority (IANA)
             Considerations for the Lightweight Directory Access
             Protocol (LDAP)", BCP 64, RFC 3383, September 2002.

  [X.500]    ITU-T Rec.  X.500, "The Directory: Overview of Concepts,
             Models and Service", 1993.

  [ASSIGN]   OpenLDAP Foundation, "OpenLDAP OID Delegations",
             http://www.openldap.org/foundation/oid-delegate.txt.

  [PRIVATE]  IANA, "Private Enterprise Numbers",
             http://www.iana.org/assignments/enterprise-numbers.

9.  Author's Address

  Kurt D. Zeilenga
  OpenLDAP Foundation

  EMail: [email protected]




Zeilenga                    Standards Track                     [Page 4]

RFC 3673           LDAPv3: All Operational Attributes      December 2003


10.  Full Copyright Statement

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

  This document and translations of it may be copied and furnished to
  others, and derivative works that comment on or otherwise explain it
  or assist in its implementation may be prepared, copied, published
  and distributed, in whole or in part, without restriction of any
  kind, provided that the above copyright notice and this paragraph are
  included on all such copies and derivative works.  However, this
  document itself may not be modified in any way, such as by removing
  the copyright notice or references to the Internet Society or other
  Internet organizations, except as needed for the purpose of
  developing Internet standards in which case the procedures for
  copyrights defined in the Internet Standards process must be
  followed, or as required to translate it into languages other than
  English.

  The limited permissions granted above are perpetual and will not be
  revoked by the Internet Society or its successors or assignees.

  This document and the information contained herein is provided on an
  "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
  TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
  BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
  HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
  MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Acknowledgement

  Funding for the RFC Editor function is currently provided by the
  Internet Society.



















Zeilenga                    Standards Track                     [Page 5]