Diferencia entre revisiones de «SIU-Guarani/version3.16.0/interfaces/moodle sso»

De SIU
Saltar a: navegación, buscar
m
m
 
(No se muestran 10 ediciones intermedias del mismo usuario)
Línea 1: Línea 1:
 
__NOTOC__
 
__NOTOC__
==<big>SSO Moodle</big> ==
+
==<big>Single Sign-On (SSO) con Moodle</big> ==
 +
 
 +
'''<big>NOTA: SIU-Guaraní 3.16 se probó con Moodle 3.4 y 3.5, no se garantiza de que funcione correctamente con otras versiones de este último.</big>'''
  
 
===<big>En Moodle</big>===
 
===<big>En Moodle</big>===
Línea 17: Línea 19:
 
<big>2) Configurar el plugin '''User key authentication'''</big>
 
<big>2) Configurar el plugin '''User key authentication'''</big>
  
<big>Ir a ''Administración del sitio => Extensiones => Vista general de extensiones'', y luego hacer click en la opción '''Configuración''' de dicho plugin:</big><gallery widths="913" heights="409">
+
<big>Ir a ''Administración del sitio => Extensiones => Gestionar identificación,'' y habilitar el plugin (haciendo click en el '''icono del ojo'''):</big>
 +
 
 +
<gallery widths="1224" heights="437">
 +
Archivo:Moodle - Gestionar identificación.png|Moodle - Gestionar identificación
 +
</gallery><big>Ir a ''Administración del sitio => Extensiones => Vista general de extensiones'', y luego hacer click en la opción '''Configuración''' de dicho plugin:</big><gallery widths="913" heights="409">
 
Archivo:Moodle - Vista general de extensiones.png|Moodle - Vista general de extensiones
 
Archivo:Moodle - Vista general de extensiones.png|Moodle - Vista general de extensiones
 
</gallery><big>El campo '''Mapping field''' debe tener el valor '''Número de ID''' :</big><gallery widths="1220" heights="870">
 
</gallery><big>El campo '''Mapping field''' debe tener el valor '''Número de ID''' :</big><gallery widths="1220" heights="870">
Línea 23: Línea 29:
 
</gallery>
 
</gallery>
  
<big>3) Crear un nuevo '''servicio'''</big><gallery widths="1226" heights="421">
+
<big>3) Agregar la función '''auth_userkey_request_login_url''' para el servicio creado en el punto 3) de [http://documentacion.siu.edu.ar/wiki/SIU-Guarani/version3.16.0/interfaces/moodle Interfaz SIU-Guaraní - Moodle]</big>
Archivo:Moodle - Crear servicio.png|Moodle - Crear servicio
 
</gallery>    <big>La opción '''Habilitado''' debe estar marcada, de lo contrario la opción '''Únicamente usuarios autorizados''' debe estar desmarcada.</big>
 
 
 
<br>
 
<big>4) Agregar '''funciones''' para el '''servicio''' creado en el punto 3 (hacer click en el link marcado el violeta)</big><gallery widths="1223" heights="591">
 
Archivo:Moodle - Funciones.png|Moodle - Funciones
 
</gallery><gallery widths="1224" heights="517">
 
Archivo:Moodle - Agregar Funciones.png|Moodle - Agregar Funciones
 
</gallery><big>Se deben agregar las siguientes funciones que '''Guaraní''' requiere para comunicarse con '''Moodle''':</big>
 
* <big>core_webservice_get_site_info</big>
 
* <big>core_course_get_categories</big>
 
* <big>core_course_get_courses</big>
 
* <big>core_course_get_courses_by_field</big>
 
* <big>core_enrol_get_enrolled_users</big>
 
* <big>core_enrol_get_users_courses</big>
 
* <big>core_user_create_users</big>
 
* <big>enrol_manual_enrol_users</big>
 
* <big>enrol_manual_unenrol_users</big>
 
* <big>auth_userkey_request_login_url</big>
 
* <big>core_course_create_courses</big>
 
* <big>core_course_import_course</big>
 
 
 
<big>5) Definir un rol para los '''Servicios Web'''</big>
 
  
<big>Ir a ''Administración del sitio => Usuarios => Definir roles'', luego crear un nuevo rol para '''Servicios web'''.</big><gallery widths="1220" heights="786">
+
<big>Ir a ''Administración del sitio => Extensiones => Servicios externos''</big><gallery widths="1220" heights="592">
Archivo:Moodle - Definir roles.png|Moodle - Definir roles
+
Archivo:Moodle - Funciones bis.png|Moodle - Funciones
 
</gallery>
 
</gallery>
  
<big>Dicho rol debe contar con las siguientes '''capacidades''': ''webservice:createtoken'' y ''webservice/rest:use''.</big><gallery widths="953" heights="234">
+
<big>Hacer click en '''Funciones''' y luego en '''Agregar funciones''':</big><gallery widths="1221" heights="477">
Archivo:Moodle - webservice createtoken.png|Moodle - webservice:createtoken
+
Archivo:Moodle - Agregar Funciones bis.png|Moodle - Agregar Funciones
</gallery><gallery widths="1115" heights="344">
 
Archivo:Moodle - webservice rest use.png|Moodle - webservice/rest:use
 
</gallery><big>6) Crear un usuario y asignarle el rol creado en el '''punto 5'''</big>
 
 
 
<br>
 
<big>Ir a  ''Administración de sitio => Usuarios => Asignar roles globales''. Luego asignar el rol creado en el punto 5.</big><gallery widths="1223" heights="293">
 
Archivo:Moodle - Asignar roles globales.png|Moodle - Asignar roles globales
 
 
</gallery>
 
</gallery>
  
<big>7) Crear un '''token''' para el usuario creado en el '''punto 6'''</big>
+
<big>Finalmente se debe agregar la función '''auth_userkey_request_login_url.'''</big>
<br>
 
<big>Ir a  ''Administración del sitio => Extensiones => Administrar tokens''. Elija el '''usuario''' creado en el '''punto 6''' y el '''servicio''' creado en el '''punto 3'''.</big> <gallery widths="838" heights="450">
 
Archivo:Moodle - Crear token.png|Moodle - Crear token
 
</gallery><big>8) Probar que funcionen los '''Servicios Web'''</big>
 
  
<br>
+
<big>4) Agregar la capacidad '''auth/userkey:generatekey''' al usuario de '''Servicios web'''</big>
<big>Una vez creado el '''token''', lo podemos obtener en la pantalla '''Administrar tokens'''.</big><gallery widths="1220" heights="392">
 
Archivo:Moodle - Administrar tokens.png|Moodle - Administrar tokens
 
</gallery><big>Para probar que todo funcione bien acceder a la siguiente URL: '''<URL-MOODLE>'''/webservice/rest/server.php?wstoken='''<TOKEN>'''&moodlewsrestformat=json&wsfunction=core_webservice_get_site_info</big>.
 
  
<big>Donde '''<URL-MOODLE>''' es la URL base de la instalación de Moodle, ej: http://www.ejemplo.edu.ar/moodle.</big>
+
<big>Ir a ''Administración del sitio => Usuarios => Definir roles'', luego seleccionar el rol para '''Servicios web''' (hacer click en configuración).</big><gallery widths="1220" heights="786">
 
+
Archivo:Moodle - Definir roles.png|Moodle - Definir roles
<big>Y '''<TOKEN>''' seria el recién creado, en nuestro ejemplo seria '''9d27d581881b1cfed9f0d644540ab044'''.</big>
+
</gallery><big>Luego agregar la capacidad '''auth/userkey:generatekey''':</big><gallery widths="1097" heights="318">
 
+
Archivo:Moodle - auth-userkey-generatekey.png|Moodle - auth/userkey:generatekey
<big>Dicho Servicio Web debería devolver un '''JSON''' con información de Moodle. En caso de dar error, revisar los pasos anteriores.</big>
 
 
 
===<big>En SIU-Guaraní Gestión</big>===
 
<big>Ir a la operación '''Administrar Configuración del Sistema''', y crear una nueva '''Plataforma de Educación Virtual'''.</big>  
 
 
 
<big><br>1) Datos Principales</big><gallery widths="949" heights="627">
 
Archivo:Administrar Configuración del Sistema - Datos Principales.png|Administrar Configuración del Sistema - Datos Principales
 
</gallery>Datos a completar:
 
* '''Nombre:''' Nombre que va a tener la plataforma.
 
* '''Host:''' Host donde se encuentra la instalación de Moodle, es la URL base. Ej: http://www.ejemplo.edu.ar/moodle.
 
* '''Activa:''' Si la plataforma esta activa o no.
 
* '''URL:''' Segmento de la URL de Moodle donde se encuentran los Servicios Web. Para Moodle 3.4.1 es /webservice/rest/server.php.
 
* '''Usuario:''' Usuario de Moodle. Puede ser cualquier texto, solo a modo descriptivo.
 
* '''Token:''' Es el token que creamos previamente. Ej: 9d27d581881b1cfed9f0d644540ab044.
 
* '''Responsables Académicas:''' Responsables Académicas que van a hacer uso de dicho Moodle.
 
Se puede hacer click en el botón '''Probar Configuración''' para saber si los valores son correctos y se pudo conectar con Moodle.
 
 
 
<big>2) Roles de Usuarios</big>
 
 
 
<big>Se deben vincular los '''perfiles de Alumnos y Docentes''' de Guaraní con los '''Roles de Moodle'''.</big><gallery widths="950" heights="504">
 
Archivo:Administrar Configuración del Sistema - Roles de Usuarios.png|Administrar Configuración del Sistema - Roles de Usuarios
 
</gallery><big>Debido a que '''Moodle no provee ningún Servicio Web para saber los roles''' que posee, la única forma es ingresando a la operación ''Administración del sitio => Usuarios =>  Definir roles''.</big><gallery widths="1225" heights="792">
 
Archivo:Moodle - Definir roles bis.png|Moodle - Definir roles
 
</gallery><big>Al hacer click sobre el rol se podrá ver el '''ID''' del mismo en la '''URL'''.</big><gallery widths="644" heights="42">
 
Archivo:Moodle - Rol URL bis.png|Moodle - Rol URL
 
</gallery><big>'''NOTA:''' Si no se asigna algún '''rol de Moodle''' a una '''responsabilidad docente de Guaraní''', a la hora de matricular al docente en Moodle no se sabrá que rol asignar, por lo tanto '''NO se matriculará'''. '''Recordar asignar roles a todos las responsabilidades docentes de Guaraní.'''</big>
 
 
 
<big>3) Categorías de Cursos</big>
 
 
 
<big>Aquí se selecciona la '''categoría por defecto''' con la que se crearan los cursos en la operación '''Generar Cursos Virtuales Masivamente'''.</big><gallery widths="949" heights="160">
 
Archivo:Administrar Configuración del Sistema - Categorías de Cursos.png|Administrar Configuración del Sistema - Categorías de Cursos
 
 
</gallery>
 
</gallery>

Revisión actual del 10:24 17 ene 2019

Single Sign-On (SSO) con Moodle

NOTA: SIU-Guaraní 3.16 se probó con Moodle 3.4 y 3.5, no se garantiza de que funcione correctamente con otras versiones de este último.

En Moodle

Aquí veremos como configurar para que una persona desde Guaraní se pueda loguear en Moodle.

1) Descargar e instalar el plugin User key authentication de Moodle

Se debe descargar desde este enlace. Una vez descargado dicho plugin (archivo ZIP), ir al siguiente apartado de Moodle e instalarlo: Administración del sitio => Extensiones => Instalar módulos externos.

2) Configurar el plugin User key authentication

Ir a Administración del sitio => Extensiones => Gestionar identificación, y habilitar el plugin (haciendo click en el icono del ojo):

Ir a Administración del sitio => Extensiones => Vista general de extensiones, y luego hacer click en la opción Configuración de dicho plugin:El campo Mapping field debe tener el valor Número de ID :

3) Agregar la función auth_userkey_request_login_url para el servicio creado en el punto 3) de Interfaz SIU-Guaraní - Moodle

Ir a Administración del sitio => Extensiones => Servicios externos Hacer click en Funciones y luego en Agregar funciones:

Finalmente se debe agregar la función auth_userkey_request_login_url.

4) Agregar la capacidad auth/userkey:generatekey al usuario de Servicios web

Ir a Administración del sitio => Usuarios => Definir roles, luego seleccionar el rol para Servicios web (hacer click en configuración).Luego agregar la capacidad auth/userkey:generatekey: