Re: [ldapext] Case sensitivity summary

Michael Ströder <michael@stroeder.com> Fri, 04 December 2015 14:00 UTC

Return-Path: <michael@stroeder.com>
X-Original-To: ldapext@ietfa.amsl.com
Delivered-To: ldapext@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id F14C41B31BA for <ldapext@ietfa.amsl.com>; Fri, 4 Dec 2015 06:00:51 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.312
X-Spam-Level:
X-Spam-Status: No, score=-2.312 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, MIME_8BIT_HEADER=0.3, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id l3c5PrgWnC4w for <ldapext@ietfa.amsl.com>; Fri, 4 Dec 2015 06:00:49 -0800 (PST)
Received: from srv1.stroeder.com (srv1.stroeder.com [213.240.180.113]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3C9BC1A87C7 for <ldapext@ietf.org>; Fri, 4 Dec 2015 06:00:49 -0800 (PST)
Received: from srv4.stroeder.local (unknown [10.1.1.7]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mail.stroeder.local", Issuer "stroeder.com Server CA no. 2009-07" (verified OK)) by srv1.stroeder.com (Postfix) with ESMTPS id D6BF71CF66; Fri, 4 Dec 2015 14:00:46 +0000 (UTC)
Received: from nb2.stroeder.local (nb2.stroeder.local [10.1.1.5]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by srv4.stroeder.local (Postfix) with ESMTPS id 264781D29F; Fri, 4 Dec 2015 14:00:45 +0000 (UTC)
To: Andrew Findlay <andrew.findlay@skills-1st.co.uk>, LDAP Extensions list <ldapext@ietf.org>
References: <20151204123810.GA8983@slab.skills-1st.co.uk>
From: Michael Ströder <michael@stroeder.com>
X-Enigmail-Draft-Status: N1110
Message-ID: <56619C8C.1010805@stroeder.com>
Date: Fri, 04 Dec 2015 15:00:44 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:42.0) Gecko/20100101 SeaMonkey/2.39
MIME-Version: 1.0
In-Reply-To: <20151204123810.GA8983@slab.skills-1st.co.uk>
Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg="sha-256"; boundary="------------ms080209050307080609050305"
Archived-At: <http://mailarchive.ietf.org/arch/msg/ldapext/56dga7cpQ50SeiIan9yjnnQzsCU>
Subject: Re: [ldapext] Case sensitivity summary
X-BeenThere: ldapext@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: LDAP Extension Working Group <ldapext.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ldapext>, <mailto:ldapext-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ldapext/>
List-Post: <mailto:ldapext@ietf.org>
List-Help: <mailto:ldapext-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ldapext>, <mailto:ldapext-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 04 Dec 2015 14:00:52 -0000

Andrew Findlay wrote:
> We are not going to define a standard that forces everyone to do everything
> 'right' while providing interworking of differing systems. It is simply
> not possible.

That perfectly summarizes this topic.
Thanks Andrew, for this clear statement.

Let's keep the scope right.

> Overall I think we are heading for something like this:
> 
> 1)	Usernames and groupnames should have caseIgnoreMatch syntax
> 
> 2)	Usernames and groupnames should preferably be stored in lower-case in
> 	cultures where that has meaning. Remember that LDAP is case-preserving
> 	even for case-insensitive attributes.
> 
> 3)	Systems that are internally case-sensitive should take extra care
> 	when using data from LDAP.
> 
> I know this conflicts with Mark's wish to be able to import existing
> NIS data unchanged to cope with weird existing situations, but I see that 
> as a special case that may be better handled in another way.

+1 !!!

(That's pretty much exactly what I planned to suggest.)

> Note that the above discussion *only* applies to usernames and groupnames.
> Unix-specific mappings such as automount maps are a different issue.

automount maps are maybe a similar topic like generating 'homeDirectory' values
for $HOME on case-sensitive file-systems based on user names.  For this
RECOMMENDing that usernames are normalized to lower-case is really helpful.

Regarding service names:

(Personally I never saw any customer LDAP deployment storing a services map.)

1. Service names are used in DNS RRs (SRV, DANE, etc.) and those DNS labels are
definitely supposed to be treated case-insensitive.

2. Jordan pointed out RFC 6335.

=> I concur with Jordan: Service names MUST be treated case-insensitive.
Probably recommending in an implementation note to normalize values to
lower-case seems also to be a good idea.

=> People actually using case-sensitive service names to address *different*
services MUST clean up their local mess. But they likely have to do that anyway.

Ciao, Michael.