mirror of
https://git.openldap.org/openldap/openldap.git
synced 2024-12-27 03:20:22 +08:00
676 lines
24 KiB
Plaintext
676 lines
24 KiB
Plaintext
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Network Working Group D. Chadwick
|
|||
|
Request for Comments: 3876 University of Salford
|
|||
|
Category: Standards Track S. Mullan
|
|||
|
Sun Microsystems
|
|||
|
September 2004
|
|||
|
|
|||
|
|
|||
|
Returning Matched Values with the
|
|||
|
Lightweight Directory Access Protocol version 3 (LDAPv3)
|
|||
|
|
|||
|
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 (2004).
|
|||
|
|
|||
|
Abstract
|
|||
|
|
|||
|
This document describes a control for the Lightweight Directory
|
|||
|
Access Protocol version 3 that is used to return a subset of
|
|||
|
attribute values from an entry. Specifically, only those values that
|
|||
|
match a "values return" filter. Without support for this control, a
|
|||
|
client must retrieve all of an attribute's values and search for
|
|||
|
specific values locally.
|
|||
|
|
|||
|
1. Introduction
|
|||
|
|
|||
|
When reading an attribute from an entry using the Lightweight
|
|||
|
Directory Access Protocol version 3 (LDAPv3) [2], it is normally only
|
|||
|
possible to read either the attribute type, or the attribute type and
|
|||
|
all its values. It is not possible to selectively read just a few of
|
|||
|
the attribute values. If an attribute holds many values, for
|
|||
|
example, the userCertificate attribute, or the subschema publishing
|
|||
|
operational attributes objectClasses and attributeTypes [3], then it
|
|||
|
may be desirable for the user to be able to selectively retrieve a
|
|||
|
subset of the values, specifically, those attribute values that match
|
|||
|
some user defined selection criteria. Without the control specified
|
|||
|
in this document, a client must read all of the attribute's values
|
|||
|
and filter out the unwanted values, necessitating the client to
|
|||
|
implement the matching rules. It also requires the client to
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Chadwick & Mullan Standards Track [Page 1]
|
|||
|
|
|||
|
RFC 3876 Returning Matched Values with LDAPv3 September 2004
|
|||
|
|
|||
|
|
|||
|
potentially read and process many irrelevant values, which can be
|
|||
|
inefficient if the values are large or complex, or there are many
|
|||
|
values stored per attribute.
|
|||
|
|
|||
|
This document specifies an LDAPv3 control to enable a user to return
|
|||
|
only those values that matched (i.e., returned TRUE to) one or more
|
|||
|
elements of a newly defined "values return" filter. This control can
|
|||
|
be especially useful when used in conjunction with extensible
|
|||
|
matching rules that match on one or more components of complex binary
|
|||
|
attribute values.
|
|||
|
|
|||
|
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, RFC 2119 [4].
|
|||
|
|
|||
|
2. The valuesReturnFilter Control
|
|||
|
|
|||
|
The valuesReturnFilter control is either critical or non-critical as
|
|||
|
determined by the user. It only has meaning for the Search
|
|||
|
operation, and SHOULD only be added to the Search operation by the
|
|||
|
client. If the server supports the control and it is present on a
|
|||
|
Search operation, the server MUST obey the control, regardless of the
|
|||
|
value of the criticality flag.
|
|||
|
|
|||
|
If the control is marked as critical, and either the server does not
|
|||
|
support the control or the control is applied to an operation other
|
|||
|
than Search, the server MUST return an unavailableCriticalExtension
|
|||
|
error. If the control is not marked as critical, and either the
|
|||
|
server does not support the control or the control is applied to an
|
|||
|
operation other than Search, then the server MUST ignore the control.
|
|||
|
|
|||
|
The object identifier for this control is 1.2.826.0.1.3344810.2.3.
|
|||
|
|
|||
|
The controlValue is an OCTET STRING, whose value is the BER encoding
|
|||
|
[6], as per Section 5.1 of RFC 2251 [2], of a value of the ASN.1 [5]
|
|||
|
type ValuesReturnFilter.
|
|||
|
|
|||
|
ValuesReturnFilter ::= SEQUENCE OF SimpleFilterItem
|
|||
|
|
|||
|
SimpleFilterItem ::= CHOICE {
|
|||
|
equalityMatch [3] AttributeValueAssertion,
|
|||
|
substrings [4] SubstringFilter,
|
|||
|
greaterOrEqual [5] AttributeValueAssertion,
|
|||
|
lessOrEqual [6] AttributeValueAssertion,
|
|||
|
present [7] AttributeDescription,
|
|||
|
approxMatch [8] AttributeValueAssertion,
|
|||
|
extensibleMatch [9] SimpleMatchingAssertion }
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Chadwick & Mullan Standards Track [Page 2]
|
|||
|
|
|||
|
RFC 3876 Returning Matched Values with LDAPv3 September 2004
|
|||
|
|
|||
|
|
|||
|
SimpleMatchingAssertion ::= SEQUENCE {
|
|||
|
matchingRule [1] MatchingRuleId OPTIONAL,
|
|||
|
type [2] AttributeDescription OPTIONAL,
|
|||
|
--- at least one of the above must be present
|
|||
|
matchValue [3] AssertionValue}
|
|||
|
|
|||
|
All the above data types have their standard meanings as defined in
|
|||
|
[2].
|
|||
|
|
|||
|
If the server supports this control, the server MUST make use of the
|
|||
|
control as follows:
|
|||
|
|
|||
|
1) The Search Filter is first executed in order to determine which
|
|||
|
entries satisfy the Search criteria (these are the filtered
|
|||
|
entries). The control has no impact on this step.
|
|||
|
|
|||
|
2) If the typesOnly parameter of the Search Request is TRUE, the
|
|||
|
control has no effect and the Search Request is processed as if
|
|||
|
the control had not been specified.
|
|||
|
|
|||
|
3) If the attributes parameter of the Search Request consists of a
|
|||
|
list containing only the attribute with OID "1.1" (specifying that
|
|||
|
no attributes are to be returned), the control has no effect and
|
|||
|
the Search Request is processed as if the control had not been
|
|||
|
specified.
|
|||
|
|
|||
|
4) For each attribute listed in the attributes parameter of the
|
|||
|
Search Request, the server MUST apply the control as follows to
|
|||
|
each entry in the set of filtered entries:
|
|||
|
|
|||
|
i) Every attribute value that evaluates TRUE against one or more
|
|||
|
elements of the ValuesReturnFilter is placed in the
|
|||
|
corresponding SearchResultEntry.
|
|||
|
|
|||
|
ii) Every attribute value that evaluates FALSE or undefined
|
|||
|
against all elements of the ValuesReturnFilter is not placed
|
|||
|
in the corresponding SearchResultEntry. An attribute that has
|
|||
|
no values selected is returned with an empty set of values.
|
|||
|
|
|||
|
Note. If the AttributeDescriptionList (see [2]) is empty or
|
|||
|
comprises "*", then the control MUST be applied against every user
|
|||
|
attribute. If the AttributeDescriptionList contains a "+", then the
|
|||
|
control MUST be applied against every operational attribute.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Chadwick & Mullan Standards Track [Page 3]
|
|||
|
|
|||
|
RFC 3876 Returning Matched Values with LDAPv3 September 2004
|
|||
|
|
|||
|
|
|||
|
3. Relationship to X.500
|
|||
|
|
|||
|
The control is a superset of the matchedValuesOnly (MVO) boolean of
|
|||
|
the X.500 Directory Access Protocol (DAP) [8] Search argument, as
|
|||
|
amended in the latest version [9]. Close examination of the
|
|||
|
matchedValuesOnly boolean by the LDAP Extensions (LDAPEXT) Working
|
|||
|
Group revealed ambiguities and complexities in the MVO boolean that
|
|||
|
could not easily be resolved. For example, it was not clear if the
|
|||
|
MVO boolean governed only those attribute values that contributed to
|
|||
|
the overall truth of the filter, or all of the attribute values, even
|
|||
|
if the filter item containing the attribute was evaluated as false.
|
|||
|
For this reason the LDAPEXT group decided to replace the MVO boolean
|
|||
|
with a simple filter that removes any uncertainty as to whether an
|
|||
|
attribute value has been selected or not.
|
|||
|
|
|||
|
4. Relationship to other LDAP Controls
|
|||
|
|
|||
|
The purpose of this control is to select zero, one, or more attribute
|
|||
|
values from each requested attribute in a filtered entry, and to
|
|||
|
discard the remainder. Once the attribute values have been discarded
|
|||
|
by this control, they MUST NOT be re-instated into the Search results
|
|||
|
by other controls.
|
|||
|
|
|||
|
This control acts independently of other LDAP controls such as server
|
|||
|
side sorting [13] and duplicate entries [10]. However, there might
|
|||
|
be interactions between this control and other controls so that a
|
|||
|
different set of Search Result Entries are returned, or the entries
|
|||
|
are returned in a different order, depending upon the sequencing of
|
|||
|
this control and other controls in the LDAP request. For example,
|
|||
|
with server side sorting, if sorting is done first, and value return
|
|||
|
filtering second, the set of Search Results may appear to be in the
|
|||
|
wrong order since the value filtering may remove the attribute values
|
|||
|
upon which the ordering was done. (The sorting document specifies
|
|||
|
that entries without any sort key attribute values should be treated
|
|||
|
as coming after all other attribute values.) Similarly with
|
|||
|
duplicate entries, if duplication is performed before value
|
|||
|
filtering, the set of Search Result Entries may contain identical
|
|||
|
duplicate entries, each with an empty set of attribute values,
|
|||
|
because the value filtering removed the attribute values that were
|
|||
|
used to duplicate the results.
|
|||
|
|
|||
|
For these reasons, the ValuesReturnFilter control in a SearchRequest
|
|||
|
SHOULD precede other controls that affect the number and ordering of
|
|||
|
SearchResultEntrys.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Chadwick & Mullan Standards Track [Page 4]
|
|||
|
|
|||
|
RFC 3876 Returning Matched Values with LDAPv3 September 2004
|
|||
|
|
|||
|
|
|||
|
5. Examples
|
|||
|
|
|||
|
All entries are provided in an LDAP Data Interchange Format
|
|||
|
(LDIF)[11].
|
|||
|
|
|||
|
The string representation of the valuesReturnFilter in the examples
|
|||
|
below uses the following ABNF [15] notation:
|
|||
|
|
|||
|
valuesReturnFilter = "(" 1*simpleFilterItem ")"
|
|||
|
simpleFilterItem = "(" item ")"
|
|||
|
|
|||
|
where item is as defined below (adapted from RFC2254 [14]).
|
|||
|
|
|||
|
item = simple / present / substring / extensible
|
|||
|
simple = attr filtertype value
|
|||
|
filtertype = equal / approx / greater / less
|
|||
|
equal = "="
|
|||
|
approx = "~="
|
|||
|
greater = ">="
|
|||
|
less = "<="
|
|||
|
extensible = attr [":" matchingrule] ":=" value
|
|||
|
/ ":" matchingrule ":=" value
|
|||
|
present = attr "=*"
|
|||
|
substring = attr "=" [initial] any [final]
|
|||
|
initial = value
|
|||
|
any = "*" *(value "*")
|
|||
|
final = value
|
|||
|
attr = AttributeDescription from Section 4.1.5 of [1]
|
|||
|
matchingrule = MatchingRuleId from Section 4.1.9 of [1]
|
|||
|
value = AttributeValue from Section 4.1.6 of [1]
|
|||
|
|
|||
|
1) The first example shows how the control can be set to return all
|
|||
|
attribute values from one attribute type (e.g., telephoneNumber)
|
|||
|
and a subset of values from another attribute type (e.g., mail).
|
|||
|
|
|||
|
The entries below represent organizationalPerson object classes
|
|||
|
located somewhere beneath the distinguished name dc=ac,dc=uk.
|
|||
|
|
|||
|
dn: cn=Sean Mullan,ou=people,dc=sun,dc=ac,dc=uk
|
|||
|
cn: Sean Mullan
|
|||
|
sn: Mullan
|
|||
|
objectClass: organizationalPerson
|
|||
|
objectClass: person
|
|||
|
objectClass: inetOrgPerson
|
|||
|
mail: sean.mullan@hotmail.com
|
|||
|
mail: mullan@east.sun.com
|
|||
|
telephoneNumber: + 781 442 0926
|
|||
|
telephoneNumber: 555-9999
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Chadwick & Mullan Standards Track [Page 5]
|
|||
|
|
|||
|
RFC 3876 Returning Matched Values with LDAPv3 September 2004
|
|||
|
|
|||
|
|
|||
|
dn: cn=David Chadwick,ou=isi,o=salford,dc=ac,dc=uk
|
|||
|
cn: David Chadwick
|
|||
|
sn: Chadwick
|
|||
|
objectClass: organizationalPerson
|
|||
|
objectClass: person
|
|||
|
objectClass: inetOrgPerson
|
|||
|
mail: d.w.chadwick@salford.ac.uk
|
|||
|
|
|||
|
An LDAP search operation is specified with a baseObject set to the DN
|
|||
|
of the search base (i.e., dc=ac,dc=uk), a subtree scope, a filter set
|
|||
|
to (sn=mullan), and the list of attributes to be returned set to
|
|||
|
"mail,telephoneNumber" or "*". In addition, a ValuesReturnFilter
|
|||
|
control is set to ((mail=*hotmail.com)(telephoneNumber=*)).
|
|||
|
|
|||
|
The search results returned by the server would consist of the
|
|||
|
following entry:
|
|||
|
|
|||
|
dn: cn=Sean Mullan,ou=people,dc=sun,dc=ac,dc=uk
|
|||
|
mail: sean.mullan@hotmail.com
|
|||
|
telephoneNumber: + 781 442 0926
|
|||
|
telephoneNumber: 555-9999
|
|||
|
|
|||
|
Note that the control has no effect on the values returned for the
|
|||
|
"telephoneNumber" attribute (all of the values are returned), since
|
|||
|
the control specified that all values should be returned.
|
|||
|
|
|||
|
2) The second example shows how one might retrieve a single attribute
|
|||
|
type subschema definition for the "gunk" attribute with OID
|
|||
|
1.2.3.4.5 from the subschema subentry.
|
|||
|
|
|||
|
Assume the subschema subentry is held below the root entry with DN
|
|||
|
cn=subschema subentry,o=myorg and this holds an attributeTypes
|
|||
|
operational attribute holding the descriptions of the 35 attributes
|
|||
|
known to this server (each description is held as a single attribute
|
|||
|
value of the attributeTypes attribute).
|
|||
|
|
|||
|
dn: cn=subschema subentry,o=myorg
|
|||
|
cn: subschema subentry
|
|||
|
objectClass: subschema
|
|||
|
attributeTypes: ( 2.5.4.3 NAME 'cn' SUP name )
|
|||
|
attributeTypes: ( 2.5.4.6 NAME 'c' SUP name SINGLE-VALUE )
|
|||
|
attributeTypes: ( 2.5.4.0 NAME 'objectClass' EQUALITY obj
|
|||
|
ectIdentifierMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.38 )
|
|||
|
attributeTypes: ( 2.5.18.2 NAME 'modifyTimestamp' EQUALITY gen
|
|||
|
eralizedTimeMatch ORDERING generalizedTimeOrderingMatch SYN
|
|||
|
TAX 1.3.6.1.4.1.1466.115.121.1.24 SINGLE-VALUE NO-USER-
|
|||
|
MODIFICATION USAGE directoryOperation )
|
|||
|
attributeTypes: ( 2.5.21.6 NAME 'objectClasses' EQUALITY obj
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Chadwick & Mullan Standards Track [Page 6]
|
|||
|
|
|||
|
RFC 3876 Returning Matched Values with LDAPv3 September 2004
|
|||
|
|
|||
|
|
|||
|
ectIdentifierFirstComponentMatch SYNTAX 1.3.
|
|||
|
6.1.4.1.1466.115.121.1.37 USAGE directoryOperation )
|
|||
|
attributeTypes: ( 1.2.3.4.5 NAME 'gunk' EQUALITY caseIgnoreMat
|
|||
|
ch SUBSTR caseIgnoreSubstringsMatch SYNTAX 1.3.
|
|||
|
6.1.4.1.1466.115.121.1.44{64} )
|
|||
|
attributeTypes: ( 2.5.21.5 NAME 'attributeTypes' EQUALITY obj
|
|||
|
ectIdentifierFirstComponentMatch SYNTAX 1.3.
|
|||
|
6.1.4.1.1466.115.121.1.3 USAGE directoryOperation )
|
|||
|
|
|||
|
plus another 28 - you get the idea.
|
|||
|
|
|||
|
The user creates an LDAP search operation with a baseObject set to
|
|||
|
cn=subschema subentry,o=myorg, a scope of base, a filter set to
|
|||
|
(objectClass=subschema), the list of attributes to be returned set to
|
|||
|
"attributeTypes", and the ValuesReturnFilter set to
|
|||
|
((attributeTypes=1.2.3.4.5))
|
|||
|
|
|||
|
The search result returned by the server would consist of the
|
|||
|
following entry:
|
|||
|
|
|||
|
dn: cn=subschema subentry,o=myorg
|
|||
|
attributeTypes: ( 1.2.3.4.5 NAME 'gunk' EQUALITY caseIgnoreMat
|
|||
|
ch SUBSTR caseIgnoreSubstringsMatch SYNTAX 1.3.
|
|||
|
6.1.4.1.1466.115.121.1.44{64} )
|
|||
|
|
|||
|
3) The final example shows how the control can be used to match on a
|
|||
|
userCertificate attribute value. Note that this example requires
|
|||
|
the LDAP server to support the certificateExactMatch matching rule
|
|||
|
defined in [12] as the EQUALITY matching rule for userCertificate.
|
|||
|
|
|||
|
The entry below represents a pkiUser object class stored in the
|
|||
|
directory.
|
|||
|
|
|||
|
dn: cn=David Chadwick,ou=people,o=University of Salford,c=gb
|
|||
|
cn: David Chadwick
|
|||
|
objectClass: person
|
|||
|
objectClass: organizationalPerson
|
|||
|
objectClass: pkiUser
|
|||
|
objectClass: inetOrgPerson
|
|||
|
sn: Chadwick
|
|||
|
mail: d.w.chadwick@salford.ac.uk
|
|||
|
userCertificate;binary: {binary representation of a certificate with
|
|||
|
a serial number of 2468 issued by o=truetrust ltd,c=gb}
|
|||
|
userCertificate;binary: {binary representation of certificate with a
|
|||
|
serial number of 1357 issued by o=truetrust ltd,c=gb}
|
|||
|
userCertificate;binary: {binary representation of certificate with a
|
|||
|
serial number of 1234 issued by dc=certsRus,dc=com}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Chadwick & Mullan Standards Track [Page 7]
|
|||
|
|
|||
|
RFC 3876 Returning Matched Values with LDAPv3 September 2004
|
|||
|
|
|||
|
|
|||
|
An LDAP search operation is specified with a baseObject set to
|
|||
|
o=University of Salford,c=gb, a subtree scope, a filter set to
|
|||
|
(sn=chadwick), and the list of attributes to be returned set to
|
|||
|
"userCertificate;binary". In addition, a ValuesReturnFilter control
|
|||
|
is set to ((userCertificate=1357$o=truetrust ltd,c=gb)).
|
|||
|
|
|||
|
The search result returned by the server would consist of the
|
|||
|
following entry:
|
|||
|
|
|||
|
dn: cn=David Chadwick,ou=people,o=University of Salford,c=gb
|
|||
|
userCertificate;binary: {binary representation of certificate with a
|
|||
|
serial number of 1357 issued by o=truetrust ltd,c=gb}
|
|||
|
|
|||
|
6. Security Considerations
|
|||
|
|
|||
|
This document does not primarily discuss security issues.
|
|||
|
|
|||
|
Note however that attribute values MUST only be returned if the
|
|||
|
access controls applied by the LDAP server allow them to be returned,
|
|||
|
and in this respect the effect of the ValuesReturnFilter control is
|
|||
|
of no consequence.
|
|||
|
|
|||
|
Note that the ValuesReturnFilter control may have a positive effect
|
|||
|
on the deployment of public key infrastructures. Certain PKI
|
|||
|
operations, like searching for specific certificates, become more
|
|||
|
scalable, and more practical when combined with X.509 certificate
|
|||
|
matching rules at the server, since the control avoids the
|
|||
|
downloading of potentially large numbers of irrelevant certificates
|
|||
|
which would have to be processed and filtered locally (which in some
|
|||
|
cases is very difficult to perform).
|
|||
|
|
|||
|
7. IANA Considerations
|
|||
|
|
|||
|
The Matched Values control as an LDAP Protocol Mechanism [7] has been
|
|||
|
registered as follows:
|
|||
|
|
|||
|
Subject: Request for LDAP Protocol Mechanism Registration
|
|||
|
|
|||
|
Object Identifier: 1.2.826.0.1.3344810.2.3
|
|||
|
Description: Matched Values Control
|
|||
|
Person & email address to contact for further information:
|
|||
|
David Chadwick <d.w.chadwick@salford.ac.uk>
|
|||
|
Usage: Control
|
|||
|
Specification: RFC3876
|
|||
|
Author/Change Controller: IESG
|
|||
|
Comments: none
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Chadwick & Mullan Standards Track [Page 8]
|
|||
|
|
|||
|
RFC 3876 Returning Matched Values with LDAPv3 September 2004
|
|||
|
|
|||
|
|
|||
|
This document uses the OID 1.2.826.0.1.3344810.2.3 to identify the
|
|||
|
matchedValues control described here. This OID was assigned by
|
|||
|
TrueTrust Ltd, under its BSI assigned English/Welsh Registered
|
|||
|
Company number [16].
|
|||
|
|
|||
|
8. Acknowledgements
|
|||
|
|
|||
|
The authors would like to thank members of the LDAPExt list for their
|
|||
|
constructive comments on earlier versions of this document, and in
|
|||
|
particular to Harald Alvestrand who first suggested having an
|
|||
|
attribute return filter and Bruce Greenblatt who first proposed a
|
|||
|
syntax for this control.
|
|||
|
|
|||
|
9. References
|
|||
|
|
|||
|
9.1. Normative References
|
|||
|
|
|||
|
[1] Bradner, S., "The Internet Standards Process -- Revision 3", BCP
|
|||
|
9, RFC 2026, October 1996.
|
|||
|
|
|||
|
[2] Wahl, M., Howes, T., and S. Kille, "Lightweight Directory Access
|
|||
|
Protocol (w3)", RFC 2251, December 1997.
|
|||
|
|
|||
|
[3] Wahl, M., Coulbeck, A., Howes, T., and S. Kille, "Lightweight
|
|||
|
Directory Access Protocol (v3): Attribute Syntax Definitions",
|
|||
|
RFC 2252, December 1997.
|
|||
|
|
|||
|
[4] Bradner, S., "Key words for use in RFCs to Indicate Requirement
|
|||
|
Levels", BCP 14, RFC 2119, March 1997.
|
|||
|
|
|||
|
[5] ITU-T Recommendation X.680 (1997) | ISO/IEC 8824-1:1998,
|
|||
|
Information Technology - Abstract Syntax Notation One (ASN.1):
|
|||
|
Specification of Basic Notation
|
|||
|
|
|||
|
[6] ITU-T Recommendation X.690 (1997) | ISO/IEC 8825-1,2,3:1998
|
|||
|
Information technology - ASN.1 encoding rules: Specification of
|
|||
|
Basic Encoding Rules (BER), Canonical Encoding Rules (CER) and
|
|||
|
Distinguished Encoding Rules (DER)
|
|||
|
|
|||
|
[7] Zeilenga, K., "Internet Assigned Numbers Authority (IANA)
|
|||
|
Considerations for the Lightweight Directory Access Protocol
|
|||
|
(LDAP)", BCP 64, RFC 3383, September 2002.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Chadwick & Mullan Standards Track [Page 9]
|
|||
|
|
|||
|
RFC 3876 Returning Matched Values with LDAPv3 September 2004
|
|||
|
|
|||
|
|
|||
|
9.2. Informative References
|
|||
|
|
|||
|
[8] ITU-T Rec. X.511, "The Directory: Abstract Service Definition",
|
|||
|
1993.
|
|||
|
|
|||
|
[9] ISO/IEC 9594 / ITU-T Rec X.511 (2001) The Directory: Abstract
|
|||
|
Service Definition.
|
|||
|
|
|||
|
[10] Sermersheim, J., "LDAP Control for a Duplicate Entry
|
|||
|
Representation of Search Results", Work in Progress, October
|
|||
|
2000.
|
|||
|
|
|||
|
[11] Good, G., "The LDAP Data Interchange Format (LDIF) - Technical
|
|||
|
Specification", RFC 2849, June 2000.
|
|||
|
|
|||
|
[12] Chadwick, D. and S.Legg, "Internet X.509 Public Key
|
|||
|
Infrastructure - Additional LDAP Schema for PKIs", Work in
|
|||
|
Progress, June 2002
|
|||
|
|
|||
|
[13] Howes, T., Wahl, M., and A. Anantha, "LDAP Control Extension for
|
|||
|
Server Side Sorting of Search Results", RFC 2891, August 2000.
|
|||
|
|
|||
|
[14] Howes, T., "The String Representation of LDAP Search Filters",
|
|||
|
RFC 2254, December 1997.
|
|||
|
|
|||
|
[15] Crocker, D. and P. Overell, "Augmented BNF for Syntax
|
|||
|
Specifications: ABNF", RFC 2234, November 1997.
|
|||
|
|
|||
|
[16] BRITISH STANDARD BS 7453 Part 1. Procedures for UK Registration
|
|||
|
for Open System Standards Part 1: Procedures for the UK Name
|
|||
|
Registration Authority.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Chadwick & Mullan Standards Track [Page 10]
|
|||
|
|
|||
|
RFC 3876 Returning Matched Values with LDAPv3 September 2004
|
|||
|
|
|||
|
|
|||
|
10. Authors' Addresses
|
|||
|
|
|||
|
David Chadwick
|
|||
|
IS Institute
|
|||
|
University of Salford
|
|||
|
Salford M5 4WT
|
|||
|
England
|
|||
|
|
|||
|
Phone: +44 161 295 5351
|
|||
|
EMail: d.w.chadwick@salford.ac.uk
|
|||
|
|
|||
|
|
|||
|
Sean Mullan
|
|||
|
Sun Microsystems
|
|||
|
One Network Drive
|
|||
|
Burlington, MA 01803
|
|||
|
USA
|
|||
|
|
|||
|
EMail: sean.mullan@sun.com
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Chadwick & Mullan Standards Track [Page 11]
|
|||
|
|
|||
|
RFC 3876 Returning Matched Values with LDAPv3 September 2004
|
|||
|
|
|||
|
|
|||
|
11. Full Copyright Statement
|
|||
|
|
|||
|
Copyright (C) The Internet Society (2004).
|
|||
|
|
|||
|
This document is subject to the rights, licenses and restrictions
|
|||
|
contained in BCP 78, and except as set forth therein, the authors
|
|||
|
retain all their rights.
|
|||
|
|
|||
|
This document and the information contained herein are provided on an
|
|||
|
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/S HE
|
|||
|
REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE
|
|||
|
INTERNET ENGINEERING TASK FORCE DISCLAIM 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.
|
|||
|
|
|||
|
Intellectual Property
|
|||
|
|
|||
|
The IETF takes no position regarding the validity or scope of any
|
|||
|
Intellectual Property Rights 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; nor does it represent that it has
|
|||
|
made any independent effort to identify any such rights. Information
|
|||
|
on the IETF's procedures with respect to rights in IETF Documents can
|
|||
|
be found in BCP 78 and BCP 79.
|
|||
|
|
|||
|
Copies of IPR disclosures made to the IETF Secretariat 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 implementers or users of this
|
|||
|
specification can be obtained from the IETF on-line IPR repository at
|
|||
|
http://www.ietf.org/ipr.
|
|||
|
|
|||
|
The IETF invites any interested party to bring to its attention any
|
|||
|
copyrights, patents or patent applications, or other proprietary
|
|||
|
rights that may cover technology that may be required to implement
|
|||
|
this standard. Please address the information to the IETF at ietf-
|
|||
|
ipr@ietf.org.
|
|||
|
|
|||
|
Acknowledgement
|
|||
|
|
|||
|
Funding for the RFC Editor function is currently provided by the
|
|||
|
Internet Society.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Chadwick & Mullan Standards Track [Page 12]
|
|||
|
|