La siguiente es una publicación de Chima Mmeje. Es una estratega de contenido que ayuda a las marcas de SaaS y tecnología a crear grupos temáticos y ejecutar su estrategia de contenido.
A medida que crecen las empresas, la necesidad de organizar los datos y activos de los usuarios en una estructura jerárquica se vuelve crítica para simplificar el acceso al almacenamiento de esos activos. LDAP permite a las organizaciones almacenar, administrar y proteger información sobre la organización, sus usuarios y activos.
En esta guía, explicaremos qué es LDAP, sus usos y cómo funciona. También discutiremos los niveles de componentes de datos y directorios LDAP, ilustrando cómo es una herramienta esencial para administrar datos sobre organizaciones y usuarios por igual.
¿Qué es el Protocolo Ligero de Acceso a Directorios (LDAP)?
LDAP es una versión ligera del Protocolo de Acceso a Directorios (DAP). Su objetivo original era proporcionar acceso de bajo costo a un directorio X. 500, pero la herramienta ahora tiene una variedad más amplia de usos, que discutiremos más adelante.
La función principal de LDAP es permitir a los usuarios encontrar datos sobre organizaciones, personas y más. Logra este objetivo almacenando datos en el directorio LDAP y autenticando a los usuarios para que accedan al directorio. También proporciona el lenguaje de comunicación que las aplicaciones requieren para enviar y recibir información de los servicios de directorio.
Los datos y recursos que puede encontrar con LDAP incluyen archivos e información de usuario. Funciona con impresoras, computadoras y otros dispositivos conectados a través de Internet o la intranet de una empresa.
LDAP funciona con la mayoría de los servicios de directorio de proveedores, como Active Directory (AD). Con LDAP, compartir información sobre usuarios, servicios, sistemas, redes y aplicaciones de un servicio de directorio con otras aplicaciones y servicios es más fácil de implementar.
¿Qué Es La Autenticación LDAP?
Un usuario no puede acceder a la información almacenada en una base de datos o directorio LDAP sin antes autenticarse (demostrar que es quien dice ser). La base de datos suele contener información de usuarios, grupos y permisos, y entrega la información solicitada a las aplicaciones conectadas.
La autenticación LDAP implica verificar los nombres de usuario y las contraseñas proporcionados conectándose con un servicio de directorio que utiliza el protocolo LDAP. Algunos servidores de directorios que usan LDAP de esta manera son OpenLDAP, MS Active Directory y OpenDJ.
Aquí hay un desglose paso a paso del proceso de autenticación:
- El cliente (un sistema o aplicación preparado para LDAP) envía una solicitud para acceder a la información almacenada en una base de datos LDAP.
- El cliente proporciona sus credenciales de usuario del servidor LDAP (nombre de usuario y contraseña).
- El servidor LDAP coteja las credenciales enviadas por el usuario con los datos de identidad del usuario central almacenados en su base de datos LDAP.
- Si las credenciales proporcionadas coinciden con la identidad de usuario central almacenada, el cliente puede acceder a la información solicitada.
- Las credenciales incorrectas llevarán a que se deniegue el acceso a la base de datos LDAP.
Tenga en cuenta que la identidad de usuario principal almacenada en la base de datos LDAP no es necesariamente solo nombres de usuario y contraseñas, sino también otros atributos como direcciones, números de teléfono y asociaciones de grupo.
LDAP vs Active Directory
Active Directory (AD) fue desarrollado por Microsoft para redes de dominio de Windows. Se incluye como un conjunto de servicios y procesos en la mayoría de los sistemas operativos Windows y contiene información sobre cada cuenta de usuario conectada a la red.
LDAP es una herramienta para extraer y editar datos almacenados en Active Directory y otros proveedores de servicios de directorio compatibles. Cada cuenta de usuario de un anuncio tiene varios atributos, como el nombre completo y la dirección de correo electrónico del usuario. Extraer esta información en un formato utilizable requiere LDAP.
LDAP extrae información de AD con una consulta simple basada en cadenas. LDAP también puede compartir la información extraída (como nombres de usuario y contraseñas) con dispositivos o aplicaciones conectados.
El uso de LDAP elimina la necesidad de que los usuarios introduzcan manualmente una cadena de consultas LDAP para recuperar información de AD. Por ejemplo, Microsoft Outlook es un programa de Windows habilitado para LDAP que ingresa consultas automáticamente para obtener la información que desea.
¿Para qué se utiliza LDAP?
Dado que LDAP es un protocolo abierto y multiplataforma, funciona con varios proveedores de servicios de directorio y tiene varias aplicaciones. El caso de uso LDAP más común es servir como una ubicación central para almacenar información de autenticación, como nombres de usuario y contraseñas. Puede usar la información de autenticación almacenada en varias aplicaciones para validar usuarios.
Las aplicaciones populares que admiten la autenticación LDAP son los servidores OpenVPN, Docker, Jenkins, Kubernetes y Linux Samba. Los administradores del sistema también usan la función de inicio de sesión único (SSO) de LDAP para administrar el acceso a la base de datos LDAP.
Tipos de operaciones LDAP
Estos son algunos tipos básicos de operaciones en LDAP:
Agregar
La función le permite agregar nuevas entradas a la base de datos del servidor de directorios. Si el nombre añadido ya existe, el servidor no aceptará la entrada. En su lugar, entregará una notificación de «Entrada ya existente». Los servidores compatibles con LDAP almacenarán los nombres agregados y otros atributos de acuerdo con los estándares de nomenclatura prescritos para garantizar la uniformidad.
Bind (Autenticación)
Cuando se crea una sesión conectándose a un servidor LDAP, el estado de autenticación predeterminado de la sesión es anónimo. La función de enlace LDAP valida el estado de autenticación y lo cambia de anónimo. El enlace puede realizarse a través del método de autenticación Simple o SASL (Autenticación Simple y Capa de seguridad).
Unbind
Unbind aborta las operaciones pendientes y finaliza sus conexiones. Puede lograr lo mismo cerrando la conexión, pero se prefiere usar unbind porque libera recursos que pueden permanecer asignados a la operación cancelada.
Modificar
Los clientes LDAP utilizan la función modificar para editar la información ya almacenada en una base de datos. Solo se permiten tres tipos de modificaciones:
- Agregar un nuevo valor a los datos
- Reemplazar o sobrescribir un valor existente
- Eliminar un valor existente
Buscar y comparar
La operación permite a los clientes buscar y leer entradas. Puede buscar entradas en función de su nombre, tamaño, alcance, tipo y otros atributos. La función comparar facilita la verificación de si una entrada con nombre tiene atributos específicos.
Eliminar
Los clientes utilizan esta función para eliminar entradas del directorio. Tenga en cuenta que la eliminación no se producirá a menos que el cliente envíe una solicitud de eliminación perfectamente compuesta al servidor. Algunas de las características que debe tener la solicitud de eliminación son:
- El nombre de la entrada que desea borrar
- Controles de solicitud adjuntos
Niveles de directorio LDAP
Una configuración LDAP típica sigue un formato de jerarquía de «árbol». A continuación se muestran los niveles jerárquicos de principio a fin:
- El lugar de inicio: un directorio raíz
- Países
- Organizaciones o empresas
- Divisiones, departamentos y otras unidades organizativas
- Personas, archivos y recursos compartidos (impresoras, computadoras, etc)
Puede distribuir un directorio LDAP entre varios servidores. Las consultas de los clientes se distribuyen entre varios servidores con la ayuda de la replicación. Cada servidor LDAP recibe solicitudes de los usuarios y asume la responsabilidad de las solicitudes antes de pasarlas a otros servidores. Los servidores tendrán una versión replicada del directorio, y todos los directorios sincronizarán sus entradas a intervalos regulares.
Componentes de datos LDAP
Varios componentes trabajan juntos para que LDAP complete su gran variedad de tareas, especialmente cuando se trata de cómo consulta y muestra los datos a los usuarios. Los componentes más esenciales son:
Atributos
Los datos reales dentro de un sistema LDAP se almacenan como atributos. Cada atributo está asociado con un tipo de atributo que especifica cómo los clientes y el servidor de directorios deben interactuar con ese atributo. Además, los valores de atributo contienen la mayoría de los datos que los usuarios almacenan y a los que acceden en los sistemas LDAP.
Entradas
Los atributos definen las características de un usuario o elemento, mientras que una entrada describe al usuario o elemento enumerando todos sus atributos bajo un nombre. Por sí solos, los atributos tienen funciones limitadas. Tienes que asociar un atributo con una entrada antes de poder utilizarlo por completo.
Árbol de información de datos (DIT)
Dentro de un sistema LDAP, los datos definidos por atributos representan solo una fracción de la información disponible de un objeto. La información restante se puede obtener de la ubicación de la entrada dentro del sistema LDAP y de las relaciones que sugiere su ubicación. Por ejemplo, si tiene una entrada para «Elementos de inventario» y otra para «personas», los datos ingresados en cada una de ellas proporcionarán una mejor idea de lo que representa cada entrada.
Cada entrada en un sistema LDAP se configura como ramas en Árboles de Información de Datos (DIT). Dado que cada entrada en un árbol LDAP puede simbolizar casi cualquier cosa, los usuarios usan principalmente entradas para mantener las cosas organizadas.
Esquemas
El esquema es una construcción en la que las clases de objetos y las definiciones de atributos relacionados entran en la misma categoría. Un DIT puede tener varios esquemas no relacionados para generar las entradas y atributos que necesita.
LDAP es un protocolo fácil de implementar para consolidar información dentro de su organización. También sirve como un concentrador central para la autenticación. Puede recopilar y guardar información de usuario en un directorio LDAP. Cada vez que una aplicación habilitada para LDAP necesita parte de la información almacenada, consulta automáticamente el directorio para recuperarla.
Otra ventaja es que LDAP es de código abierto y compatible con varios sistemas operativos, incluidos sistemas basados en Windows y Unix. A continuación, incluimos algunos recursos y preguntas frecuentes, incluida una publicación de blog sobre cómo funciona la autenticación LDAP con Sensu Go.
Preguntas frecuentes
¿Qué es un servidor LDAP?
Un servidor LDAP, también llamado Agente de Sistema de directorios (DSA), se ejecuta en el sistema operativo Windows y Unix/Linux. Almacena nombres de usuario, contraseñas y otras identidades de usuario principales. Utiliza estos datos para autenticar a los usuarios cuando recibe solicitudes o consultas y comparte las solicitudes con otros DSA. Varias aplicaciones y servicios pueden conectarse a un servidor a la vez para validar usuarios.
¿Cómo actúa LDAP?
LDAP es un protocolo multiplataforma para la autenticación a través de servicios de directorio. También proporciona el lenguaje de comunicación que utilizan las aplicaciones para conectarse a otros servidores de servicios de directorio. Estos servicios de directorio albergan nombres de usuario, contraseñas y cuentas de computadora, y proporcionan esa información a los usuarios de la red que lo soliciten.
Imagine LDAP como una enorme guía telefónica virtual. Abrir la guía telefónica le da acceso a un gran directorio de información de contacto para varias personas, incluidos sus nombres de usuario y contraseñas. Con LDAP, puede verificar fácilmente las credenciales de los usuarios cuando intentan acceder a la base de datos de su organización.
¿Qué es una cuenta LDAP?
La cuenta LDAP es una aplicación en línea para administrar diferentes tipos de cuentas almacenadas en un directorio LDAP. La cuenta ofrece a los usuarios una vista abstracta de un directorio, lo que facilita a las personas que no son conocedoras de la tecnología la administración de los datos LDAP.
¿Cuál es la diferencia entre LDAP y Active Directory?
Active Directory (AD) es la base de datos de servicios de directorio que se utiliza para almacenar datos, autenticación y directivas de una organización, mientras que LDAP es el protocolo para comunicarse con el AD.
En resumen, AD funciona con LDAP y la combinación de las dos aplicaciones mejora la administración de acceso.
¿LDAP es seguro?
La autenticación LDAP proporciona seguridad estándar con una capa integrada de administración de acceso. Actores maliciosos pueden escuchar durante la transmisión de datos entre Active Directory y los clientes. Optimice la seguridad agregando cifrado SSL / TLS al proceso de autenticación LDAP, lo que hace que la información transmitida durante el proceso de autenticación sea menos vulnerable al cifrar las comunicaciones.
El puerto LDAP predeterminado utilizado para la autenticación (Puerto 389) no tiene su propia seguridad. Cree una conexión segura agregando extensiones de seguridad, como la extensión LDAPv3 TLS o el modo StartTLS.
¿Cómo realizar consultas en LDAP?
Las consultas LDAP facilitan la búsqueda de equipos, usuarios, grupos y otros objetos dentro de Active Directory. LDAP extrae información de AD con la ayuda de una consulta simple basada en cadenas. También puede usar utilidades, como scripts ldapsearch, PowerShell o VBS para ejecutar consultas.
SAML vs LDAP
LDAP y SAML son protocolos de autenticación que ayudan a las aplicaciones a acceder a los recursos de TI. SAML envía información de usuario a su proveedor de identidades y a otras aplicaciones en línea, mientras que LDAP facilita la autenticación local y otros procesos de servidor.
La mayoría de las organizaciones combinan el uso de SAML, LDAP y otros protocolos de autenticación para acceder a diversos tipos de recursos de TI y alcanzar sus objetivos empresariales.
Kerberos vs LDAP
Kerberos es un protocolo de inicio de sesión único y autenticación para administrar credenciales de forma segura. Permite que un proceso se conecte a un servidor de autenticación y proporciona tickets firmados y cifrados para acceder a archivos, aplicaciones y otros recursos.
LDAP, por otro lado, facilita el acceso a OpenLDAP, Active Directory y otros directorios. Autentica las conexiones mediante la comprobación cruzada de nombres de usuario y contraseñas almacenados en el directorio LDAP. Como Kerberos es más seguro que LDAP y LDAP tiene más funciones que Kerberos, la mayoría de las organizaciones utilizan ambos protocolos.