RFC 8284
Lightweight Directory Access Protocol (LDAP) Schema for Supporting the Extensible Messaging and Presence Protocol (XMPP) in White Pages
RFC 8284: LDAP Schema for Supporting XMPP in White Pages π
Title: Lightweight Directory Access Protocol (LDAP) Schema for Supporting the Extensible Messaging and Presence Protocol (XMPP) in White Pages π Author: S. Kille, Isode Ltd π§ Category: Informational π Date: November 2017 ποΈ ISSN: 2070-1721 Obsoletes / Updates: none listed β¨
Abstract
okay so XMPP figures out who people are using Jabber IDs (JIDs) π¦ and LDAP gives you a white pages service, which is basically a big directory of people and internet-protocol stuff π. This spec adds a schema so JIDs can be linked to objects in an LDAP directory, so white pages apps can actually use that info π β¨
Status of This Memo
This document is not an Internet Standards Track specification. It's published for information only π (no pressure, bestie π«Ά).
It's a product of the Internet Engineering Task Force (IETF) and it reflects the consensus of the IETF community π. It got public review and was approved for publication by the Internet Engineering Steering Group (IESG). Not every IESG-approved doc is a candidate for any level of Internet Standard, though, so see Section 2 of RFC 7841 for that π.
You can find the current status, any errata, and how to give feedback at https://www.rfc-editor.org/info/rfc8284 π.
Copyright Notice
Copyright (c) 2017 IETF Trust and the persons identified as the document authors. All rights reserved. β
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) as they stand on the publication date. Read these carefully, because they spell out your rights and restrictions for this document π. Code Components pulled out of this document must include Simplified BSD License text, as described in Section 4.e of the Trust Legal Provisions, and they come without warranty, as described in the Simplified BSD License π«Ά.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Conventions Used in This Document . . . . . . . . . . . . . . 3
3. Schema Definition . . . . . . . . . . . . . . . . . . . . . . 3
3.1. Object Class . . . . . . . . . . . . . . . . . . . . . . 3
3.2. Attribute . . . . . . . . . . . . . . . . . . . . . . . . 3
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4
5. Security Considerations . . . . . . . . . . . . . . . . . . . 5
6. Normative References . . . . . . . . . . . . . . . . . . . . 5
Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 6
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 6
1. Introduction β¨
So XMPP [RFC6120] uses Jabber IDs (JIDs) to identify users π¦. LDAP [RFC4510] gives you a white pages service with a schema for users and for internet protocols defined in [RFC4519] π. This spec is the glow-up that lets XMPP JIDs get linked to LDAP directory objects, so white pages apps can use that data π.
The LDAP schema for storing JIDs is built so a JID can be attached to any object in the directory πΈ. How? You attach the new JID Attribute to a brand new Auxiliary Object Class called JIDObject π§.
2. Conventions Used in This Document π
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here π₯.
3. Schema Definition π
This section defines the schema used to store JIDs in the directory π.
3.1. Object Class π¦
This section defines a new Auxiliary Object Class called JIDObject, which MAY be associated with any structural Object Class π. It's used to augment entries for objects that act, or may act, as an XMPP client π . The JID attribute is optional, so you can set up an object that's allowed to have a JID even if it doesn't have one yet π«Ά.
( 1.3.6.1.1.23.1 NAME 'JIDObject'
AUXILIARY
MAY jid )
3.2. Attribute π
This section defines the JID attribute that the JIDObject Auxiliary Object Class references π§. The JID attribute's syntax MUST follow the rules of [RFC7622] π. The stored JID MUST be a bare JID (like romeo@shakespeare.example.com for a human user) and NOT a full JID. A full JID looks like romeo@shakespare.example.com/AABBCC, and it points at one specific XMPP client the human uses, identified by the resource AABBCC π.
Heads up: the LDAP directory server isn't expected to enforce this syntax π«£. The syntax rules are for the LDAP clients that set the attribute, and human usage is the main target π . Apps using this attribute should format the string in whatever way fits the app πΈ. XMPP apps SHOULD apply [RFC7622] to the attribute β¨. The directory service doesn't enforce JID syntax, and values get compared using the matching rules in the attribute definition π¦.
Also, for the sake of users, admins, and implementers, the Directory String syntax and the caseIgnoreMatch matching rule were picked so values can be entered and matched using the usual directory rules π. But since that syntax and matching rule differ from [RFC7622], false positives and false negatives can happen π. This isn't expected to cause operational issues, based on implementation experience with similar syntax and matching rule mismatches π.
( 1.3.6.1.1.23.2 NAME 'jid'
EQUALITY caseIgnoreMatch
SUBSTR caseIgnoreSubstringsMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
1.3.6.1.4.1.1466.115.121.1.15 refers to the Directory String syntax defined in [RFC4517] π.
4. IANA Considerations πΈ
The following registrations were made in the "Lightweight Directory Access Protocol (LDAP) Parameters" registry (https://www.iana.org/assignments/ldap-parameters), per BCP 64 [RFC4520] π.
Object Identifier Registration β¨
An object identifier was assigned to support the registrations this spec needs, via an entry in the Internet Directory Numbers (iso.org.dod.internet.directory [1.3.6.1.1.]) registry π§:
Decimal: 23
Name: xmpp
Description: LDAP schema for XMPP
Two object identifiers were assigned π¦.
'JIDObject' Descriptor Registration π
Name: JIDObject
Type: O
OID: 1.3.6.1.1.23.1
'jid' Descriptor Registration π
Name: jid
Type: A
OID: 1.3.6.1.1.23.2
5. Security Considerations π
Okay, real talk, this one matters ππ₯. XMPP JIDs are often personal identifiers that let people communicate electronically, and they carry similar considerations to email addresses π. This schema lets that info get published in LDAP directories, which might be corporate or public services π. So be careful to only publish JID info that's fine to link to the LDAP object AND fine to make visible to every LDAP user π. The general LDAP security considerations in [RFC4510] also apply π‘οΈ.
6. Normative References π
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<https://www.rfc-editor.org/info/rfc2119>.
[RFC4510] Zeilenga, K., Ed., "Lightweight Directory Access Protocol
(LDAP): Technical Specification Road Map", RFC 4510,
DOI 10.17487/RFC4510, June 2006,
<https://www.rfc-editor.org/info/rfc4510>.
[RFC4517] Legg, S., Ed., "Lightweight Directory Access Protocol
(LDAP): Syntaxes and Matching Rules", RFC 4517,
DOI 10.17487/RFC4517, June 2006,
<https://www.rfc-editor.org/info/rfc4517>.
[RFC4519] Sciberras, A., Ed., "Lightweight Directory Access Protocol
(LDAP): Schema for User Applications", RFC 4519,
DOI 10.17487/RFC4519, June 2006,
<https://www.rfc-editor.org/info/rfc4519>.
[RFC4520] Zeilenga, K., "Internet Assigned Numbers Authority (IANA)
Considerations for the Lightweight Directory Access
Protocol (LDAP)", BCP 64, RFC 4520, DOI 10.17487/RFC4520,
June 2006, <https://www.rfc-editor.org/info/rfc4520>.
[RFC6120] Saint-Andre, P., "Extensible Messaging and Presence
Protocol (XMPP): Core", RFC 6120, DOI 10.17487/RFC6120,
March 2011, <https://www.rfc-editor.org/info/rfc6120>.
[RFC7622] Saint-Andre, P., "Extensible Messaging and Presence
Protocol (XMPP): Address Format", RFC 7622,
DOI 10.17487/RFC7622, September 2015,
<https://www.rfc-editor.org/info/rfc7622>.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
May 2017, <https://www.rfc-editor.org/info/rfc8174>.
Acknowledgements π«Ά
Huge thanks to Alexey Melnikov for tips on preparing this doc π. Thanks also to Alan Murdock, Yoav Nir, Peter Saint-Andre, and Kurt Zeilenga for their review comments πβ¨.
Author's Address π§
Steve Kille
Isode Ltd
14 Castle Mews
Hampton, Middlesex TW12 2NP
United Kingdom
Email: Steve.Kille@isode.com
π¦ where this page comes from
- ietf: rfc8284 2017-11
- π girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms