Flux rss
Bookmark Bookmark & Share
Il protocollo LDAP O protocolo LDAP Das Protokoll LDAP Le protocole LDAP Protocolo LDAP

Introduction to LDAP

LDAP (Lightweight Directory Access Protocol) is a standard protocol allowing directories to be managed, i.e. access information bases on the users of a network using TCP/IP protocols.

The information bases are generally related to the users, but are sometimes used for other purposes such as managing a company's hardware.

The aim of the LDAP protocol, developed in 1993 by the University of Michigan, was to replace the DAP protocol (used to access X.500 directory services by OSI) by integrating according to TCP/IP. From 1995, DAP became a standalone LDAP so that it was no longer used only to access X500 type directories. LDAP is thus a lighter version of the DAP protocol, hence its name of Lightweight Directory Access Protocol.

Presentation of LDAP

The LDAP protocol defines the method of accessing data on the server at client level, and not the manner in which the information is stored.

LDAP protocol is currently at version 3 and has been standardised by the IETF (Internet Engineering Task Force). So, there is a RFC for each version of LDAP, making up a reference document:

So LDAP supplies the user with methods enabling him to:
  • connect
  • disconnect
  • search for information
  • compare information
  • insert entries
  • change entries
  • delete entries
Furthermore, LDAP protocol (in version 3) offers encryption (SSL, ...) and authentication mechanisms allowing secure access to information stored in the base.

Information tree structure (DIT)

LDAP presents information in the form of a hierarchical tree structure called a DIT (Directory Information Tree), in which the information, called entries (or even DSE, Directory Service Entry), is represented in branches.
A branch located at the root of a branch is called the root entry.

Each entry in the LDAP directory relates to an abstract or real object (for example a person, a piece of hardware, parameters, etc.).

Each entry is made up of a collection of key/value pairs called attributes.

LDAP Directory Information Tree

Entry attributes

Each entry is made up of a collection of attributes (key/value pairs) enabling the object that the entry defines to be distinguished. There are two types of attributes:

  • Normal attributes: these are the usual attributes (surname, name, ...) distinguishing the object.
  • Operational attributes: these are the attributes which only the server can access in order to manipulate the directory data (modification dates, etc,)

An entry is indexed by a distinguished name (DN) enabling an item in the tree structure to be uniquely identified.

A DN consists of taking the name of the element, called the Relative Distinguished Name (RDN, i.e. the path of the entry in relation to its parents), and adding the entire name of the parent entry to it.
It is a question of using a series of key/value pairs making it possible to uniquely locate an entry. Here is a series of keys which are generally used:

  • uid (userid), this is a compulsory unique ID
  • cn (common name), this is the person's name
  • givenname, this is the person's first name
  • sn (surname), this is the person's surname
  • o (organization), his is the person's company
  • u (organizational unit), this is the department of the company in which the person works
  • mail, this is the email address of the person (of course)
  • ...
So a Distinguished Name will take the form:
uid=jeapil,cn=pillou,givenname=jean-francois
Le Relative Distinguished Name étant ici "uid=jeapil".

Thus, the collection of object and attribute definitions that a LDAP server can manage is called a schema. This makes it possible, for example to define if an attribute can posses one or several values. Furthermore, an attribute called objectclass makes it possible to define whether attributes are compulsory or optional...

Consulting data

LDAP provides a collection of functions (procedures) to carry out queries on the data in order to search for, change and delete entries in the directories.

Here is the list of the main operations that LDAP can perform:

Operation Description
Abandon Abandon the previous operation sent to the server
Add Add an entry to the directory
Bind Start a new session on the LDAP server
Compare Compare the entries in a directory according to the criteria
Delete Delete an entry from a directory
Extended Carry out extended operations
Rename Change the name of an entry
Search Search for entries in a directory
Unbind End a new session on the LDAP server

LDAP data interchange format

LDAP provides a data interchange format (LDIF, Lightweight Data Interchange Format) allowing data to be imported and exported from a directory using a simple text file. The majority of LDAP servers support this format, which allows great interoperability between them.

The syntax for this format is as follows:

[<id>]
dn: <distinguished name>
<attribute>: <value>
<attribute>: <value>
...
In this file, id is optional, it is a positive whole number allowing the entry in the database to be identified.

  • Each new entry must be separated from the previous entry definition using an empty line.
  • It is possible to define an attribute over several lines by beginning the following lines by a space or tab space.
  • It is possible to define several values for an attribute by repeating the string name:value on the separated lines.
  • When the value contains a special character (non printable, a space or :), the attribute must be followed by :: then the value encoded in base64.


Last update on Thursday October 16, 2008 02:43:22 PM.This document entitled « LDAP protocol » from Kioskea (en.kioskea.net) is made available under the Creative Commons license. You can copy, modify copies of this page, under the conditions stipulated by the licence, as this note appears clearly.
Download LDAP Client.Net LDAP Client.Net is a programming client bringing together Net.Framework with LDAP (Lightweight Directory Access Protocol) in a powerful and intuitive package. It is a component designed for direct access to LADP server from Visual Basic.Net, C# and... en.kioskea.net/telecharger/telecharger-3429-ldap-client-net
FTP protocol (File Transfer Protocol) Introduction to FTP protocol FTP protocol (File Transfer Protocol) is, as its name indicates a protocol for transferring files. The implementation of FTP dates from 1971 when a file transfer system (described in RFC141) between MIT machines... en.kioskea.net/contents/internet/ftp.php3
The HTTP protocol Introduction to the HTTP protocol Since 1990 HTTP protocol (HyperText Transfer Protocol) has been the most widely used protocol on the Internet. Version 0.9 was only intended to transfer data over the Internet (in particular Web pages written in... en.kioskea.net/contents/internet/http.php3
The BitTorrent ProtocolThe BitTorrent Protocol What is the BitTorrent protocol? How does it work? Is BitTorrent legal? Downloading Torrent and sharing files BitTorrent Clients What is the BitTorrent protocol? The BitTorrent protocol was designed by the... en.kioskea.net/faq/sujet-226-the-bittorrent-protocol
IPX/SPX protocol under Windows VistaIPX/SPX protocol under Windows Vista The protocol IPX/ SPX allow some old games to play in network (Red Alert, Command & Conquer, etc.) This function is not supported by vista (32 bit). Below is a tips of how to use this function... en.kioskea.net/faq/sujet-1185-ipx-spx-protocol-under-windows-vista
Error Codes in WindowsError Codes in Windows The list below details the error codes displayed in the dialog boxes in Windows: Code Description _________________________________________________________________________ 1 Incorrect function.... en.kioskea.net/faq/sujet-2347-error-codes-in-windows
Protocol 48??Hello, i have a hugee prob on counter strike 1.6 ...can any1 help me?? since protocol 48 has come i cant play counter strike online cause whenever i try to connect it shows sumfin like this "This Server is using a newer version(48) then ur... en.kioskea.net/forum/affich-32259-protocol-48
How do I install a TCP/IP protocol.Hello, I have a dell optiplex g260 and a gateway both running a windows xp pro operating system. Both computers says that we need a TCP/IP protocol installed. if we click install, it says that they can not find what is needed to install the protocol... en.kioskea.net/forum/affich-27000-how-do-i-install-a-tcp-ip-protocol
Download Support IPX for VistaProtocol IPX/SPX is used for many old games for network play (Red Alert, Command & Conquer, etc…). Unfortunately, Microsoft withdrew IPX/SPX protocol support for Vista (32bit). Nevertheless, it is possible to solve the problem by selecting the pilot... en.kioskea.net/telecharger/telecharger-3890-support-ipx-for-vista
Download UTorrentMost of the features present in other BitTorrent clients are present in uTorrent, including bandwidth prioritization, scheduling, RSS auto-downloading and Mainline DHT (compatible with BitComet). Additionally, uTorrent supports the Protocol Encryption... en.kioskea.net/telecharger/telecharger-74-utorrent
Download BitTorrentPossibility to dowload version for MAC or Linux BitTorrent is a peer-to-peer file sharing (P2P) communications protocol, a tool for distributed download. Lightweight client Local peer discovery Configurable bandwidth scheduler Global and per... en.kioskea.net/telecharger/telecharger-75-bittorrent
The DHCP protocolDefinition of the term DHCP DHCP stands for Dynamic Host Configuration Protocol. It is a protocol which enables a computer that is connected to a network to obtain its configuration (mainly, its network configuration) dynamically (i.e. without... en.kioskea.net/contents/internet/dhcp.php3
TCP protocolThe characteristics of TCP protocol TCP (which means Transmission Control Protocol) is one of the main protocols of the transport layer of the TCP/IP model. It makes it possible, at application level, to manage data coming from (or going to) the... en.kioskea.net/contents/internet/tcp.php3
UDP protocolCharacteristics of the UDP protocol The UDP protocol (User Datagram Protocol) is a connectionless orientated protocol of the transport layer of the TCP/IP model. This protocol is very simple given that it does not provide error detection (it is not... en.kioskea.net/contents/internet/udp.php3