Java Authentication and Authorization Service
A Java Authentication and Authorization Service, vagy JAAS (ejtsd: "Jazz") Java biztonsági szolgáltatás, amely a felhasználók kezelésével kapcsolatos problémákra próbál megoldást nyújtani. A JAAS a JRE 1.4 óta a Java Runtime Environment része. Korábban a JAAS a Sun által kínált kiegészítésként volt elérhető.
A JAAS legfőbb célkitűzése, hogy a felhasználók kezelése a konkrét alkalmazástól függetlenül történjen. Ilyen esetekben olyan problémákat kell megoldani, hogy hol történjen a felhasználó azonosítása, vagy hol legyenek tárolva a felhasználók jogai stb. A JAAS egy, a Java-ban korábban létező biztonsági rétegét bővíti további ellenőrzési réteggel. A technológiához tartozó legfontosabb fogalmak: felhasználó (user), csoport (group) és a szerepkör (role).
Adminisztráció
[szerkesztés]A rendszer működése az alábbi fájlok segítségével állítható be:
*.login.conf: felhasználók bejelentkezését támogató modulok leírása
*.policy: az erőforrást igénylő felhasználó vagy program jogainak meghatározása
Az alábbi példa egy login.conf
fájl tartalmát mutatja be. A leírás meghatározza mindazokat a modulokat, amelyeknek a felhasználó azonosításához szerepük van.
PetShopApplication {
com.sun.security.auth.module.LdapLoginModule sufficient;
com.foo.SmartcardLoginModule requisite;
com.sun.security.auth.module.UnixLoginModule required debug=true;
}
JAAS interfész
[szerkesztés]Egy alkalmazásfejlesztő szemszögéből, a JAAS egy szabványos könyvtár ami lehetőséget biztosít azonosítók és bizonyítványok ábrázolására, egy bejelentkezési szolgáltatást, ami jelez az alkalmazásnak valamilyen, az azonosításhoz felhasznált adatok bekérésére. A szolgáltatás ezt követően ellenőrzi a megadott adatok alapján a felhasználó jogait (amit a rendszer adminisztrátora állít be).
Biztonsági rendszer integrációja meglévő alkalmazásokkal
[szerkesztés]A JAAS a következőket nyújtja a biztonsági rendszert tervezőjének:
- azonosító névterek az alkalmazások számára
- azonosítók és erőforrások összerendelése
- bejelentkezési modulok fejlesztéséhez, amelyek bekérnek valamilyen adatokat a felhasználótól, meghatározza annak jogosultságait , majd ez alapján visszaküldi a megfelelő választ.