Az azonosítás lényege, hogy nem a használt webalkalmazás végzi az azonosítást, így jelszót sem kell másnak megadnunk. Ha belépnénk az adott oldalra, akkor annak login oldala (1.) egy OpenId provider felé (pl: google) továbbítja a felhasználót (6.), aki ott belép (7.), majd az azonosításhoz szükséges adatokat egy cookie-n keresztül tárolja és adja tovább a böngésző a webalkalmazás felé (8.). Ezután a webalkalmazás már azonosítottként kezeli a felhasználót, és saját rendszerében is "belépteti" (9.).
![]() |
Az OpenId működése a google-nál |
Az AppEngine támogatja a felhasználókezelés OpenId-val történő egyszerűsítését (federated login), ehhez az alkalmazás beállításainál ez ki kell választanunk. Az appengine.google.com oldalon az alkalmazás admin felületén választhatjuk ki a felhasználókezelés módját: Administration --> Application Settings --> Authentication Options.
A kiválasztás után létrehozunk egy servletet (LoginRedirectServlet), ami továbbítja a kérést a Google felé és egy jsp lapot (amin kiválasztjuk a providert), majd beállítjuk a web.xml-ben (/_ah/login_required), hogy a védett oldalakat csak az OpenId aznosítás után lehessen megnézni. Erre több példát is találhatunk, íme az egyik legegyszerűbb: http://code.google.com/p/gae-java-openid/
A jelenlegi projektünket átalakítva a szerver indítása után a következő képernyő fogad. Ha a fejlesztői gépen próbálunk belépni, akkor csak egy teszt felhasználós bejelentkezés jön be. Ezzel belépve kipróbálható a funkció, de több felhasználós rendszertesztet csak élesben tudunk végezni.
![]() |
login.jsp lap a választáshoz |
![]() |
A fejlesztői OpenId szimulációs felület |
Ezzel megvan az OpenId-s belépés lehetősége. A felületet igényeink szerint alakíthatjuk, például a www.valoskilometer.hu/login oldalon a következő felületen léphetünk be:
![]() |
www.valoskilometer.hu/login |
Az alkalmazás deploy-olása után a http://valoskmdev.appspot.com/ oldalon látható a végeredmény.
Nincsenek megjegyzések:
Megjegyzés küldése