Active Directory en GLPI 11: login, perfil por grupo y el empleado dado de baja que sigue activo

Conectamos un AD de laboratorio a GLPI 11: importación en 1,4 s, perfil por grupo del AD y login con la contraseña de red. El hallazgo: por defecto, quien se desactiva en el AD sigue activo en GLPI, y la estrategia solo vale en la primera detección.

En este artículo8 secciones

Conectamos un Active Directory de laboratorio a un GLPI 11: 7 usuarios importados en 1,4 segundos, cada uno con el perfil correcto según su grupo del AD e inicio de sesión con la contraseña de la red. Hasta aquí, todo como se esperaba. El problema apareció cuando dimos de baja a un empleado en el AD: en GLPI, siguió activo, con el mismo perfil. Y cambiar la configuración después no lo resolvió, porque GLPI solo aplica la regla de baja la primera vez que detecta la salida.

¿Usa Microsoft Entra ID (Azure AD) y quiere inicio de sesión único en el navegador? Vea SSO con Microsoft Entra ID en GLPI. Este artículo trata del AD local, por LDAP.

Qué hace la integración con el AD

  • Inicio de sesión con la contraseña de la red: el usuario entra en GLPI con el mismo usuario y contraseña de Windows. La contraseña nunca se guarda en GLPI.
  • Importación de datos: nombre, apellido, correo electrónico, teléfono, cargo y otros campos vienen del AD.
  • Perfil por grupo: las reglas de autorización asignan el perfil y la entidad según el grupo del AD (técnico, responsable, usuario).
  • Sincronización: los cambios en el AD, como un cambio de teléfono, de cargo o una baja, llegan a GLPI mediante la sincronización programada.

El laboratorio

Montamos un controlador de dominio Samba (compatible con Active Directory) con el dominio ACME.TEST, la empresa ficticia Acme, tres grupos (GLPI-Tecnicos, GLPI-Gestores, GLPI-Usuarios) y ocho usuarios: siete activos y uno desactivado en una OU de bajas. Del otro lado, un GLPI 11.0.7 de pruebas.

Paso 1: el directorio LDAP

En Configuración > Autenticación > Directorios LDAP:

Campo Qué usamos Por qué
Servidor y puerto el controlador de dominio, 389 (636 con LDAPS) En producción, prefiera LDAPS o StartTLS
BaseDN OU=Acme,DC=acme,DC=test Empiece en la OU de las personas, no en la raíz del dominio
RootDN y contraseña una cuenta de servicio de solo lectura Nunca la cuenta de un administrador
Filtro de conexión (&(objectClass=user)(objectCategory=person)(!(userAccountControl:1.2.840.113556.1.4.803:=2))) Solo personas y solo cuentas activas
Campo de usuario samaccountname El login corto de Windows
Campo de sincronización objectguid No cambia si el usuario cambia de nombre o de OU
Grupos tipo de búsqueda "En usuarios", atributo memberof Para usar el grupo del AD en las reglas

El botón Probar comprueba la conexión antes de importar nada.

Paso 2: el perfil según el grupo del AD

En Administración > Reglas > Reglas de asignación de autorizaciones, una regla por grupo:

Si el usuario vino de este directorio y memberOf contiene Recibe el perfil En la entidad
CN=GLPI-Tecnicos, Technician la de la empresa
CN=GLPI-Gestores, Supervisor la de la empresa
CN=GLPI-Usuarios, Self-Service la de la empresa

Las autorizaciones asignadas por regla son dinámicas: si la persona sale del grupo en el AD, el perfil se retira en la siguiente sincronización.

Paso 3: importar y sincronizar

Desde la pantalla (Importar nuevos usuarios) o desde la línea de comandos, que es lo que sirve para programar:

php bin/console ldap:synchronize_users --ldap-server-id=1 --deleted-user-strategy=1,0,1

En el laboratorio, la importación trajo los 7 usuarios activos en 1,4 segundos, y el desactivado quedó fuera por el filtro. Nombre, correo electrónico y teléfono vinieron del AD, y cada uno recibió el perfil de su grupo. El inicio de sesión con la contraseña del AD funcionó, y con la contraseña incorrecta fue denegado.

Cuatro escenarios de empleado desactivado en el AD: con el predeterminado y con la estrategia configurada después, la cuenta sigue activa; con la estrategia 1,0,1 desde la primera sincronización, se desactiva; reactivado en el AD, vuelve a estar activo
GLPI aplica la acción para usuarios eliminados del LDAP solo la primera vez que detecta la salida. Laboratorio NexTool, 4/10/2026.

Qué pasó cuando dimos de baja a un empleado

Desactivamos un usuario en el AD y ejecutamos la sincronización, primero con la configuración predeterminada.

Prueba Resultado en GLPI
Dado de baja en el AD, sincronización predeterminada GLPI detecta la salida, pero no hace nada: usuario activo, mismo perfil
Mismo usuario, siguiente sincronización con "deshabilitar" Nada cambia: ya había sido marcado como eliminado del LDAP
Otro usuario dado de baja, ya con "deshabilitar" en la primera sincronización Usuario desactivado y perfiles dinámicos retirados
Usuario reactivado en el AD, sincronización con "habilitar" Vuelve a estar activo

Dos conclusiones:

  1. Lo predeterminado en GLPI es no hacer nada con quien sale del AD (estrategia "0,0,0"). Un exempleado sigue con la cuenta activa en GLPI hasta que alguien se dé cuenta.
  2. La estrategia se aplica en el momento en que GLPI detecta la salida. Si la primera sincronización se ejecutó con lo predeterminado, cambiar la configuración después no alcanza a quienes ya fueron marcados. Hay que tratar a esos usuarios manualmente.

Configure la acción para usuarios eliminados del LDAP antes de la primera sincronización (en Configuración > Autenticación, o con --deleted-user-strategy en el comando). La combinación que recomendamos es "1,0,1": deshabilitar la cuenta, mantener los grupos (para el historial) y retirar las autorizaciones dinámicas.

Para el regreso, la estrategia de restauración "3" vuelve a habilitar la cuenta cuando la persona se reactiva en el AD.

Un detalle sobre el perfil predeterminado

Todos los usuarios importados recibieron también el perfil predeterminado de GLPI (en nuestro caso, Self-Service), además del perfil de la regla. Para los técnicos, esto no estorba, pero aparece en el cambio de perfil. Si no lo quiere, revise cuál es el perfil predeterminado de GLPI antes de importar.

Checklist

  1. Cuenta de servicio de solo lectura para el RootDN.
  2. LDAPS o StartTLS en producción.
  3. BaseDN en la OU de las personas y filtro que excluya las cuentas desactivadas.
  4. objectguid como campo de sincronización.
  5. Reglas de autorización por grupo del AD, con entidad definida.
  6. Acción para usuarios eliminados del LDAP configurada antes de la primera sincronización ("1,0,1").
  7. Sincronización programada (cron) con ldap:synchronize_users, al menos diaria.
  8. Prueba con un usuario ficticio: crear, cambiar de grupo, dar de baja y reactivar en el AD, y comprobar GLPI en cada paso.

¿Necesita ayuda con la integración o con la auditoría de accesos? Hable con el equipo. Para entender perfiles y permisos, vea perfiles y permisos en GLPI.


Prueba de NexTool el 4 de octubre de 2026: controlador de dominio Samba (compatible con Active Directory) con usuarios ficticios y GLPI 11.0.7 de pruebas. El laboratorio se eliminó al final. Comportamiento de la sincronización comprobado en el propio comando de GLPI.

Preguntas Frecuentes

En Configuración > Autenticación > Directorios LDAP, registra el controlador de dominio, la BaseDN, una cuenta de servicio de solo lectura, el filtro de conexión y samaccountname como campo de usuario. Luego importa los usuarios y crea reglas de autorización por grupo del AD.

Crea reglas de asignación de autorizaciones con el criterio memberOf que contenga el grupo del AD y acciones que asignen el perfil y la entidad. Las autorizaciones por regla son dinámicas y siguen al grupo.

Por defecto, nada: GLPI detecta la salida, pero la cuenta sigue activa con el mismo perfil. Configura la acción para usuarios eliminados del LDAP, idealmente desactivar la cuenta y quitar las autorizaciones dinámicas (1,0,1), antes de la primera sincronización.

Porque GLPI aplica la estrategia solo la primera vez que detecta la salida. Los usuarios ya marcados como eliminados del LDAP no se reprocesan y hay que tratarlos a mano.

Programa en el cron el comando php bin/console ldap:synchronize_users con el servidor LDAP y la estrategia de usuarios eliminados, al menos una vez al día.

Comentarios

Los comentarios de esta publicación vienen de GitHub (giscus). Al cargarlos, tu navegador se conecta a GitHub, que recibe tu dirección IP y puede guardar sus propias cookies.

Para cargarlos automáticamente, activa las cookies funcionales

?Necesitas ayuda?