Wiki Linkat

Autenticació de Moodle amb LDAP

De Wiki Linkat

Autentiació de Moodle amb el servei LDAP de Linkat:

Un dels avantatges que té el servidor Linkat és que disposa d'un servei LDAP que pot fer-se servir, a més a més, per autenticar els usuaris dels aplicatius PHP. Un d'aquests aplicatius és Moodle [1].

Per tal que Moodle faci ús del servei LDAP del servidor Linkat cal modificar el fitxer:

moodle/auth/ldap/auth.php

S'ha d'editar aquest fitxer i incloure les línies:

           // ******* AFEGIT XTEC
            if (!$ldap_user_dn) {
              if (!empty($this->config->bind_dn)){
                $binddn = 'uid='.$extusername.','.$this->config->bind_dn;
                $ldap_user_dn=$binddn;
              }
            }
            // ******* FINAL

dins de la funció:

    function user_login($username, $password) {

just després de la línia:

    $ldap_user_dn = $this->ldap_find_userdn($ldapconnection, $extusername);

El fitxer auth.php quedarà de la forma següent un cop s'hagin incorporat les línies que fan referència a l'afegir XTEC:

       $ldapconnection = $this->ldap_connect();
        if ($ldapconnection) {
            $ldap_user_dn = $this->ldap_find_userdn($ldapconnection, $extusername);

            // ******* AFEGIT XTEC
            if (!$ldap_user_dn) {
              if (!empty($this->config->bind_dn)){
                $binddn = 'uid='.$extusername.','.$this->config->bind_dn;
                $ldap_user_dn=$binddn;
              }
            }
            // ******* FINAL

Un cop fetes aquestes modificacions, cal configurar Moodle perquè es comuniqui amb el servei LDAP.

En el fitxer següent Media:Configuracio_ldap_moodle.pdf es mostra la configuració del mòdul LDAP de moodle per tal que es comuniqui correctament amb el servidor Linkat.

Els punts a destacar són:


URL del servidor: ldap://192.168.0.20

(cal canviar-la per la IP del vostre servidor)

Contextos: ou=people,dc=intracentre

(en el cas que la configuració del LDAP no fos dc=intracentre, caldria canviar la part corresponent al dc, deixant intacte la part de la unitat organitzativa ou=people).

Atribut usuari: uid

Amb aquestes dades, Moodle ja és capaç de comunicar-se amb el servidor LDAP i autenticar usuaris. No obstant, la primera vegada que l'usuari entri a Moodle, li demanarà les seves dades (nom, cognoms) i el correu electrònic. Això pot representar un inconvenient si el que es vol és que l'usuari entri directament al sistema.

Per evitar això es poden definir els camps següents dins de l'apartat Mapatge de dades:

Nom

Cognoms

Correu electrònic

De forma predeterminada, aquests camps es troben buits. Tot i que l'assignació que es proposa tot seguit no és correcta (en sentit estricte), pot resultar útil per tal de facilitar l'entrada a moodle. La proposta que es fa, i que després l'alumne pot modificar, és assignar aquests camps al valor cn. cn conté el nom i cognom de l'alumne. El servei LDAP del centre no emmagatzema, a priori, el correu electrònic de l'alumne per la qual cosa, i donat que és una pràctica estesa assignar un correu electrònic fictici a l'alumne, es proposa assignar el valor cn també al camp del correu electrònic amb la finalitat que l'alumne ho pugui canviar posteriorment.

Nota: Gràcies Albert i Sara (Servei TAC) per haver fet possible aquesta recepta.