Az ETR felhasznlsa a Moodle autentikcijhoz a PTE















- Slides: 15
Az ETR felhasználása a Moodle autentikációjához a PTE FEEK-en Lukács Péter
WEBES LEVELEZÉS WIFI Probléma: hitelesítés mindenhol MOODLE TANULMÁNYI RENDSZER Cél: a szolgáltatásokhoz való hozzáférés megkönnyítése
Pécsett: Webes alkalmazások ETR hitelesítése (Nagy Ders) Lehetőségek: LDAP ? – A szerver oldali program kapcsolódni próbál a központi Active Directory szerverhez, és ha ez sikerül: a felhasználónév/jelszó páros helyesnek tekinthető. Hátránya a titkosítatlan kapcsolat (lehallgatható). LDAPS ? – titkosított a kapcsolat, de nehézkes a tanúsítványok kiadása és telepítése miatt.
A következő megoldás lett végül választva: • Az alkalmazás fejlesztője regisztráltatja alkalmazását az ETR szerveren levő adatbázisba. Ehhez elküldi azt a webcímet, ahonnan a felhasználó adatai érkeznek*, és ahová az autentikáció után a felhasználót küldeni kell**. • Ezek után kap egyedi alkalmazás-azonosítót. Ezzel hivatkozhat mindig saját adataira. • A szerver, amelyik a Moodle-t futtatja, elindít egy munkamenetet, majd a belépési oldal űrlapján keresztül bekéri a felhasználó adatait. Ezek titkosított csatornán (HTTPS) a munkamenet azonosítójával együtt az ETR szerverre kerülnek, ahol lefut az autentikáció, és a felhasználó adatai, az eredeti munkamenet-azonosító valamint a végeredmény visszaküldésre kerül.
Biztonságosabb, mint LDAP-on keresztül, ugyanis : 1. Az alkalmazást futtató szerver oldalán csak észrevehető módon tárolhatóak a felhasználó adatai 2. Az adatok a hálózaton titkosítva haladnak 3. Csak előre regisztrált alkalmazások használhatóak 4. Bármelyik oldalról nem lehet az autentikációt végző központi oldalt meghívni 5. A folyamatban levő autentikációt nem lehet megszakítani vagy egy újat a felénél elkezdeni (azt hazudni az alkalmazást kiszolgáló szervernek, hogy már megtörtént az autentikáció) a munkamenetek használata miatt.
Bemenetként a következő változókat várja: v ALK_ID : Alkalmazás azonosítója (regisztrációkor kapjuk) v SESSION_ID: az adott munkamenet azonosítója v LOGINNAME: felhasználói név v PWD: jelszó HTTPS MOODLE ETR AUTH SZERVER
Kimenetként az alábbi értékeket adja vissza: v. SESSION_ID: az adott munkamenet azonosítója v. LOGINNAME: felhasználói név v. SZEM_ID: EHA kód v. UID: felhasználói azonosító az ETR adatbázisban v. TIP: a felhasználó típusa v. TNEV: teljes név v. SZAKOK: Azon szakok megnevezése amelyen a felhasználó aktív v. RESULT: az autentikáció végeredménye HTTPS MOODLE ETR AUTH SZERVER
Az autentikációs modulokról: 2 állomány szükséges saját hitelesítő modulok működéséhez: config. html Az adminisztrátori oldalon az autentikációs modul konfigurációs felülete (űrlapokkal) lib. php A hitelesítési folyamat programkódja (a visszaadott érték a lényeg: igaz/hamis) + Szövegcimkék adott nyelvekre (lang/hu_utf 8/auth. php-ben)
A CONFIG. HTML leegyszerűsítve: <input name="auth_etraddress” … > <input name="auth_etralkid” … > $config->auth_etraddress $config->auth_etralkid
A LIB. PHP leegyszerűsítve: <? php . . function auth_user_login (…. ) { if (…feltétel…. ) { return true; // beléphet } return false; // nem léphet be } ? >
Hol tartunk jelenleg? • Az autentikáció működik • Első belépéskor a személyes profil megkapja a felhasználó család és keresztnevét
Mit szeretnénk még megoldani: • Örülnénk több/jobb adatnak (név legyen tagolva, e-mail cím, lakhely, stb. ) • Ha le tudnánk kérdezni hasonló módon a kurzusokat és a résztvevőiket is, össze lehetne házasítani egy már meglévő kurzusgenerátorral (kurzusok létrehozása ETR alapján). • Webes levelezés illesztése (php-alapú, pl: Telaen)
Köszönöm a figyelmet!