13
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

Pecha Kucha #mootes14 - Moodle como servidor OAuth para autenticar usuarios desde sistemas externos

Embed Size (px)

Citation preview

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