IntegracionMoodleShibboleth
Versión 8 (Emilio Penna, Miércoles, 13 de Mayo de 2020 17:09:08 -0300)
1 | 1 | h1. Integración de Moodle con Shibboleth |
|
---|---|---|---|
2 | 1 | ||
3 | 1 | ||
4 | 1 | h3. 1. Pasos previos: |
|
5 | 1 | ||
6 | 1 | 1.1 Instalación de Shibboleth SP |
|
7 | 1 | ||
8 | 2 | Emilio Penna | Referencias: |
9 | 1 | ||
10 | 7 | Emilio Penna | * https://www.proyectos.udelar.edu.uy/redmine/projects/idp-pub/wiki/SPInstall |
11 | 2 | Emilio Penna | * https://www.switch.ch/aai/guides/sp/installation/ |
12 | 2 | Emilio Penna | * https://wiki.shibboleth.net/confluence/display/SP3/Home |
13 | 1 | ||
14 | 2 | Emilio Penna | 1.2 Configuración básica de Shibboleth sp, obtención de atributos, prueba con script PHP de test. |
15 | 2 | Emilio Penna | |
16 | 5 | Emilio Penna | https://www.proyectos.udelar.edu.uy/redmine/projects/idp-pub/wiki/SPConfig |
17 | 6 | Emilio Penna | |
18 | 8 | Emilio Penna | Para realizar una prueba, se puede crear un script php para verificar que quede protegido, y ver los atributos recibidos por el IdP. |
19 | 6 | Emilio Penna | Ver un ejemplo en la sección de "Integración de aplicaciones php" en: |
20 | 6 | Emilio Penna | https://www.proyectos.udelar.edu.uy/redmine/projects/idp-pub/wiki/IntegracionApp1 |
21 | 6 | Emilio Penna | |
22 | 2 | Emilio Penna | |
23 | 1 | h3. 2. Configuración de Apache |
|
24 | 1 | ||
25 | 1 | Proteger el directorio moodle/auth/shibboleth/index.php con Shibboleth. |
|
26 | 1 | ||
27 | 1 | En Apache debe definirse una regla como la siguiente: |
|
28 | 1 | ||
29 | 1 | <pre> |
|
30 | 1 | <Directory /path/to/moodle/auth/shibboleth/index.php> |
|
31 | 1 | AuthType shibboleth |
|
32 | 1 | ShibRequireSession On |
|
33 | 1 | require valid-user |
|
34 | 1 | </Directory> |
|
35 | 1 | </pre> |
|
36 | 1 | ||
37 | 2 | Emilio Penna | Si se utiliza un reverse proxy debe agregarse: ShibUseHeaders On |
38 | 1 | ||
39 | 1 | h3. 3. Configuración de moodle |
|
40 | 2 | Emilio Penna | |
41 | 2 | Emilio Penna | Ingresar en moodle como administrador, ir a la página de gestión de autenticación. |
42 | 2 | Emilio Penna | |
43 | 2 | Emilio Penna | En moodle 3.8: |
44 | 2 | Emilio Penna | |
45 | 2 | Emilio Penna | (Administración del sitio >> Extensiones >> Identificación >> Gestionar identificación) |
46 | 2 | Emilio Penna | |
47 | 2 | Emilio Penna | Habilitar la opción Shibooleth, ir a configuración. |
48 | 2 | Emilio Penna | |
49 | 2 | Emilio Penna | En los ejemplos siguientes se utiliza un reverse proxy, y por eso los atributos se propagan como headers y tienen el prefijo "HTTP_". Si no se usa un reverse proxy, los atributos estan disponibles sin ese prefijo. |
50 | 2 | Emilio Penna | |
51 | 2 | Emilio Penna | |
52 | 2 | Emilio Penna | * Nombre de usuario: HTTP_UID |
53 | 2 | Emilio Penna | * URL del manejador de salida del Proveedor de Servicios Shibboleth: https://<nombreservidor>.udelar.edu.uy/Shibboleth.sso/Logout |
54 | 2 | Emilio Penna | * URL alternativa de cierre de sesión: >>> REVISAR |
55 | 2 | Emilio Penna | |
56 | 2 | Emilio Penna | |
57 | 2 | Emilio Penna | *Mapeado de datos:* |
58 | 2 | Emilio Penna | |
59 | 2 | Emilio Penna | * Nombre: |
60 | 2 | Emilio Penna | ** Mapeo de datos (Nombre): HTTP_UDELARPERSONNOMBRE1 |
61 | 2 | Emilio Penna | ** Actualizar local (Nombre): Al crearse |
62 | 2 | Emilio Penna | ** Bloquear valor (Nombre): Bloqueado |
63 | 2 | Emilio Penna | |
64 | 2 | Emilio Penna | * Apellido: |
65 | 2 | Emilio Penna | ** Mapeo de datos (Apellido(s)): HTTP_UDELARPERSONAPELLIDO1 |
66 | 2 | Emilio Penna | ** Actualizar local (Apellido(s)): Al crearse |
67 | 2 | Emilio Penna | ** Bloquear valor (Apellido(s)): Bloqueado |
68 | 2 | Emilio Penna | |
69 | 2 | Emilio Penna | * Email: |
70 | 2 | Emilio Penna | ** Mapeo de datos (Dirección de correo): HTTP_MAIL |
71 | 2 | Emilio Penna | ** Actualizar local (Dirección de correo): Al crearse |
72 | 2 | Emilio Penna | ** Bloquear valor (Dirección de correo): Desbloqueado |
73 | 4 | Emilio Penna | |
74 | 4 | Emilio Penna | |
75 | 4 | Emilio Penna | Ref: |
76 | 4 | Emilio Penna | https://moodle.org/auth/shibboleth/README.txt |