Autentificarea prin federație
Se poate observa la selecția IdP din Sistem de access la depozutul național că verificarea identității utilizatorilor pentru accesul la resurse este asigurat prin intermediul federației RoEduNet. Acest sistem asigură un cadru unitar pentru accesul utilizatorilor la diverse resurse (nu doar AnelisPlus) prin federalizarea furnizorilor de identitate (Identity Provider - IdP) și a furnizorilor de servicii.
Sistemul de identitate federalizată este similar sistemelor de identitate clasice (exemplu pașaport) funcționând pe aceleași model adaptat mediului electronic; un pașaport este o acreditare a identității unei persoane. Astfel, un set de date (nume și parolă) este o acreditare a identității utilizatorului unui sistem electronic pentru accesul la anumite servicii. Identitatea unui utilizator poate fi verificată de către un sistem de autentificare care aparține instituției la care acesta este angajat sau cu care acesta are anumite relații contractuale. Există însă mai multe soluții folosite pentru realizarea sistemelor de autentificare în cadrul instituțiilor și, prin urmare este nevoie de un sistem intermediar (IdP) care să asigure o interfață unitară pentru acestea și gruparea lor într-o singură federație. Federația funcționează pe relații de încredere între furnizorii de identitate (IdP) și furnizorii de servicii (Service Providers - SP).
Pentru explicarea conceputului de federație și a relațiilor între instituțiile membre se folosește figura de mai jos.
Schema unei federații cu organizații membre.
Mai multe instituții pot oferi diverse servicii proprii (în figură SP = Service Provider – se referă la un singur serviciu) utilizatorilor proprii sau din alte instituții într-un cadru în care aceștia nu trebuie să aibă cont decât într-o singură instituție, cea cu care aceștia sunt în relații contractuale. Pentru mediul academic, fiecare instituție (Universitate, institut de cercetare, bibliotecă etc.) oferă un număr de servicii (de exemplu acces la depozitul instituțional) atât propriilor utilizatori cât și utilizatorilor altor instituții (acestea pot fi selectate de fiecare SP în parte) în cadrul federației. Se poate observa în figură că pot exista mai multe tipuri de instituții/organizații astfel: instituții care nu oferă servicii în federație dar au utilizatori proprii care pot avea acces la serviciile altor instituții dar și instituții care doar oferă servicii pentru alte instituții (exemplu AnelisPlus).
Federația este un grup de instituții/organizații care oferă IdP și servicii și care respectă un set comun de reguli. Trebuie precizat că o instituție poate face parte din mai multe federații folosind aceleași serviciu și același IdP (IdP și SP nu “știu” nimic despre federație).
Se poate observa din descrierea sistemului faptul că o federație a tuturor instituțiilor pentru educație și cercetare din România permite partajarea serviciilor oferite de fiecare membru (de exemplu: accesul personalului dintr-o instituție în rețeaua wireless a altei instituții, acces la depozitul instituțional) sau servicii comune (acces la depozitul național) într-un mod controlat în baza relațiilor de încredere între instituții. Un astfel de sistem este folosit la nivel european pentru acces la diverse resurse prin intermediul federațiilor la nivel național al membrilor, mediului academic și de cercetare dar și în mediul de afaceri; controlul accesului la servicii fiind stabilit la nivel instituțional sau chiar la nivel de furnizor de servicii iar controlul utilizatorilor fiind stabilit de către instituția de care aparține fiecare utilizator.
Câteva din avantajele unui astfel de sistem sunt:
- Nici un utilizator al instituțiilor membre ale unei federații nu trebuie să aibă cont la fiecare furnizor de servicii – contul folosit pentru autentificare la servicii este contul instituțional;
- Dreptul de acces la un anumit serviciu este administrat de către instituția care are relație cu acel furnizor – de exemplu accesul la depozitul instituțional al unei Universități poate fi aprobat pentru o serie de membri ai federației și nu neparat pentru toți;
- Relația utilizator-serviciu este intermediată de către instituția la care utilizatorul are cont și nu de către furnizorul de servicii, modificările relației utilizator-instituție fiind imediat reflectate în relația utilizator-serviciu – de exemplu un student are acces la resurse de informare plătite de către instituție pe perioada studenției, la sfârșitul acesteia contul studentului este șters/suspendat și automat accesul la acele resurse este întrerupt de către furnizor;
- Implementarea serviciului IdP este relativ simplă (conform instrucțiunilor de la Informații instalare IdP propriu);
- Informațiile confidențiale ale unui utilizator nu sunt partajate cu furnizorul de servicii, elementele necesare autentificării sunt transmise de acesta pe un canal criptat la IdP-ul instituției utilizatorului;
- Sistemul poate fi folosit și în interiorul unei instituții pentru a asigura accesul la anumite servicii propriilor utilizatori.
Federația RoEduNet a fost creată după modelul folosit la nivel european de comunitatea academică și de cercetare (activitate în cadrul proiectului GEANT). Pentru accesul în federație fiecare instituție trebuie să furnizeze un IdP propriu. Acest serviciu se poate construi folosind simpleSAMLphp și va pune la dispoziția Federației RoEduNet (după ce utilizatorul s-a autentificat) cel puțin următoarele atribute:
- nume de utilizator
- nume și prenume
- afiliere (numele instituției la care este afiliat)
- tipul de utilizator (angajat, oaspete, terț etc.)
- grupul din care face parte (dacă există)
- adresa de email
Toate atributele trebuie să fie luate din sistemul de evidență a utilizatorilor instituției; afilierea și grupul sunt atribute folosite pentru a diferenția serviciile la care un utilizator are acces, astfel un furnizor de servicii poate oferi servicii diferite la instituții diferite dar poate opta chiar pentru diferențierea la nivel de grup de utilizatori. Mai mult, în cadrul unei instituții anumite servicii pot fi oferite doar pentru anumite grupuri de utilizatori.