Zdravím! V glassfish s tím máme zkušenost.
Vlastní JdbcRealm jsme vytvořili podle tohoto odkazu http://jroller.com/page/brviking?entry=glassfish_for_tomcat_users_jdbc Z externího klienta (JUNIT testy) jsme pak volali realm následovně. 1. musí se nastavit property ke konfiguračnímu souboru - ten se může zkopírovat přímo z glassfish ke klientovi (stejně obsahuje pouze asi 6 řádků) System.setProperty("java.security.auth.login.config","appclientlogin.conf"); - tento soubor (appclientlogin.conf) obsahuje pouze default { com.sun.enterprise.security.auth.login.ClientPasswordLoginModule required debug=false; }; ... 2. přihlášení se provede přes ProgramaticLogin ProgrammaticLogin login = new ProgrammaticLogin(); login.login(username,password); // Prihlaseni uzivatele fafi Ales Dostal napsal(a): > Diky, > po pravde je to dalsi vec, na kterou jsem se koukal a jako loginModule > je treba extendovat "AppservPasswordLoginModule". > Uprimne, stravil jsem tim asi 5 dni a stale bez vysledku. > Sice je to asi spatny postup, ale pouziji Statefull beanu a budu ji > pouzivat jako authentifikaci. > Prijde mi to naprosto silene. Nikde na netu jsem nenasel nejaky vhodny > tutorial na tuto problematiku. > Implementace se hodne lisi od pouziteho AS. > > Vsem zucastnenym dekuji za pomoc, i kdyz jsem asi tele, ze jsem na to > neprisel, jak to udelat :( > > Takze cilem cviceni bylo: Mam swing aplikaci, ktera vzdalene vola EJB3 z > glassfishe. > Chtel jsem nejak naimplementovat Authentifikaci pres swingovy > prihlasovaci formular, ktery by se mi prihlasil > pres JAAS. Jako realm jsem zvolil JDBCRealm, kde mam namapovany tabulky > pro uzivatele, skupiny, atd. > Tak, potud je mi vse jasne. > > Ted ty zpusoby: > System.setProperty("java.security.auth.login.config", > "C:\\dev\\login.conf"); > kde v souboru je: > jdbcRealm { > com.sun.enterprise.security.auth.login.JDBCLoginModule required; > }; > popripade vlastni login module > > Pomoci LoginContext... se pripojim, super, ale na serveru jsem stale > jako anonymous. > Pak jsem zkousel programmatic login, pak pres > context.security_credentials, pak pres vlastni realm, stale nic. > Kdyz jsem zkousel pouzit obycejny fileRealm z klienta, tak pri > prihlasovani jsem obdrzel: > SEVERE: SEC1105: A PasswordCredential was required but not provided. > Opet bez uspechu. > > Abych to tak nejak shrnul, nasel jsem nekolik moznosti, z nichz ani > jeden nefunguje. > > Docela me to stve, protoze jsem jaas-context chtel vyuzit k dalsim > moznostem. > Asi jsem vazne lama, ale prijde mi to naprosto priserne slozite, jak > vyresit takto obycejny problem. > > Pokud by nekdo vedel, jak "presne" vyresit authentifikaci ze swing > klienta do glassfishe, aby ejb byly schopne inicializovat prihlaseneho > usera s danou roli, grupou, atd. > > Diky vsem za pomoc. > > P.S. Zacnu JAAS asi nenavidet :( > > > > ________ Information from NOD32 ________ > This message was checked by NOD32 Antivirus System for Linux Mail Servers. > http://www.eset.com
