There's just something very wrong about having to use 90s database technology solely because people like (or are stuck with) the associated protocol.
Look at the bright side: At least it isn't an Oracle product.
I know this will be down-voted for being a Reddit-esque comment, but it was worth it.
I think the primary use case is to allow user records for a site to be very distributed, therefore fast and highly available. DNS for people/accounts, maybe.
It's even web friendly, in the sense that ldap:// identifiers are urls.
You might be able to argue that it was a NoSQL solution over a decade before NoSql was cool, however :)
http://www.engineyard.com/blog/2009/ldap-directories-the-for...
Beyond that everyone other than Microsoft uses the OpenLDAP code, which has a number of basic errors and rough-edges. slapd has numerous deadlock conditions and the only backend which doesn't have a low risk of corrupting your data (MySQL) is discouraged. The client libraries had basic design failures for aeons - the most glaring being the assumption that the network is perfect and will never drop or delay packets (timeouts are checked after blocking operations return, which takes several days due to retries at multiple levels). This means that OS X, Linux, FreeBSD, etc. clients will become unusable if your LDAP server is less than perfect - and since slapd deadlocks under normal use, this will occur sporadically. The developers were largely in denial about this - my patch to set SO_RCVTIMEO / SO_SNDTIMEO was ignored with unproven claims that this would magically work in the bleeding-edge trunk version (untrue then, could have changed now) but the libpam-ldap maintain is more conscientious so the similar patch there was accepted a couple years ago so at least Linux clients actually attempt to failover.
I read the Engine Yard story before, and it's a really good evaluation of where things went wrong for LDAP.
shudder I still have bad memories of GetObject("LDAP://