pecha kucha #mootes14 - moodle como servidor oauth para autenticar usuarios desde sistemas externos
TRANSCRIPT
Moodle como servidor OAuth para autenticar usuarios desde sistemas externos
Francesc Busquets @franbus [[email protected]]
Sara Arjona Téllez @sara_arjona [[email protected]]
20 de Diciembre de 2014
http://tinyurl.com/mootes14
El servicio Àgora● El servicio "Àgora" del Departament d'Ensenyament de la Generalitat
pone a disposición de los centros educativosdiversas plataformas basadasen software libre:○ Moodle + Marsupial○ Portal web e intranet de
centro, basadas en Zikula
● Actualmente más de 1.200 centros disponen de su propia plataforma Moodle en Àgora, y unos 400 utilizan también Intraweb.
● Durante el curso 2014/2015 se ha puesto en marcha una experiencia piloto (40 centros) del nuevo servicio "Nodes", de características similares a Intraweb perobasado en WordPress y BuddyPress.
Objetivos de Àgora-Nodes● Facilitar a los centros educativos la creación de un espacio web
propio con:○ Un sistema de publicación fácil, automático y personalizable.○ Un diseño gráfico atractivo, efectivo, accesible y adaptado a
dispositivos móviles y tablets.○ Herramientas de comunicación e interacción entre los
miembros de la comunidad educativa.○ Una estructura inicial para cada tipología de centro.
Extensiones de Àgora-Nodes● Extensiones y widgets incorporadas:
○ Validación de usuarios con Google Apps y Moodle○ Presentación de diapositivas (Galería multimedia)○ Integración con Google Calendar○ Red privada similar a Facebook, basada en BuddyPress○ ...
¿Por qué hace falta sistema de validación de usuarios "externo"?● El Departament d'Ensenyament no dispone todavia de un directorio
central de identidades digitales de los alumnos, por lo que cada centro se encarga de gestionar los identificadores de sus usuarios.○ Se proporcionan pautas para facilitar la importación de los
alumnos a Moodle desde la aplicación de gestión académica.
● Para no duplicar la gestión de usuarios, se ha integrado la autenticación de Moodle en WordPress, de manera que los usuarios pueden validarse directamente en "Nodes" mediante un sistema de Single Sign-On basado en OAuth.
¿Qué es OAuth?● OAuth (Open Authorization) es un estándar abierto que permite
autorización segura a través de una API simple para aplicaciones de escritorio, móviles y web:○ Proporciona a aplicaciones cliente un "acceso delegado
seguro" a los recursos del servidor en nombre del propietario.○ Especifica el procedimiento a seguir para que los propietarios
autoricen el acceso de terceros a sus recursos de servidor sin compartir sus credenciales.
Más información: http://en.wikipedia.org/wiki/OAuth
Mecanismos de validación en "Àgora-Nodes"
Los usuarios locales de WordPress introducen directamente su identificador y contraseña.● Requiere alta y gestión manual de
los usuarios
Otros usuarios no definidos en WordPress pueden hacer clic sobre el icono del sistema externo configurado con el que quieren validarse (Moodle o Google).
Acceso a "Nodes" con usuario Moodle
● Al hacer clic sobre el icono de Moodle, el sistema redirecciona a la pantalla de autenticación del espacio Moodle donde se deberà validar el usuario.○ Si es la primera vez que el usuario accede desde Nodes, una
vez esté validado en Moodle deberá autorizar a la aplicación Nodes.
Servidor y cliente OAuth
● Para incorporar a Àgora la autenticación basada en OAuth:○ Se ha implementado en Moodle un componente para que
actúe como servidor OAuth.○ Se han ampliado las funcionalidades del widget "WP Social
Login" para que Nodes actúe como cliente OAuth de Moodle.
Configuración servidor OAuth Moodle● Entrar como administrador/a al Moodle y acceder al apartado
Administración del sitio ► Servidor ► Configuración del proveedor de OAuth del bloque de Configuración.
● Añadir nuevo cliente indicando, entre otros, la URL de redirección del espacio Nodes.
● Copiar la clave secreta para cuando se configure Nodes.
Configuración cliente OAuth Nodes● Entrar como administrador/a a Nodes y acceder al apartado Parámetros |
WP Social Login.
● Activar la validación a través de Moodle y completar la información del formulario, indicando la información especificada al paso anterior al configurar Moodle como proveedor OAuth.
Código fuente● Servidor OAuth para Moodle:
○ Desarrollado por Pau Ferrer de UPCnet.○ https://github.com/projectestac/moodle-local_oauth
■ Este componente incorpora la librería OAuth de https://github.com/bshaffer/oauth2-server-php
● Cliente OAuth para Nodes (WordPress Social Login):○ Desarrollado por Pau Ferrer de UPCnet.○ https://github.com/projectestac/agora_nodes/tree/master/wp-
content/plugins/wordpress-social-login
● Proyecto Àgora:○ https://github.com/projectestac/agora
Moodle como servidor OAuth para autenticar usuarios desde sistemas externos
Muchas graciasMoltes gràcies
Thank you
Francesc Busquets @franbus [[email protected]]
Sara Arjona Téllez @sara_arjona [[email protected]]
20 de Diciembre de 2014
http://tinyurl.com/mootes14