ODBC

  • LDAP (Lightweight Directory Access Protocol) es un protocolo estándar abierto para acceder a servicios de directorio X.500. Un directorio es una base de datos específicamente diseñada para la búsqueda y navegación de información. De manera similar a una guía telefónica, más que como una carpeta en un sistema de archivos. Al igual que una guía telefónica o libreta de direcciones/contactos, el directorio almacena información acerca de un ítem, como un doctor: primero se encuentra la guía telefónica, luego se buscan doctores, a continuación se busca la especialidad deseada, y finalmente se decide qué doctor examinar (obtener sus datos como dirección, número de teléfono, horarios, etc.)

    Los servicios de directorio juegan un rol importante en el desarrollo de aplicaciones sobre Internet y redes privadas (intranets) permitiendo compartir información de recursos (usuarios, sistemas, redes, servicios y aplicaciones) a través de la red. Como ejemplo, un servicio de directorio puede proveer un conjunto organizado de registros, generalmente respetando una estructura jerárquica, tal como una libreta de direcciones de correo electrónico dentro de una red corporativa. También son utilizados muy frecuentemente para proveer servicios de autenticación y autorización centralizados (y a su vez distribuidos entre varios servidores) en redes corporativas, tal como es el caso de Active Directory, el popular servicio de directorio implementado por Microsoft.

    El protocolo LDAP opera sobre los protocolos de transporte de Internet (TCP/IP). LDAP es una alternativa liviana al protocolo DAP (Directory Access Protocol) del estándar X.500 para uso en Internet. Liviana porque se basa en la pila TCP/IP en lugar de en la compleja pila OSI. Además tiene simplificaciones como la representación de la mayoría de los valores de atributos e ítems del protocolo como texto plano, lo cual está diseñado para simplificar la implementación de clientes.

    Por defecto, OpenLDAP utiliza una base de datos Bekerley DB como backend. Sin embargo, de acuerdo a experiencias previas con otras aplicaciones, esta librería es propensa a errores, corrupción de datos y es ineficiente en comparación a otras tecnologías similares (por ejemplo SQLite). Por ende, este artículo documenta la instalación de un servidor LDAP con Postgres como backend (un motor de bases de datos muchísimo más eficiente y robusto) lo cual requiere la instalación de un driver ODBC.