Objetivo

El objetivo del siguiente proyecto es el de lograr un sistema centralizado de autenticación, autorización y directorio de las personas de la organización. Para ello, se estudia emplear los siguientes protocolos:

  1. Autorización y Directorio: LDAP
    LDAP (Lightweight Directory Access Protocol) es un protocolo que permite el acceso a un servicio de directorio ordenado y distribuido para buscar diversa información en un entorno de red.
  2. Autenticación: CAS
    CAS (Central Authentication Service)[1] permite centralizar las credenciales del usuario para todos los procesos de login (GNU/Linux, Windows, Moodle, Drupal, SquirelMail, Samba...) permitiendo SSO (Single-sign-on) y persistencia en la autenticación (no pide el pwd de nuevo al cambiar de una aplicación a otra).
Este documento:
  • Describe la arquitectura actual y propone una futura arquitectura.
  • Plantea un plan de trabajo enumerando las tareas que habría que realizar.
  • Presenta los desarrollos que permitirían llevar a cabo esta tarea.
  • Recopila documentación con definiciones, estado del arte y howtos.

Comentario: Si una aplicación todavía no se ha CASificado, se sugiere emplear temporalmente autenticación contra el LDAP.

Plan de trabajo

Se plantea atacar el proyecto de forma progresiva realizando las siguientes tareas:

  1. Conocer experiencias similares
    • Otras Facultades o Servicios nacionales
    • Otras instituciones estatales
    • Otras Universidades de otros países (región, mundo entero)
  2. Diseñar sistema de autenticación centralizada.
  3. Instalar servidor OpenLDAP (configurar mecanismos de autorización) (Ver tarea #1175)
  4. Conectar con CAS (autenticación)
  5. Pruebas de Autorización: acceso a servicios según LDAP (Listado de aplicaciones)
  6. Pruebas de Integración: Single-Sign-On (Listado de servicios)
  7. Presentación del directorio (GOsa, Drupal, desarrollo?)
  8. Automodificación de los datos personales en el directorio (GOsa, Drupal, desarrollo própio?)
  9. Sincronización de perfiles y roles de usuario (Moodle, Drupal...)

Arquitectura de la organización

FIXME: aquí va un gráfico de todo lo que hay y otro de todo lo que habrá... y de como se relaciona entre si

FIXME: tenemos algo avanzado acá sobre los servicios de red (interno)

Diseño

  • Proyecto SAUCE (por ahora no hay versión pública)

Por resolver

  • Hacer un template para la creación de usuario eduPerson con PHPLDAPMyAdmin
  • Ver si vale la pena y cómo almacenar la cédula y/o número de funcionario en el directorio
  • Integración con SIAP

CAS: Integración con terceros

Gestores de contenidos (Drupal)

Comentario: Valorar en cada caso si no merece la pena unificar el uso de CMS.

EVA (Moodle)

Comentario: Valorar SSO con LDAP hasta migración a 2.0

Correo (Roundcube y/o Zimbra, Sympa )

Comentario: Valorar coexistencia de roundcube y zimbra.

Gestor documental (DMS)

Comentario: La implantación de Alfresco2 o OwnCloud se planteará como un proyecto a parte. Enlaces en

Monotorización (Zabix)

Comentario: Valorar si merece la pena integración con CAS de la herramienta de monitoreo.

Otros

Listado del directorio y datos de personas del LDAP.

Movido a: Drupal como herramienta de directorio

Listado de servicios

A continuación un listado de los servicios a integrar con el LDAP/CAS:

  1. Login en Windows
  2. Login en gnu/Linux
  3. Unidades de red (Samba o fuse)
  4. Impresoras en red (Samba u otro)
  5. Moodle
  6. Drupal
  7. Redmine
  8. Roundcube
  9. Software propio de la UdelaR
  10. Alfresco

Bibliografía: Referencias, Howto's, Módulos y enlaces

Bibliografía leída y sistematizada en Zotero: https://www.zotero.org/groups/ldap__sso

1 "CAS is "Single Sign-on for the Web" and is developed by JA-SIG in an open-source, collaborative manner. CAS is very beneficial in environments where a number of different web applications share a set of common users. If all the web applications were "CASified" a user would log in once and would then be able to move between the various web applications without ever having to present authentication credentials again"

2 Descripción Alfresco

Also available in: PDF HTML TXT