NeptunLdapSync

Az NIIF Intézet által fejlesztett szinkronizációs folyamat alkalmas arra, hogy Neptunban tárolt felhasználók (hallgatók, oktatók, dolgozók) adatait egy névtárba szinkronizálja. Természetesen lehetséges a névtárat más forrásokból is módosítani (pl. a dolgozói adatok sokhelyütt nem a Neptunban tárolódnak), ezzel a szinkronizációs program nem foglalkozik.

Az NIIF Intézet referencia implementációjának leírása itt található

Feltételezések

 * A Neptun tartalmazza az SDA által kifejlesztett szinkronizációs webservice-t (ezt jelen pillanatban az SDA-tól kérni kell)
 * A Neptun ezen kívül biztosít egy olyan webservice-t is, amely ellenőrizni tud egy neptunkódhoz tartozó jelszót (információink szerint ilyet néhány helyen biztosít az SDA)
 * Létezik egy vagy több - az intézmény által fejlesztett vagy üzembe állított - webes adminisztrációs alkalmazás, ahol a felhasználók a Neptun jelszavuk birtokában tudnak maguk számára
 * LDAP jelszót generálni (a neptunos jelszó nem szinkronizálódik az LDAP-ba)
 * LDAP jelszót megváltoztatni
 * LDAP azonosítót generálni (opcionális, az intézmény algoritmikusan generált azonosítókat is alkalmazhat)
 * további LDAP attribútumokat generáltatni (pl. levelezéshez, Unix bejelentkezéshez stb.)

Felhasználó életciklusa

 * 1) Neptun felhasználói bejegyzés létrehozása (részletek nélkül)
 * 2) Felhasználói adatok szinkronizálása az LDAP-ba
 * 3) LDAP jelszó aktiválása
 * 4) Neptun adatok változásának szinkronizációja
 * 5) * személyi adatok
 * 6) * státusz adatok
 * 7) * szervezeti kapcsolódás adatai
 * 8) * oktatási adatok
 * 9) (opcionális) POSIX attribútumok generálása
 * 10) (opcionális) Elfelejtett LDAP jelszó újragenerálása Neptun autentikáció után
 * 11) Neptun státusz adatok alapján passzív / kilépett státuszba helyezés
 * 12) LDAP bejegyzés törlése

Szinkronizáció
A Neptun és az LDAP közötti szinkronizációt az LDAP oldali szinkronizáló szkript indítja.

Neptun interfészek
A szinkronizálás a Neptun által biztosított XML Webszolgáltatáson keresztül valósul meg. A legtöbb művelet két paramétert fogad: időbélyeg illetve Neptun lista - mindkettő opcionális. Amennyiben az időbélyeg szerepel, csak a megadott időpont óta módosult rekordok kerülnek át. A Neptun lista megadása az adott bejegyzésekre szűkíti az eredményt.

Fontos, hogy pl. a személyi adatoknál az időbélyeg a Neptun-ban a teljes rekordra értelmezett, tehát nem csak a szinkronizálni kívánt adatok triggerelik a változását.


 * Szervezeti struktúra
 * paraméterek: nincs
 * visszatérés: szervezeti egységek fastruktúrája (egységenként: kód, szerv. egység neve, típusa)
 * ritka szinkronizálás (félévente)
 * Neptun kódok és státuszok
 * paraméterek: opc. időbélyeg, opc. Neptun lista
 * visszatérés: Neptun kód, hallgatói státusz, oktatói státusz, alkalmazotti státusz
 * gyakori szinkronizálás (legalább naponta)
 * Személyi adatok
 * paraméterek: opc. időbélyeg, opc. Neptun lista
 * visszatérés: Neptun kódhoz tartozó személyi adatok
 * gyakori szinkronizálás (naponta)
 * Szervezeti kapcsolódás
 * paraméterek: opc. időbélyeg, opc. Neptun lista
 * visszatérés: Neptun kódhoz tartozó szervezeti egységek kódja
 * ritka szinkronizálás (félévente)
 * Oktatási adatok
 * paraméterek: Neptun lista
 * visszatérés: minden megadott neptun kódhoz az összes oktatási adat (nem csak a változások)
 * ritka szinkronizálás (szorgalmi időszakban hetente, tárgyjelentkezési időszak kezdetétől regisztrációs hét végéig nincs szinkronizálás)

= Implementációk =
 * NIIF szinkronizáció implementáció (PHP)
 * Neptun webservice szinkronizációs próbálkozások a PPKE-n