7 Network Working Group K. Zeilenga
8 Request for Comments: 4530 OpenLDAP Foundation
9 Category: Standards Track June 2006
12 Lightweight Directory Access Protocol (LDAP)
13 entryUUID Operational Attribute
18 This document specifies an Internet standards track protocol for the
19 Internet community, and requests discussion and suggestions for
20 improvements. Please refer to the current edition of the "Internet
21 Official Protocol Standards" (STD 1) for the standardization state
22 and status of this protocol. Distribution of this memo is unlimited.
26 Copyright (C) The Internet Society (2006).
30 This document describes the LDAP/X.500 'entryUUID' operational
31 attribute and associated matching rules and syntax. The attribute
32 holds a server-assigned Universally Unique Identifier (UUID) for the
33 object. Directory clients may use this attribute to distinguish
34 objects identified by a distinguished name or to locate an object
58 Zeilenga Standards Track [Page 1]
60 RFC 4530 LDAP entryUUID June 2006
65 1. Background and Intended Use .....................................2
66 2. UUID Schema Elements ............................................3
67 2.1. UUID Syntax ................................................3
68 2.2. 'uuidMatch' Matching Rule ..................................3
69 2.3. 'uuidOrderingMatch' Matching Rule ..........................3
70 2.4. 'entryUUID' Attribute ......................................4
71 3. Security Considerations .........................................4
72 4. IANA Considerations .............................................5
73 4.1. Object Identifier Registration .............................5
74 4.2. UUID Syntax Registration ...................................5
75 4.3. 'uuidMatch' Descriptor Registration ........................5
76 4.4. 'uuidOrderingMatch' Descriptor Registration ................5
77 4.5. 'entryUUID' Descriptor Registration ........................6
78 5. Acknowledgements ................................................6
79 6. References ......................................................6
80 6.1. Normative References .......................................6
81 6.2. Informative References .....................................7
83 1. Background and Intended Use
85 In X.500 Directory Services [X.501], such as those accessible using
86 the Lightweight Directory Access Protocol (LDAP) [RFC4510], an object
87 is identified by its distinguished name (DN). However, DNs are not
88 stable identifiers. That is, a new object may be identified by a DN
89 that previously identified another (now renamed or deleted) object.
91 A Universally Unique Identifier (UUID) is "an identifier unique
92 across both space and time, with respect to the space of all UUIDs"
93 [RFC4122]. UUIDs are used in a wide range of systems.
95 This document describes the 'entryUUID' operational attribute, which
96 holds the UUID assigned to the object by the server. Clients may use
97 this attribute to distinguish objects identified by a particular
98 distinguished name or to locate a particular object after renaming.
100 This document defines the UUID syntax, the 'uuidMatch' and
101 'uuidOrderingMatch' matching rules, and the 'entryUUID' attribute
104 Schema definitions are provided using LDAP description formats
105 [RFC4512]. Definitions provided here are formatted (line wrapped)
114 Zeilenga Standards Track [Page 2]
116 RFC 4530 LDAP entryUUID June 2006
119 In this document, the key words "MUST", "MUST NOT", "REQUIRED",
120 "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY",
121 and "OPTIONAL" are to be interpreted as described in BCP 14
124 2. UUID Schema Elements
128 A Universally Unique Identifier (UUID) [RFC4122] is a 16-octet (128-
129 bit) value that identifies an object. The ASN.1 [X.680] type UUID is
130 defined to represent UUIDs as follows:
132 UUID ::= OCTET STRING (SIZE(16))
133 -- constrained to an UUID [RFC4122]
135 In LDAP, UUID values are encoded using the [ASCII] character string
136 representation described in [RFC4122]. For example,
137 "597ae2f6-16a6-1027-98f4-d28b5365dc14".
139 The following is an LDAP syntax description suitable for publication
140 in subschema subentries.
142 ( 1.3.6.1.1.16.1 DESC 'UUID' )
144 2.2. 'uuidMatch' Matching Rule
146 The 'uuidMatch' matching rule compares an asserted UUID with a stored
147 UUID for equality. Its semantics are the same as the
148 'octetStringMatch' [X.520][RFC4517] matching rule. The rule differs
149 from 'octetStringMatch' in that the assertion value is encoded using
150 the UUID string representation instead of the normal OCTET STRING
151 string representation.
153 The following is an LDAP matching rule description suitable for
154 publication in subschema subentries.
156 ( 1.3.6.1.1.16.2 NAME 'uuidMatch'
157 SYNTAX 1.3.6.1.1.16.1 )
159 2.3. 'uuidOrderingMatch' Matching Rule
161 The 'uuidOrderingMatch' matching rule compares an asserted UUID with
162 a stored UUID for ordering. Its semantics are the same as the
163 'octetStringOrderingMatch' [X.520][RFC4517] matching rule. The rule
164 differs from 'octetStringOrderingMatch' in that the assertion value
165 is encoded using the UUID string representation instead of the normal
166 OCTET STRING string representation.
170 Zeilenga Standards Track [Page 3]
172 RFC 4530 LDAP entryUUID June 2006
175 The following is an LDAP matching rule description suitable for
176 publication in subschema subentries.
178 ( 1.3.6.1.1.16.3 NAME 'uuidOrderingMatch'
179 SYNTAX 1.3.6.1.1.16.1 )
181 Note that not all UUID variants have a defined ordering; and even
182 where it does, servers are not obligated to assign UUIDs in any
183 particular order. This matching rule is provided for completeness.
185 2.4. 'entryUUID' Attribute
187 The 'entryUUID' operational attribute provides the Universally Unique
188 Identifier (UUID) assigned to the entry.
190 The following is an LDAP attribute type description suitable for
191 publication in subschema subentries.
193 ( 1.3.6.1.1.16.4 NAME 'entryUUID'
194 DESC 'UUID of the entry'
196 ORDERING uuidOrderingMatch
197 SYNTAX 1.3.6.1.1.16.1
200 USAGE directoryOperation )
202 Servers SHALL generate and assign a new UUID to each entry upon its
203 addition to the directory and provide that UUID as the value of the
204 'entryUUID' operational attribute. An entry's UUID is immutable.
206 UUID are to be generated in accordance with Section 4 of [RFC4122].
207 In particular, servers MUST ensure that each generated UUID is unique
210 3. Security Considerations
212 An entry's relative distinguish name (RDN) is composed from attribute
213 values of the entry, which are commonly descriptive of the object the
214 entry represents. Although deployers are encouraged to use naming
215 attributes whose values are widely disclosable [RFC4514], entries are
216 often named using information that cannot be disclosed to all
217 parties. As UUIDs do not contain any descriptive information of the
218 object they identify, UUIDs may be used to identify a particular
219 entry without disclosure of its contents.
221 General UUID security considerations [RFC4122] apply.
226 Zeilenga Standards Track [Page 4]
228 RFC 4530 LDAP entryUUID June 2006
231 General LDAP security considerations [RFC4510] apply.
233 4. IANA Considerations
235 The IANA has registered the LDAP values [RFC4520] specified in this
238 4.1. Object Identifier Registration
240 Subject: Request for LDAP OID Registration
241 Person & email address to contact for further information:
242 Kurt Zeilenga <kurt@OpenLDAP.org>
243 Specification: RFC 4530
244 Author/Change Controller: IESG
246 Identifies the UUID schema elements
248 4.2. UUID Syntax Registration
250 Subject: Request for LDAP Syntax Registration
251 Object Identifier: 1.3.6.1.1.16.1
253 Person & email address to contact for further information:
254 Kurt Zeilenga <kurt@OpenLDAP.org>
255 Specification: RFC 4530
256 Author/Change Controller: IESG
258 Identifies the UUID syntax
260 4.3. 'uuidMatch' Descriptor Registration
262 Subject: Request for LDAP Descriptor Registration
263 Descriptor (short name): uuidMatch
264 Object Identifier: 1.3.6.1.1.16.2
265 Person & email address to contact for further information:
266 Kurt Zeilenga <kurt@OpenLDAP.org>
268 Specification: RFC 4530
269 Author/Change Controller: IESG
271 4.4. 'uuidOrderingMatch' Descriptor Registration
273 Subject: Request for LDAP Descriptor Registration
274 Descriptor (short name): uuidOrderingMatch
275 Object Identifier: 1.3.6.1.1.16.3
276 Person & email address to contact for further information:
277 Kurt Zeilenga <kurt@OpenLDAP.org>
282 Zeilenga Standards Track [Page 5]
284 RFC 4530 LDAP entryUUID June 2006
287 Specification: RFC 4530
288 Author/Change Controller: IESG
290 4.5. 'entryUUID' Descriptor Registration
292 The IANA has registered the LDAP 'entryUUID' descriptor.
294 Subject: Request for LDAP Descriptor Registration
295 Descriptor (short name): entryUUID
296 Object Identifier: 1.3.6.1.1.16.4
297 Person & email address to contact for further information:
298 Kurt Zeilenga <kurt@OpenLDAP.org>
299 Usage: Attribute Type
300 Specification: RFC 4530
301 Author/Change Controller: IESG
305 This document is based upon discussions in the LDAP Update and
306 Duplication Protocols (LDUP) WG. Members of the LDAP Directorate
311 6.1. Normative References
313 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
314 Requirement Levels", BCP 14, RFC 2119, March 1997.
316 [RFC4122] Leach, P., Mealling, M., and R. Salz, "A Universally
317 Unique IDentifier (UUID) URN Namespace", RFC 4122, July
320 [RFC4510] Zeilenga, K., Ed., "Lightweight Directory Access
321 Protocol (LDAP): Technical Specification Road Map", RFC
324 [RFC4512] Zeilenga, K., "Lightweight Directory Access Protocol
325 (LDAP): Directory Information Models", RFC 4512, June
328 [RFC4517] Legg, S., Ed., "Lightweight Directory Access Protocol
329 (LDAP): Syntaxes and Matching Rules", RFC 4517, June
332 [ASCII] Coded Character Set--7-bit American Standard Code for
333 Information Interchange, ANSI X3.4-1986.
338 Zeilenga Standards Track [Page 6]
340 RFC 4530 LDAP entryUUID June 2006
343 [X.501] International Telecommunication Union -
344 Telecommunication Standardization Sector, "The
345 Directory -- Models," X.501(1993) (also ISO/IEC 9594-
348 [X.520] International Telecommunication Union -
349 Telecommunication Standardization Sector, "The
350 Directory: Selected Attribute Types", X.520(1993) (also
351 ISO/IEC 9594-6:1994).
353 [X.680] International Telecommunication Union -
354 Telecommunication Standardization Sector, "Abstract
355 Syntax Notation One (ASN.1) - Specification of Basic
356 Notation", X.680(2002) (also ISO/IEC 8824-1:2002).
358 6.2. Informative References
360 [RFC4514] Zeilenga, K., Ed., "Lightweight Directory Access
361 Protocol (LDAP): String Representation of Distinguished
362 Names", RFC 4514, June 2006.
364 [RFC4520] Zeilenga, K., "Internet Assigned Numbers Authority
365 (IANA) Considerations for the Lightweight Directory
366 Access Protocol (LDAP)", BCP 64, RFC 4520, June 2006.
373 EMail: Kurt@OpenLDAP.org
394 Zeilenga Standards Track [Page 7]
396 RFC 4530 LDAP entryUUID June 2006
399 Full Copyright Statement
401 Copyright (C) The Internet Society (2006).
403 This document is subject to the rights, licenses and restrictions
404 contained in BCP 78, and except as set forth therein, the authors
405 retain all their rights.
407 This document and the information contained herein are provided on an
408 "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
409 OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
410 ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,
411 INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
412 INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
413 WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
415 Intellectual Property
417 The IETF takes no position regarding the validity or scope of any
418 Intellectual Property Rights or other rights that might be claimed to
419 pertain to the implementation or use of the technology described in
420 this document or the extent to which any license under such rights
421 might or might not be available; nor does it represent that it has
422 made any independent effort to identify any such rights. Information
423 on the procedures with respect to rights in RFC documents can be
424 found in BCP 78 and BCP 79.
426 Copies of IPR disclosures made to the IETF Secretariat and any
427 assurances of licenses to be made available, or the result of an
428 attempt made to obtain a general license or permission for the use of
429 such proprietary rights by implementers or users of this
430 specification can be obtained from the IETF on-line IPR repository at
431 http://www.ietf.org/ipr.
433 The IETF invites any interested party to bring to its attention any
434 copyrights, patents or patent applications, or other proprietary
435 rights that may cover technology that may be required to implement
436 this standard. Please address the information to the IETF at
441 Funding for the RFC Editor function is provided by the IETF
442 Administrative Support Activity (IASA).
450 Zeilenga Standards Track [Page 8]