tags:

views:

65

answers:

3

Hello,

What is LDAP and why people use LDAP instead of rel. DB? I've read some about LDAP on Wikipedia, but I'm still confused what is it.

Thank you

+1  A: 

LDAP is used to centralize the Authentication and Authorization inside an enterprise network. If a applications has to use the existing infrastructure for Authorization and Authentication then LDAP should be used. By using LDAP you don't have to implement any other authentication logic.

Krishna
Hm, I thought that LDAP itself creates this infrastructure...
Kirzilla
@Kirzilla, Your use of the term *infrastructure* is a vague description. Krishna is spot on, though. If you're tired of maintaining users and roles in custom config files and tables, then step up to LDAP (e.g. Active Directory, OpenLDAP, etc.)
spoulson
A: 

From the Wikipedia LDAP page:

The Lightweight Directory Access Protocol, or LDAP (pronounced /ˈɛl dæp/), is an application protocol for querying and modifying data using directory services running over TCP/IP.

It and similar technologies are most often used in enterprise software to allow centralized management of users and related data. If multiple unrelated applications run in the same environment, using LDAP is a standard way to allow users to use the same credentials and keep system administrators sane.

Tomislav Nakic-Alfirevic
+1  A: 

As you surely already know, LDAP is a particular sort of database (plus a protocol to access it) for "directory services", oriented towards mostly-read-only, hierachical, distributed scenarios. It's mostly used for authentication, authorization, searching/listing of users with their roles and data (and/or other entities) of some organizations.

LDAP is hated by many developers because of it's very idiosyncratic terminology/idioms, very different from relational databases and SQL. Many had hopes about its slow death, but the fact that Microsoft adopted it for Windows (Active Directory), among other facts, tells it's probably going to be around for some time.

When consider to use it in web applications? Assuming you are not confortable with it, only use if you have to, I'd say. That is, if you need to authenticate/interact with some existing LDAP infrastructure (AD, for example).

leonbloy