es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

ldapsearch: ¿Es posible incluir atributos de usuario vacíos o sin configurar en la salida/resultados?

Estimada comunidad de StackOverflow,
es hora de hacer mi primera pregunta (y tal vez estúpida) aquí 🙂

Actualmente tengo el siguiente problema y espero que alguno de ustedes pueda ayudarme:
por razones, tengo que consultar nuestro Active-Directory para obtener algunos datos de usuario y escribirlos en un archivo CSV en mi máquina Linux. Para la consulta, uso la utilidad ldapsearch. Básicamente, logré hacerlo funcionar y consultar los atributos de usuario que necesito. Ahora me enfrento al problema de que tengo usuarios que no tienen uno o más de los atributos consultados establecidos (por ejemplo, “othertelephone”). En este caso, ldapsearch no incluye estas atributo(s) vacíos en el resultado de la salida.
¿Existe alguna posibilidad de incluir todos los atributos consultados en la salida/resultados, incluso si no están establecidos o están vacíos? La razón por la que necesito esto es mantener un formato uniforme y limpio de la salida (para convertir fácilmente la salida en CSV más adelante). Por lo tanto, por ejemplo, si el atributo “othertelephone” está vacío, quiero que la salida sea así:


sn: abc
givenName: xyz
othertelephone:
memberOf: blablabla

en lugar de

sn: abc
givenName: xyz
memberOf: blablabla

Lamentablemente, no he encontrado ningún comando o switch de ldapsearch con el que pueda lograr esto. ¿Es posible hacerlo con ldapsearch o de qué otra manera puedo hacerlo? Estoy agradecido por cualquier sugerencia que puedan dar a un principiante.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Una posible solución para incluir atributos vacíos en la salida de ldapsearch es usar la opción -A o -E pr=ALL, que solicita que se devuelvan todos los atributos operativos. Los atributos operativos suelen ser utilizados por el servidor LDAP para almacenar metadatos sobre el objeto, como cuándo fue creado o modificado, su identificador único o su DN (nombre distinguido). Por defecto, estos atributos no se devuelven en una búsqueda a menos que se soliciten explícitamente, pero pueden contener información útil, especialmente para solucionar problemas o depurar.

    Para usar la opción -A con ldapsearch, simplemente agréguela a la línea de comando antes de la expresión del filtro, como en el siguiente ejemplo:

    ldapsearch -x -h tu.servidor.ad -D tu.usuario -W -b tu.basedn -A "(objectClass=user)" abc xyz othertelephone memberOf > usuarios.csv
    

    Esto incluirá todos los atributos operativos en la salida, incluidos los vacíos, que se representarán como una línea en blanco, como en el ejemplo anterior.

    Alternativamente, puedes usar la opción -E pr=ALL para solicitar todos los atributos operativos, pero también incluirlos en la salida regular, utilizando el especificador de formato especial %U en el filtro de búsqueda, como en el siguiente ejemplo:

    ldapsearch -x -h tu.servidor.ad -D tu.usuario -W -b tu.basedn -E pr=ALL "(&(objectClass=user)(|(sn=%U)(givenName=%U)(othertelephone=%U)(memberOf=%U)))" abc xyz othertelephone memberOf > usuarios.csv
    

    Esto incluirá todos los atributos regulares y operativos que coinciden con el filtro, incluso si están vacíos, y formateará la salida como un archivo CSV que se puede importar fácilmente en otras aplicaciones o herramientas. Por supuesto, debes ajustar el filtro y los atributos para que coincidan con tus necesidades específicas.

    Ten en cuenta que algunos servidores LDAP pueden no permitir la recuperación de todos los atributos operativos de forma predeterminada, o pueden requerir permisos o configuraciones especiales para hacerlo. Además, debes tener en cuenta que algunos atributos operativos pueden contener información confidencial o delicada que no debe divulgarse a personas no autorizadas. Siempre consulta con tu administrador LDAP y/o la política de seguridad antes de usar cualquier herramienta u opción de LDAP.

Comments are closed.