24/Red Moodle

De MoodleDocs
Revisión del 10:01 31 oct 2009 de Iñaki Arenaza (discusión | contribs.) (Tratar de enlazar a la imagen original en inglés.)

Moodle 1.8

Introducción

La Red Moodle es una característica nueva que se puede encontrar a partir de la versión 1.8 de Moodle. Esta característica permite a un administrador de Moodle establecer un enlace con otro Moodle, y compartir algunos recursos de ese otro Moodle.

La publicación inicial de la Red Moodle se acompaña de un nuevo plugin de autenticación que hace que sea posible el inicio de sesión único (single sign on) entre sitios Moodle. Un usuario con el nombre de usuario jody inicia la sesión en su servidor Moodle como de costumbre, y pincha en un enlace que le lleva a una página en otro servidor Moodle. En el caso habitual, jody debería tener sólo los privilegios del usuario invitado en el servidor Moodle remoto, pero entre bastidores la validación única ha establecido una sesión de autenticación completa en el sitio remoto.

¡ATENCIÓN! La Red Moodle necesita usar xmlrpc. Por ello es importante asegurarse de que su versión de PHP incluye el soporte adecuado de xmlrpc. Por favor, vaya a Administración >> Servidor >> Información PHP y verifique que en dicha página aparece la extensión XMLRPC (suele aparecer hacia el final de la página). Si no aparece dicho módulo es que su versión de PHP no ha sido compilada con dicha extensión y deberá recompilarla para incluirlo (o solicitar a su administrador de servidor o proveedor que lo haga por usted). En el momento de escribir esto, parece ser que PEAR xmlrpc no funcionará para la Red Moodle.

thumb|Ajustes de Red Moodle en Administracion >> USuarios >> Autenticación >> Autenticación de la Red Moodle

Seguridad

La característica de Red Moodle necesita que su servidor tenga las extensiones Curl y OpenSSL de PHP instaladas. Cuando instale o actualice a Moodle 1.8, su sistema creará un nuevo certificado OpenSSL para cifrar las comunicaciones con otros Moodle, y rotará las claves de cifrado una vez al mes (aproximadamente) a partir de ese momento.

La comunicación se lleva a cabo por medio de un transporte XML-RPC, y los documentos XML-RPC se envuelven primero en un sobre XMLDSIG (XML digital signature) y posteriormente en un sobre XMLENC (XML encryption). El cifrado se realiza completamente dentro de PHP y no se necesita un servidor https (Apache SSL).

Referencias:

Se puede habilitar un modo especial que permite a una máquina con una dirección IP específica hacer llamadas a la capa XML-RPC sin usar sobres ni de cifrado ni de firma. Se proporciona este modo para permitir a Moodle comunicar con otros sistemas software en los que la integración de las firmas y el cifrado pudiera ser excepcionalmente difícil. Sin embargo, no se prevee que nunca se llegue a habilitar la comunicación no cifrada entre sitios Moodle.

Red entre Iguales (Peer to Peer Network)

Esta es la disposición básica del sistema. Puede ser muy útil tener un sitio Moodle por facultad o departamento, cada uno con su gestión de usarios, y sin embargo permitir a los usuarios itinerar por diferentes sitios Moodle... por supuesto sujetos a los permisos de cada uno de ellos.

Instalación

Las instrucciones se referirán a dos instalaciones Moodle: MoodleA y MoodleB. Ambas están instaladas correctamente y nunca han tenido una configuración de Red Moodle con anterioridad.

Nota: Si tiene problemas durante la configuración y puesta en marcha de esta instalación, asegúrese de tener activada la depuración en Administración >> Servidor >> Depurando. De esta forma puede que aparezcan algunos mensajes de diagnóstico extra que ayuden a depurar el problema (especialmente a partir de la versión 1.9.2 de Moodle).

  1. Conseguir que se hablen entre ellos
    1. Asegúrese de que Admin > Servidor > Entorno indique que tiene instaladas las extensiones curl y openssl de PHP.
    2. Si MoodleA y MoodleB están alojados en el mismo dominio, asegúrese de que utilizan un prefijo de cookie diferente. Tenga en cuenta que cambiar el prefijo de la cookie ¡terminará su sesión actual! Puede cambiar el prefijo de la cookie a través de Admin > Servidor > Gestión de la sesión.
    3. En ambos sitios, vaya a Admin > Red > Ajustes y ponga la opción "Red" a "encendido".
    4. En el sitio MoodleA vaya a Admin > Red > Iguales - añada la URL del sitio MoodleB bajo "Agregar un nuevo servidor" y especifique que es de tipo "Moodle", y pulse "Agregar Servidor". La URL que hay que añadir tiene que ser exactamente el valor del ajuste $CFG->wwwroot del fichero config.php del sitio MoodleB. De lo contrario la conexión podrá no establecerse correctamente.
    5. Repita el proceso equivalente en el sitio MoodleB.
  2. Conseguir que los usuarios puedan recorrer los sitios
    1. En ambos sitios, vaya a Admin > Usuarios > Autenticación y habilite el plugin de autenticación "Autenticación de la Red Moodle". Pulse en "Configuración" y habilite "Añadir automáticamente usuarios remotos".
    2. En el sitio MoodleA vaya a Admin > Red > Iguales, pulse en "MoodleB" y pulse en "Servicios". Habilite publicar y suscribir bajo "SSO (Proveedor de Identidad)", así como publicar y suscribir en "SSO (Proveedor de Servicios).
    3. Repita el proceso equivalente en el sitio MoodleB.
    4. En ambos sitios, vaya a Admin > Usuarios > Permisos > Definir Roles. Sólo aquellos roles que tengan asignada el privilegio "Ir a un Moodle remoto moodle/site:mnetlogintoremote" podrán recorrer otros sitios. Conceda este privilegio a aquellos roles que crea conveniente.
    5. En ambos sitios, vaya a la página principal y añada el bloque "Servidores de Red".
    6. Para comprobar que todo lo anterior está operativo, se recomienda usar un navegador diferente (incluso en una máquina diferente) que no haya iniciado la sesión en ninguno de los dos sitios. Inicie la sesión en el sitio MoodleA con una cuenta que no sea de administrador y que tenga permisos para visitar sitios remotos. Debería ver el bloque "Servidores de Red", y pinchando en el enlace del sitio MoodleB debería ir a dicho sitio con una cuenta nueva autocreada en dicho sitio.
  3. Conseguir que funcionen las matriculaciones remotas -- Esto es opcional. Permite al administrador del sitio MoodleB matricular usuarios que son "nativos" del sitio MoodleB en cursos del sitio MoodleA, y viceversa.
    1. En ambos sitios, vaya a Admin > Cursos > Matriculaciones y habilite el plugin de matriculación "Red Moodle" (y no olvide pulsar en "Guardar cambios"). Pulse sobre "Editar" y habilite 'allow_allcourses', o seleccione algunos cursos o categorías en los que permitirá matriculaciones remotas.
    2. En el sitio MoodleA vaya a Admin > Red > Iguales, pinche en "MoodleB" y pinche en "Servicios". Habilite "publicar" y "suscribir" en "Matriculación en red de Moodle"
    3. Repita el proceso equivalente en el sitio MoodleB.
    4. Para usar la matriculación remota, en el sitio MoodleA vaya a Admin > Red > Matriculaciones. Verá listado el sitio MoodleB. Pinche en MoodleB y verá la lista de cursos que el sitio MoodleB ofrece para matriculación remota. Seleccione el curso que desee y a continuación matricule a los usuarios que desee en dicho curso.

Para usarlo

Simplemente pinche en los enlaces que aparecen en el bloque Servidores de Red para saltar a los sitios Moodle remotos configurados.

Conectarse a un Concentrador Comunitario (Community Hub)

Un Concentrador Comunitario es un servidor Moodle que está configurado para aceptar conexiones de otros servidores Moodle, y proporcionar un conjunto de servicios a los usuarios de estos otros servidores. Estas instrucciones le indicarán como conectarse a un Concentrador Comunitario, evaluar los servicios que ofrece y habilitar dichos servicios para sus usuarios.

Configuración

  1. Conseguir hablar con el Concentrador
    1. Asegúrese de que la página Admin > Servidor > Entorno indique que tiene instaladas las extensiones curl y openssl de PHP.
    2. Vaya a Admin > Red > Ajustes y ponga la opción "Red" a "encendido".
    3. Vaya a Admin > Red > Iguales e introduzca la URL del Concentrador Comunitario bajo "Agregar un nuevo servidor", y especifique que es de tipo "Moodle", y pulse "Agregar Servidor".
    4. Deberían aparecer los detalles del Concentrador Comunitario, con el campo "Nombre del sitio" ya relleno. Pulse en "Guardar cambios".
    5. Se guardarán los detalles en la base de datos y aparecerán dos nuevas pestañas en la ventana: "Servicios" e "Informes". Pulse en "Servicios".
    6. Aparecerá una lista de servicios, cada uno con sendas casillas de selección para "publicar" y "suscribir". Marque las casillas de los servicios que quiera publicar o a los que quiera suscribirse.

Como usarlo

Si el Concentrador Comunitario ya ha habilitado un servicio para usted, la casilla correspondiente ya aparecerá marcada. Por ejemplo, si el Concentrador publica el servicio "Matriculación de Red Moodle", entonces la casilla "suscribir" de dicho servicio aparecerá marcada. Nótese que para que habilitar ciertas funcionalidades, especialmente el inicio de sesión única, puede necesitar publicar ciertos servicios, en este ejemplo el servicio Proveedor de Identidad. El Concentrador Comunitario accederá a este servicio en su sitio Moodle, solicitándole que autentique a sus usuarios.

  1. Habilitar la itinerancia.
    1. Suscríbase a SSO (Proveedor de Servicios) marcando la casilla.
    2. Publique SSO (Proveedor de Identidad) marcando la casilla.
    3. Pulse en Guardar cambios.
    4. Vaya a Admin > Usuarios > Permisos > Definir Roles, y conceda el privilegio "Ir a un Moodle remoto moodle/site:mnetlogintoremote" a un rol apropiado.
    5. Vaya a Admin > Usuarios > Autenticación y habilite el plugin de autenticación Autenticación de la Red ('Moodle Network').
    6. Vaya a la portada, active la edición y añada el bloque "Servidores de Red".
    7. Usando un navegador diferente, inicie la sesión como un usuario no administrador que tenga asignado el rol al que concedió el privilegio de itinerancia.
    8. Fíjese que el Concentrador Comunitario aparece listado en el bloque "Servidores de Red" de la página principal. Pinche en el enlace de dicho servidor.
    9. Se enviarán algunos detalles de su usuario al servidor del Concentrador Comunitario y se iniciará una sesión en dicho servidor como si hubiera iniciado la sesión allí directamente.
  2. Habilitar la matriculación de red.
    1. Vuelva al navegador web que ha estado usando como administrador de su sitio Moodle local.
    2. Vaya a Admin > Red > Iguales y pinche en la entrada del Concentrador Comunitario.
    3. Pinche en la pestaña "Servicios".
    4. Subscríbase al servicio Matriculación en red de Moodle.
    5. Vaya a Admin > Cursos > Matriculaciones y habilite el plugin de matriculación Red Moodle. Pulse en Guardar cambios.
    6. Pinche en Editar para ver los detalles de las matriculaciones de red.
    7. Vaya a Admin > Red > Matriculaciones para ver la lista de servidores Moodle que le ofrecen este servicio.
    8. Pinche en el nombre de un servidor para ver la lista de cursos que ese servidor ofrece a sus usuarios.
    9. Pinche en un nombre de cursos para ver la lista de usuarios que puede matricular en ese curso concreto.
    10. Matricule a los usuarios.
    11. ¡Sáquele provecho!

Como ser un Concentrador Comunitario

Un Concentrador Comunitario es un sitio Moodle normal que se ejecuta en un modo especial. Como administrador de Moodle, cuando añade otro sitio Moodle a la lista de sus iguales, su sitio Moodle contactará con el sitio remoto para descubrir como se llama, y solicitar su clave pública para cifrar la comunicación. Habitualmente, el servidor remoto simplemente proporcionará esta información sin hacer ningún registro de la transacción.

Un Concentrador Comunitario es diferente. En cuanto añade una entrada en su sistema para un Concentrador Comunitario, el Concentrador Comunitario creará una entrada para su servidor en su propia lista de hosts, y puede comenzar inmediatamente a ofrecer servicios a los usuarios de su sitio.

Esta sección le guiará en la puesta en marcha de un Concentrador Comunitario, y a seleccionar qué servicios ofrecer a los sitos Moodle que lleguen al suyo.

Configuración

  1. Habilitar la Red.
    1. Asegúrese de que la página Admin > Servidor > Entorno indique que tiene instaladas las extensiones curl y openssl de PHP.
    2. Vaya a Admin > Red > Ajustes y ponga la opción "Red" a "encendido".
    3. Vaya a Admin > Red > Iguales y marque la casilla Registrar todos los hosts (modo Hub). Pinche en Guardar cambios.
    4. En la misma página, la primera entrada de la lista de hosts debería ser All hosts. Pinche en este enlace.
    5. Pinche en la pestaña Servicios y habilite los servicios que desee ofrecer a los sitios Moodle que lleguen al suyo.

Véase también

cs:Síťové služby