rfc-4526

Lightweight Directory Access Protocol (LDAP) Absolute True and False Filters

K. Zeilenga
date2006-06 streamIETF wgnon working group statusPROPOSED STANDARD pages5 canonicalhttps://www.rfc-editor.org/rfc/rfc4526 doi10.17487/RFC4526 errataview
This document extends the Lightweight Directory Access Protocol (LDAP) to support absolute True and False filters based upon similar capabilities found in X.500 directory systems. The document also extends the String Representation of LDAP Search Filters to support these filters. [STANDARDS-TRACK]

Extracted elements (14)

design-rationale §1

Absolute True and False filters were eliminated from LDAPv3 because the LDAPv2 string representation could not represent empty 'and'/'or' filter sets, even though LDAPv2 binary protocol placed no such restriction. This document restores them to enable direct DAP-to-LDAP gateway mapping.

ldap

design-rationale §1

These filters are commonly used when requesting DSA-specific Entries (DSEs) that do not necessarily have 'objectClass' attributes, where "(objectClass=*)" may evaluate to False.

ldap

interoperability-note §1

This feature is intended to allow a more direct mapping between DAP (X.500 Directory Access Protocol) and LDAP, as needed to implement DAP-to-LDAP gateways. X.500 DAP already natively supports these absolute True/False assertions.

ldap

normative-requirement §2 REQUIRED

An 'and' filter consisting of an empty set of filters SHALL evaluate to True. This filter is represented by the string "(&)".

ldap

normative-requirement §2 REQUIRED

An 'or' filter consisting of an empty set of filters SHALL evaluate to False. This filter is represented by the string "(|)".

ldap

normative-requirement §2 SHOULD NOT

Clients supporting this feature SHOULD NOT use the feature unless they know that the server supports it.

ldap

normative-requirement §2 REQUIRED

Implementations of this extension SHALL allow 'and' and 'or' choices with zero filter elements, enabling absolute True and False filters in LDAP search operations.

ldap

normative-requirement §2 SHOULD

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

ldap, registry

protocol-element §2

The absolute False filter is an 'or' filter with zero elements, represented as "(|)". It always evaluates to False regardless of the entry's attributes.

ldap

protocol-element §2

The absolute True filter is an 'and' filter with zero elements, represented as "(&)". It always evaluates to True regardless of the entry's attributes.

ldap

registry §4

IANA registered the LDAP Protocol Mechanism OID 1.3.6.1.4.1.4203.1.5.3 with the description 'True/False filters' for this feature, per RFC 4520.

ldap, registry

security-consideration §3

The (re)introduction of absolute True and False filters is not believed to raise any new security considerations. Implementors should be familiar with general LDAPv3 security considerations per RFC 4510.

ldap, security

wire-format §2

The string representation of the absolute False filter is "(|)" — an 'or' filterlist with an empty set of filters encoded per RFC 4515.

ldap

wire-format §2

The string representation of the absolute True filter is "(&)" — an 'and' filterlist with an empty set of filters encoded per RFC 4515.

ldap