1. Metode de autentificare ˆın Moodle
Moodle Moot Romˆania 2013
Radu Dumbr˘aveanu
Universitatea de Stat “A. Russo” din B˘alt, i, Republica Moldova
Bras, ov, 2013
R. Dumbr˘aveanu Metode de autentificare
4. Cuprins
Plugin-uri Moodle de autentificare
Autentificare folosind LDAP
Autentificarea unic˘a ˆın sistem (SSO - Single Sign-On)
R. Dumbr˘aveanu Metode de autentificare
5. Introducere
Cu cˆıt mai mult timp utilizezi Moodle descoperi atˆıt avantajele cˆıt
s, i limitele acestei platforme.
R. Dumbr˘aveanu Metode de autentificare
6. Introducere
Cu cˆıt mai mult timp utilizezi Moodle descoperi atˆıt avantajele cˆıt
s, i limitele acestei platforme.
Cˆınd limitele nu pot fi “s, terse” cu ajutorul plugin-urilor se ajunge
la ideea de a operat, ionaliza Moodle cu alte instrumente digitale de
ˆınv˘at, are.
R. Dumbr˘aveanu Metode de autentificare
7. Instrumente digitale de ˆınv˘at, are utilizate ˆın cadrul USARB
R. Dumbr˘aveanu Metode de autentificare
8. Instrumente digitale de ˆınv˘at, are utilizate ˆın cadrul USARB
R. Dumbr˘aveanu Metode de autentificare
9. Instrumente digitale de ˆınv˘at, are utilizate ˆın cadrul USARB
R. Dumbr˘aveanu Metode de autentificare
10. Instrumente digitale de ˆınv˘at, are utilizate ˆın cadrul USARB
R. Dumbr˘aveanu Metode de autentificare
11. Instrumente digitale de ˆınv˘at, are utilizate ˆın cadrul USARB
http://elearning.usarb.md
R. Dumbr˘aveanu Metode de autentificare
12. O problem˘a a unei astfel de abord˘ari
Majoritatea instrumentele digitale necesit˘a autentificarea
individual˘a a utilizatorilor.
R. Dumbr˘aveanu Metode de autentificare
13. O problem˘a a unei astfel de abord˘ari
Majoritatea instrumentele digitale necesit˘a autentificarea
individual˘a a utilizatorilor.
Respectiv
administratorul este nevoit s˘a creeze aceleas, i conturi pentru
fiecare sistem
R. Dumbr˘aveanu Metode de autentificare
14. O problem˘a a unei astfel de abord˘ari
Majoritatea instrumentele digitale necesit˘a autentificarea
individual˘a a utilizatorilor.
Respectiv
administratorul este nevoit s˘a creeze aceleas, i conturi pentru
fiecare sistem
pe de alt˘a parte utilizatorii sˆınt nevoit, i s˘a memoreze zeci de
parole
R. Dumbr˘aveanu Metode de autentificare
15. O problem˘a a unei astfel de abord˘ari
Majoritatea instrumentele digitale necesit˘a autentificarea
individual˘a a utilizatorilor.
Respectiv
administratorul este nevoit s˘a creeze aceleas, i conturi pentru
fiecare sistem
pe de alt˘a parte utilizatorii sˆınt nevoit, i s˘a memoreze zeci de
parole
modificarea parolei trebuie f˘acut˘a ˆın toate sistemele
R. Dumbr˘aveanu Metode de autentificare
16. O problem˘a a unei astfel de abord˘ari
Majoritatea instrumentele digitale necesit˘a autentificarea
individual˘a a utilizatorilor.
Respectiv
administratorul este nevoit s˘a creeze aceleas, i conturi pentru
fiecare sistem
pe de alt˘a parte utilizatorii sˆınt nevoit, i s˘a memoreze zeci de
parole
modificarea parolei trebuie f˘acut˘a ˆın toate sistemele
etc
R. Dumbr˘aveanu Metode de autentificare
17. O problem˘a a unei astfel de abord˘ari
Majoritatea instrumentele digitale necesit˘a autentificarea
individual˘a a utilizatorilor.
Respectiv
administratorul este nevoit s˘a creeze aceleas, i conturi pentru
fiecare sistem
pe de alt˘a parte utilizatorii sˆınt nevoit, i s˘a memoreze zeci de
parole
modificarea parolei trebuie f˘acut˘a ˆın toate sistemele
etc
etc
R. Dumbr˘aveanu Metode de autentificare
18. Plugin-uri de autentificare
Link pentru desc˘arcare:
http:
//moodle.org/plugins/browse.php?list=category&id=21
Documentat, ie:
http://docs.moodle.org/23/en/Authentication
R. Dumbr˘aveanu Metode de autentificare
19. Plugin-uri de autentificare
Manual accounts
Email-based
self-registration
No login
External database
CAS server (SSO)
FirstClass server
IMAP server
LDAP server
Moodle Network authentication
NNTP server
No authentication
PAM (Pluggable Authentication
Modules)
POP3 server
RADIUS server
Shibboleth
Web services authentication
R. Dumbr˘aveanu Metode de autentificare
23. LDAP (Lightweight Directory Acces Protocol)
este un standard (protocol) pentru accesarea s, i modificarea
informat, iei din serviciile de directoare
R. Dumbr˘aveanu Metode de autentificare
24. LDAP (Lightweight Directory Acces Protocol)
este un standard (protocol) pentru accesarea s, i modificarea
informat, iei din serviciile de directoare
director = colect, ie de intr˘ari/ˆınregistr˘ari cu atribute
R. Dumbr˘aveanu Metode de autentificare
25. LDAP (Lightweight Directory Acces Protocol)
este un standard (protocol) pentru accesarea s, i modificarea
informat, iei din serviciile de directoare
director = colect, ie de intr˘ari/ˆınregistr˘ari cu atribute
ˆınregistr˘arile (baza de date) sˆınt organizate ierarhic
R. Dumbr˘aveanu Metode de autentificare
26. LDAP (Lightweight Directory Acces Protocol)
este un standard (protocol) pentru accesarea s, i modificarea
informat, iei din serviciile de directoare
director = colect, ie de intr˘ari/ˆınregistr˘ari cu atribute
ˆınregistr˘arile (baza de date) sˆınt organizate ierarhic
baza de date LDAP se numes, te Directory Information Tree
(DIT)
R. Dumbr˘aveanu Metode de autentificare
27. LDAP (Lightweight Directory Acces Protocol)
este un standard (protocol) pentru accesarea s, i modificarea
informat, iei din serviciile de directoare
director = colect, ie de intr˘ari/ˆınregistr˘ari cu atribute
ˆınregistr˘arile (baza de date) sˆınt organizate ierarhic
baza de date LDAP se numes, te Directory Information Tree
(DIT)
este optimizat pentru citire s, i are posibilitatea de interogare;
R. Dumbr˘aveanu Metode de autentificare
28. LDAP (Lightweight Directory Acces Protocol)
este un standard (protocol) pentru accesarea s, i modificarea
informat, iei din serviciile de directoare
director = colect, ie de intr˘ari/ˆınregistr˘ari cu atribute
ˆınregistr˘arile (baza de date) sˆınt organizate ierarhic
baza de date LDAP se numes, te Directory Information Tree
(DIT)
este optimizat pentru citire s, i are posibilitatea de interogare;
o ˆınregistrare poate avea un set de atribute asociate
R. Dumbr˘aveanu Metode de autentificare
29. LDAP (Lightweight Directory Acces Protocol)
este un standard (protocol) pentru accesarea s, i modificarea
informat, iei din serviciile de directoare
director = colect, ie de intr˘ari/ˆınregistr˘ari cu atribute
ˆınregistr˘arile (baza de date) sˆınt organizate ierarhic
baza de date LDAP se numes, te Directory Information Tree
(DIT)
este optimizat pentru citire s, i are posibilitatea de interogare;
o ˆınregistrare poate avea un set de atribute asociate
displayName=Radu
R. Dumbr˘aveanu Metode de autentificare
30. LDAP (Lightweight Directory Acces Protocol)
este un standard (protocol) pentru accesarea s, i modificarea
informat, iei din serviciile de directoare
director = colect, ie de intr˘ari/ˆınregistr˘ari cu atribute
ˆınregistr˘arile (baza de date) sˆınt organizate ierarhic
baza de date LDAP se numes, te Directory Information Tree
(DIT)
este optimizat pentru citire s, i are posibilitatea de interogare;
o ˆınregistrare poate avea un set de atribute asociate
displayName=Radu
mail=radu.dumbraveanu@moodle.md
R. Dumbr˘aveanu Metode de autentificare
31. LDAP (Lightweight Directory Acces Protocol)
este un standard (protocol) pentru accesarea s, i modificarea
informat, iei din serviciile de directoare
director = colect, ie de intr˘ari/ˆınregistr˘ari cu atribute
ˆınregistr˘arile (baza de date) sˆınt organizate ierarhic
baza de date LDAP se numes, te Directory Information Tree
(DIT)
este optimizat pentru citire s, i are posibilitatea de interogare;
o ˆınregistrare poate avea un set de atribute asociate
displayName=Radu
mail=radu.dumbraveanu@moodle.md
ˆınregistr˘arile sˆınt de dou˘a tipuri: containere s, i frunze
R. Dumbr˘aveanu Metode de autentificare
32. LDAP (Lightweight Directory Acces Protocol)
este un standard (protocol) pentru accesarea s, i modificarea
informat, iei din serviciile de directoare
director = colect, ie de intr˘ari/ˆınregistr˘ari cu atribute
ˆınregistr˘arile (baza de date) sˆınt organizate ierarhic
baza de date LDAP se numes, te Directory Information Tree
(DIT)
este optimizat pentru citire s, i are posibilitatea de interogare;
o ˆınregistrare poate avea un set de atribute asociate
displayName=Radu
mail=radu.dumbraveanu@moodle.md
ˆınregistr˘arile sˆınt de dou˘a tipuri: containere s, i frunze
ˆınregistr˘arile container cont, in alte containere s, i/sau frunze
R. Dumbr˘aveanu Metode de autentificare
33. Exemplu de Directory Information Tree
dc=md
dc=usarb
dc=elearning
ou=Grupe
cn=Profesori cn=Studenti
ou=Utilizatori
cn=Radu cn=Ghenadie cn=Vasile
R. Dumbr˘aveanu Metode de autentificare
34. Exemplu de Directory Information Tree
dc - Domain Component, ou - Organizational Unit,
cn - Common Name
dc=md
dc=usarb
dc=elearning
ou=Grupe
cn=Profesori cn=Studenti
ou=Utilizatori
cn=Radu cn=Ghenadie cn=Vasile
R. Dumbr˘aveanu Metode de autentificare
35. LDAP
arborele are form˘a liber˘a, fiecare s, i-l poate organiza dup˘a voie
R. Dumbr˘aveanu Metode de autentificare
36. LDAP
arborele are form˘a liber˘a, fiecare s, i-l poate organiza dup˘a voie
atributele sˆınt determinate de tipul intr˘arii (objectClass)
acestea la rˆındul lor sˆınt descrise ˆın scheme
R. Dumbr˘aveanu Metode de autentificare
37. LDAP
arborele are form˘a liber˘a, fiecare s, i-l poate organiza dup˘a voie
atributele sˆınt determinate de tipul intr˘arii (objectClass)
acestea la rˆındul lor sˆınt descrise ˆın scheme
poate fi utilizat pentru realizarea unui sistem “single sing-on”
(SSO)
R. Dumbr˘aveanu Metode de autentificare
38. LDAP
arborele are form˘a liber˘a, fiecare s, i-l poate organiza dup˘a voie
atributele sˆınt determinate de tipul intr˘arii (objectClass)
acestea la rˆındul lor sˆınt descrise ˆın scheme
poate fi utilizat pentru realizarea unui sistem “single sing-on”
(SSO)
single sign-on = utilizatorul se autentific˘a ˆın sistemul SSO cu
credent¸ialele proprii, apoi orice acces ulterior la servicii este
automat autentificat de c˘atre sistemul SSO, f˘ar˘a intervent¸ia
manual˘a a utilizatorului
R. Dumbr˘aveanu Metode de autentificare
39. Configurarea plugin-ului LDAP Server
ˆInainte de a trece la configurare verificat, i dac˘a este ˆınc˘arcat˘a
extensia PHP pentru LDAP.
Se poate verifica prin
http://<MOODLE_SITE>/admin/phpinfo.php.
R. Dumbr˘aveanu Metode de autentificare
41. Configurarea plugin-ului LDAP Server
Sect, iuni din pagina de configurare:
LDAP server settings
Host URL: Numele sau adresa IP a serverului LDAP
R. Dumbr˘aveanu Metode de autentificare
42. Configurarea plugin-ului LDAP Server
Sect, iuni din pagina de configurare:
LDAP server settings
Host URL: Numele sau adresa IP a serverului LDAP
Host URL=localhost
R. Dumbr˘aveanu Metode de autentificare
43. Configurarea plugin-ului LDAP Server
Bind settings
Hide passwords: yes/no (yes=“Ascunde parola de Moodle“,
adic˘a ˆımpiedic˘a ca parolele utilizatorilor LDAP se p˘astreaz˘a ˆın
BD Moodle)
R. Dumbr˘aveanu Metode de autentificare
44. Configurarea plugin-ului LDAP Server
Bind settings
Hide passwords: yes/no (yes=“Ascunde parola de Moodle“,
adic˘a ˆımpiedic˘a ca parolele utilizatorilor LDAP se p˘astreaz˘a ˆın
BD Moodle)
Hide password = no
R. Dumbr˘aveanu Metode de autentificare
45. Configurarea plugin-ului LDAP Server
Bind settings
Hide passwords: yes/no (yes=“Ascunde parola de Moodle“,
adic˘a ˆımpiedic˘a ca parolele utilizatorilor LDAP se p˘astreaz˘a ˆın
BD Moodle)
Hide password = no
Distinguished name: Contul utilizatorului din LDAP ”din
numele“ c˘aruia vor fi efectuate interog˘arile
R. Dumbr˘aveanu Metode de autentificare
46. Configurarea plugin-ului LDAP Server
Bind settings
Hide passwords: yes/no (yes=“Ascunde parola de Moodle“,
adic˘a ˆımpiedic˘a ca parolele utilizatorilor LDAP se p˘astreaz˘a ˆın
BD Moodle)
Hide password = no
Distinguished name: Contul utilizatorului din LDAP ”din
numele“ c˘aruia vor fi efectuate interog˘arile
Distinguished name =
cn=readonly,dc=elearning,dc=usarb,dc=md
R. Dumbr˘aveanu Metode de autentificare
47. Configurarea plugin-ului LDAP Server
Bind settings
Hide passwords: yes/no (yes=“Ascunde parola de Moodle“,
adic˘a ˆımpiedic˘a ca parolele utilizatorilor LDAP se p˘astreaz˘a ˆın
BD Moodle)
Hide password = no
Distinguished name: Contul utilizatorului din LDAP ”din
numele“ c˘aruia vor fi efectuate interog˘arile
Distinguished name =
cn=readonly,dc=elearning,dc=usarb,dc=md
Password:
R. Dumbr˘aveanu Metode de autentificare
48. Configurarea plugin-ului LDAP Server
User lookup settings
Contexts: ˆınregistrarea LDAP care cont, ine conturile de
utilizator
R. Dumbr˘aveanu Metode de autentificare
49. Configurarea plugin-ului LDAP Server
User lookup settings
Contexts: ˆınregistrarea LDAP care cont, ine conturile de
utilizator
Contexts = ou=Utilizatori,dc=elearning,dc=usarb,dc=md
R. Dumbr˘aveanu Metode de autentificare
50. Configurarea plugin-ului LDAP Server
User lookup settings
Contexts: ˆınregistrarea LDAP care cont, ine conturile de
utilizator
Contexts = ou=Utilizatori,dc=elearning,dc=usarb,dc=md
Search subcontexts: yes/no
R. Dumbr˘aveanu Metode de autentificare
51. Configurarea plugin-ului LDAP Server
User lookup settings
Contexts: ˆınregistrarea LDAP care cont, ine conturile de
utilizator
Contexts = ou=Utilizatori,dc=elearning,dc=usarb,dc=md
Search subcontexts: yes/no
User attribute: (opt, ional) cn sau uid
R. Dumbr˘aveanu Metode de autentificare
52. Configurarea plugin-ului LDAP Server
Force change password
Force change password: yes/no
R. Dumbr˘aveanu Metode de autentificare
53. Configurarea plugin-ului LDAP Server
Data mapping
First name, Surname, Email address, City/town, Country,
Language etc.
R. Dumbr˘aveanu Metode de autentificare
54. Configurarea plugin-ului LDAP Server
Data mapping
First name, Surname, Email address, City/town, Country,
Language etc.
First name=displayName, Surname=sn, Email address=mail,
City/town=l, Country=c etc.
R. Dumbr˘aveanu Metode de autentificare
55. Configurarea plugin-ului LDAP Server
Data mapping
First name, Surname, Email address, City/town, Country,
Language etc.
First name=displayName, Surname=sn, Email address=mail,
City/town=l, Country=c etc.
Update local (On creation, On every login)
Update external (Never, On update)
Lock value (Unlocked, Unlocked if empty, Locked)
R. Dumbr˘aveanu Metode de autentificare
56. Sincronizarea conturilor cu LDAP
<DOSARUL_MOODLE>/auth/ldap/cli/sync_users.php
R. Dumbr˘aveanu Metode de autentificare
57. LDAP s, i SSO
LDAP nu este un sistem SSO.
R. Dumbr˘aveanu Metode de autentificare
58. LDAP s, i SSO
LDAP nu este un sistem SSO.
LDAP poate fi utilizat ca o component˘a a unui sistem SSO.
R. Dumbr˘aveanu Metode de autentificare
59. CAS server (SSO)
CAS Server (de Jasig) + LDAP = sistem SSO.
R. Dumbr˘aveanu Metode de autentificare
60. CAS server (SSO)
CAS Server (de Jasig) + LDAP = sistem SSO.
CAS Server
CAS Server este un servlet Java care poate fi desc˘arcat de pe
http://www.jasig.org/cas
Jasig este un consort, ium global de institut, ii de ˆınv˘at, ˘amˆınt s, i
companii comerciale afiliate care sponsorizeaz˘a proiecte Open
Source importante pentru ˆınv˘at, ˘amˆıntul superior.
CAS = Central Authentication Service
CAS este un protocol SSO pentru web
R. Dumbr˘aveanu Metode de autentificare
62. Configurarea plugin-ului CAS server (SSO)
Prima sect, iune (presupunem c˘a adresa serverul CAS este
https://localhost:8443/cas):
R. Dumbr˘aveanu Metode de autentificare
63. Configurarea plugin-ului CAS server (SSO)
Prima sect, iune (presupunem c˘a adresa serverul CAS este
https://localhost:8443/cas):
CAS server configuration
Hostname: numele sau adresa IP a calculatorului pe care
ruleaz˘a CAS Server
R. Dumbr˘aveanu Metode de autentificare
64. Configurarea plugin-ului CAS server (SSO)
Prima sect, iune (presupunem c˘a adresa serverul CAS este
https://localhost:8443/cas):
CAS server configuration
Hostname: numele sau adresa IP a calculatorului pe care
ruleaz˘a CAS Server
Hostname = localhost
R. Dumbr˘aveanu Metode de autentificare
65. Configurarea plugin-ului CAS server (SSO)
Prima sect, iune (presupunem c˘a adresa serverul CAS este
https://localhost:8443/cas):
CAS server configuration
Hostname: numele sau adresa IP a calculatorului pe care
ruleaz˘a CAS Server
Hostname = localhost
Base URI: calea (path) din adresa serverului CAS
R. Dumbr˘aveanu Metode de autentificare
66. Configurarea plugin-ului CAS server (SSO)
Prima sect, iune (presupunem c˘a adresa serverul CAS este
https://localhost:8443/cas):
CAS server configuration
Hostname: numele sau adresa IP a calculatorului pe care
ruleaz˘a CAS Server
Hostname = localhost
Base URI: calea (path) din adresa serverului CAS
Base URI = /cas
R. Dumbr˘aveanu Metode de autentificare
67. Configurarea plugin-ului CAS server (SSO)
Prima sect, iune (presupunem c˘a adresa serverul CAS este
https://localhost:8443/cas):
CAS server configuration
Hostname: numele sau adresa IP a calculatorului pe care
ruleaz˘a CAS Server
Hostname = localhost
Base URI: calea (path) din adresa serverului CAS
Base URI = /cas
Port: portul SSL asociat serverului CAS
R. Dumbr˘aveanu Metode de autentificare
68. Configurarea plugin-ului CAS server (SSO)
Prima sect, iune (presupunem c˘a adresa serverul CAS este
https://localhost:8443/cas):
CAS server configuration
Hostname: numele sau adresa IP a calculatorului pe care
ruleaz˘a CAS Server
Hostname = localhost
Base URI: calea (path) din adresa serverului CAS
Base URI = /cas
Port: portul SSL asociat serverului CAS
de obicei este 8443 (portul SSL standard pentru Tomcat) sau
443
R. Dumbr˘aveanu Metode de autentificare
69. Configurarea plugin-ului CAS server (SSO)
Celelalte sect, iuni sˆınt sect, iuni standard din configurarea plugin-ul
LDAP server:
R. Dumbr˘aveanu Metode de autentificare
70. Configurarea plugin-ului CAS server (SSO)
Celelalte sect, iuni sˆınt sect, iuni standard din configurarea plugin-ul
LDAP server:
LDAP server settings
Bind settings
etc.
R. Dumbr˘aveanu Metode de autentificare
71. Pagin˘a de autentificare unic˘a pentru Moodle s, i celelalte
aplicat, ii
R. Dumbr˘aveanu Metode de autentificare
72. Comentarii legate de CAS server (SSO)
Un sistem SSO bazat pe CAS Server necesit˘a:
infrastructur˘a hardware adecvat˘a (costuri ridicate, personal
calificat)
R. Dumbr˘aveanu Metode de autentificare
73. Comentarii legate de CAS server (SSO)
Un sistem SSO bazat pe CAS Server necesit˘a:
infrastructur˘a hardware adecvat˘a (costuri ridicate, personal
calificat)
mentenant, ˘a (personal calificat)
R. Dumbr˘aveanu Metode de autentificare
74. Comentarii legate de CAS server (SSO)
Un sistem SSO bazat pe CAS Server necesit˘a:
infrastructur˘a hardware adecvat˘a (costuri ridicate, personal
calificat)
mentenant, ˘a (personal calificat)
ˆIn cazul cˆınd nu este posibil˘a dezvoltarea unei infrastructuri pentru
LDAP sau CAS Server as, recomanda plugin-urile External
database sau Moodle Network authentication MNet.
R. Dumbr˘aveanu Metode de autentificare
75. Credits
Imaginile-puzzle au fost create cu ajutorul aplicat, iei
http://bighugelabs.com/jigsaw.php.
R. Dumbr˘aveanu Metode de autentificare