Login por email en Alfresco Share

Recientemente, en el contexto de un proyecto, nos han solicitado la posibilidad de autenticarse en Alfresco a través del mail de usuario, y no del username, para un directorio de usuarios openLDAP. En este directorio de usuarios, se centralizarian los usuarios externos a la organización, mientras que los usuarios internos estarían gestionados en un directorio de usuarios (Directorio Activo) independiente.


La solución técnica de la autenticación requiere de dos pequeños desarrollos:

  • Por un lado, debemos/podemos modificar el subsistema de autenticación de usuarios por defecto de Alfresco para openLDAP de manera que desde java podamos hacer una búsqueda en el openLDAP por mail, identificar el usuario y enviar correctamente sus credenciales (este tipo de modificaciones ya las hemos hecho aquí en otras ocasiones, con motivo del conector de CIFS para openLDAP). Por supuesto este mail debe ser único en el directorio de usuarios externo.
  • Además de esto, es necesario controlar las variables de sesión de Share.


Este sistema permite hacer login tanto con el mail como con el nombre de usuario del openLDAP. Y una vez logueado con el email, el usuario visualizará la interfaz como si lo hubiese realizado con el usuario de LDAP.                   

Por otro lado, hemos realizado una serie de modificaciones en las búsquedas de usuarios de Alfresco Share para adaptarlo a estos usuarios con mail como login:

  • En primer lugar, el buscador de personas tiene que ser capaz de buscar por mail.
  • La búsqueda de miembros de un sitio también se ha extendido para poder buscar por mail.
  • Las invitaciones de usuarios son ahora también buscables por mail.

El buscador de personas de Alfresco Share podría hacer búsquedas como esta:

Y en proceso de invitación de personas en SItios podríamos buscar también por email:


Por último, para gestionar invitaciones a los sitios de los usuarios externos (openLDAP), hemos desarrollado un pequeño módulo que permite agregarles desde Alfresco, creando el usuario en openLDAP si es necesario. Este módulo es similar al que proporciona Alfresco pero, utilizando un opeLDAP externo por un lado, y pudiendo asignar un rol definido, como en el caso de un usuario interno de Alfresco.


 

00

Más entradas de blog

Añadir comentarios