„Szoftverfejlesztés J2EE platformon - Security” változatai közötti eltérés

David14 (vitalap | szerkesztései)
a David14 átnevezte a(z) Java EE Security lapot a következő névre: Szoftverfejlesztés J2EE platformon - Security
Szikszayl (vitalap | szerkesztései)
aNincs szerkesztési összefoglaló
 
1. sor: 1. sor:
{{GlobalTemplate|Valaszthato|J2EESecurity}}
Gondolom, elég sokan vagyunk, akik úgy képzelünk el egy webes bejelentkezést, hogy a felhasználónak ki kell töltenie valamilyen űrlapot a nevével és a jelszavával, a háttérben erre a program kiszedi a megfelelő sort az adatbázisból, és ennek alapján eldönti, hogy jó-e a jelszó, avagy rossz, admin-e a felhasználó vagy sem, stb. Ez a folyamat az autentikáció. Ezután a felhasználó meg akar nézni valamilyen lapot a biztonságos területről. A rendszernek döntenie kell, hogy beengedje-e, avagy sem. Ez az autorizáció. Aki csinált már valamilyen webes bejelentkező felülettel rendelkező cuccot PHP-ban, az megszokta, hogy mindezt saját magának kell leprogramoznia. Erre természetesen Java EE-ben is van lehetőség (a PHP-hoz képest kisebb csinosításokkal, úgymint filterek beiktatása, entity beanek használata sima query-k helyett, stb.), szükség azonban nincs rá. Tudvalevő, hogy a Java EE biztonsági szolgáltatása a programozó kezébe ad egy JAAS-alapú (Java Authentication & Authorization Service) módszert az autentikáció és az autorizáció (a továbbiakban AA) kezelésére. Hogy miért jó ez?
 
 
Gondolom, elég sokan vagyunk, akik úgy képzelünk el egy webes
bejelentkezést, hogy a felhasználónak ki kell töltenie valamilyen űrlapot a
nevével és a jelszavával, a háttérben erre a program kiszedi a megfelelő
sort az adatbázisból, és ennek alapján eldönti, hogy jó-e a jelszó, avagy
rossz, admin-e a felhasználó vagy sem, stb. Ez a folyamat az autentikáció.
Ezután a felhasználó meg akar nézni valamilyen lapot a biztonságos
területről. A rendszernek döntenie kell, hogy beengedje-e, avagy sem. Ez az
autorizáció. Aki csinált már valamilyen webes bejelentkező felülettel
rendelkező cuccot PHP-ban, az megszokta, hogy mindezt saját magának kell
leprogramoznia. Erre természetesen Java EE-ben is van lehetőség (a PHP-hoz
képest kisebb csinosításokkal, úgymint filterek beiktatása, entity beanek
használata sima query-k helyett, stb.), szükség azonban nincs rá. Tudvalevő,
hogy a Java EE biztonsági szolgáltatása a programozó kezébe ad egy
JAAS-alapú (Java Authentication & Authorization Service) módszert az
autentikáció és az autorizáció (a továbbiakban AA) kezelésére. Hogy miért jó ez?
* Valakik már megírták helyetted a kódot. Valószínű, hogy az évek során sikerült egy csomó rést kiküszöbölni (lásd pl. SQL-injektálhatóság), úgyhogy feltehetően jobban jársz egy ilyennel.
* Valakik már megírták helyetted a kódot. Valószínű, hogy az évek során sikerült egy csomó rést kiküszöbölni (lásd pl. SQL-injektálhatóság), úgyhogy feltehetően jobban jársz egy ilyennel.
* Ha deklaratívan kezeled az AA-t, akkor a jogosultságok nincsenek bedrótozva a programba: egy-két telepítésleíró-bejegyzés beiktatásával vagy elvételével bővíthető vagy kurtítható egy-egy szerepkör felhasználói tábora. További hatalmas előny, hogy az AA adatokat tartalmazó erőforrás jellegétől (Egy fájl? Egy adatbázis? Egy...?) is független maradhatsz.
* Ha deklaratívan kezeled az AA-t, akkor a jogosultságok nincsenek bedrótozva a programba: egy-két telepítésleíró-bejegyzés beiktatásával vagy elvételével bővíthető vagy kurtítható egy-egy szerepkör felhasználói tábora. További hatalmas előny, hogy az AA adatokat tartalmazó erőforrás jellegétől (Egy fájl? Egy adatbázis? Egy...?) is független maradhatsz.


A Java EE biztonsági szolgáltatásában ún. realmek (ejtsd "relm", nem pedig
A Java EE biztonsági szolgáltatásában ún. realmek (ejtsd "relm", nem pedig "rílm") használatosak egy alkalmazás felhasználói táborának azonosítására. Autentikálják a felhasználót, aki egy biztonsági kontextust kap, benne a felhasználói azonosítójával és a csoportazonosítójával (esetleg több ilyenis lehet bizonyos realmeknél). Az autorizáció ezután a konténer feladata, a telepítésleírók alapján.
"rílm") használatosak egy alkalmazás felhasználói táborának azonosítására.
Autentikálják a felhasználót, aki egy biztonsági kontextust kap, benne a
felhasználói azonosítójával és a csoportazonosítójával (esetleg több ilyen
is lehet bizonyos realmeknél). Az autorizáció ezután a konténer feladata, a
telepítésleírók alapján.


A továbbiak kizárólag Netbeans 5.5-re, és a hozzácsomagolt AS-re
A továbbiak kizárólag Netbeans 5.5-re, és a hozzácsomagolt AS-re