Figura 1. Ejemplo de directorio
LDAP (Lightweight Directory Access Protocol) es un protocolo de aplicaci贸n que permite el acceso a un servicio de directorio (dominio). Los directorios con los que trabaja LDAP son de prop贸sito general aunque se suele utilizar para almacenar informaci贸n referente a organizaciones, usuarios, redes, etc.
Los servidores LDAP utilizan sistemas de bases de datos como backend donde almacenar y gestionar las entradas del directorio. Se puede dividir el 谩rbol de directorios en sub谩rboles de tal manera que cada servidor LDAP controla un sub谩rbol por los siguientes casos:
- Rendimiento. Al distribuir el directorio entre varios servidores se distribuye la carga individual de cada uno de ellos y por lo tanto se obtiene un mayor rendimiento global.
- Localizaci贸n geogr谩fica. Cada servidor puede dar servicio a una zona geogr谩fica diferente.
- Cuestiones administrativas. Cada servidor es gestionado por administradores diferentes.
En LDAP se pueden distinguir cuatro modelos que representan los servicios que proporciona un servidor LDAP vistos por el cliente.
- El modelo de informaci贸n establece la estructura y los tipos de datos que tiene el directorio: esquemas, entradas, atributos, etc. Seg煤n este modelo un directorio est谩 formado por entradas estructuradas en forma de 谩rbol. Cada entrada estar谩 definida por un conjunto de atributos y cada atributo est谩 compuesto por un nombre y su valor.
- El modelo de asignaci贸n de nombres define c贸mo referenciar de forma 煤nica las entradas y los datos en el 谩rbol de directorios. Cada entrada tendr谩 un identificador 煤nico llamado DN (Distinguished Name). El DN se construye a partir de un RDN (Relative Distinguished Name) que se compone de varios atributos de la entrada, seguido de los DN de sus ancestros.
- El modelo funcional establece las operaciones para acceder al 谩rbol de directorio: autenticaci贸n, solicitudes y actualizaciones.
- Por 煤ltimo el modelo de seguridad establece los mecanismos que garantizan para el cliente c贸mo probar su identidad (autenticaci贸n) y para el servidor c贸mo controlar el acceso (autorizaci贸n).
A continuaci贸n vamos a aprender los conceptos m谩s importantes de LDAP y a utilizar OpenLDAP: