Hmm, hát nem teljesen értem mi az olyan kritikus a jar-okban, de ha ez annyira fontos, akkor csináld meg azt, hogy a jar-okat http basic-cel véded, a többit meg simán session cookie-val, s ebben a session-ben tárolod a login információt - ez nyilván a szerver oldalon van, s csinálsz egy olyan servletet, amit szintén http basic-cel van védve, s csak annyit tesz, hogy kiolvassa a http basic által authentikált felhasználó nevet és berakja a session-be. S ezt kell meghívnia a kliens programnak elsőként. S ha másként akar bejelentkezni, akkor meg ettől függetlenül, egy másik servlet-tel authentikálhatsz, és frissítheted a session-ben az aktuális user nevet. <br>
<br>Üdv<br> Zs<br> <br><br><div class="gmail_quote">2013/2/5 Zoltán Bernát <span dir="ltr"><<a href="mailto:bernatzoltan@gmail.com" target="_blank">bernatzoltan@gmail.com</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Igen ebben igazad van. Ez ugy muxik, mint egy webbongeszoben, ha jol<br>
ertem. Ott szamitottam el magam, hogy en csak abban lattam a jnlp<br>
szerepet, hogy letolti nekem a jarokat, (es figyeli azok last modified<br>
erteket) es telepiti a kliens gepere.<br>
Kozben meg joval tobbrol van szo:<br>
<a href="http://docs.oracle.com/javase/7/docs/jre/api/javaws/jnlp/javax/jnlp/package-summary.html" target="_blank">http://docs.oracle.com/javase/7/docs/jre/api/javaws/jnlp/javax/jnlp/package-summary.html</a><br>
Ha azt csinalnam, hogy siman letolti a user a jar-okat egy vedett<br>
weboldalrol, es futtatja a gepen, akkor szabad vagyok mint a madar.<br>
Viszont elvesztem pl a Web Start altal nyujtott update lehetoseget. De<br>
akkor olyan un/pw parossal jelentkezik be, amilyennel csak akar.<br>
Nekem az lenne a megfelelo, hogyha ezt az automatizmust (tehat a<br>
header irogatasat) CSAK a jar-ok frissen tartasahoz hasznalna a jnlp,<br>
tehat ne kelljen minden jar letoltesehez passwordot adni. Ezen a<br>
ponton az en programom nem jatszik szerpet. Nem is fut meg.<br>
<br>
<br>
<br>
Zsombor <<a href="mailto:gzsombor@gmail.com">gzsombor@gmail.com</a>> írta (2013. február 5. 0:24):<br>
<div class="HOEnZb"><div class="h5">> Ez a http protokol, és ezen belül ez a basic authentikáció. Ha az adott<br>
> host:port párhoz fordul egy alkalmazás, akkor a korábban ledobott cookiekat<br>
> kell prezentálnia - ami ez esetben mellékes, valamint ha korábban volt, hogy<br>
> "Auth fail" üzenettel és egy "Realm" névvel jött vissza egy http lekérés,<br>
> ami után sikerült authentikálnia, akkor mindig kell küldenie az user/pw<br>
> párost, minden egyes requesttel - az adott szerver felé. S ezért kell<br>
> beleirogatni a request-be, hogy ne hogy kimaradjon belőle - s hogy ezt kvázi<br>
> transzparens módon lekezelje feléd, mintha nem is lenne semmilyen<br>
> authentikáció. Ez az egész a java.net.URLConnection és a hozzá kapcsolódó<br>
> http kliens műve. Nyilván, ha Te mondjuk az apache HttpClient-et használnád,<br>
> az nem tudna az egész realm/cookie/stb beállításaidról ... Persze az meg más<br>
> problémákhoz vezetne.<br>
><br>
><br>
> Zs<br>
><br>
><br>
> 2013/2/4 Zoltán Bernát <<a href="mailto:bernatzoltan@gmail.com">bernatzoltan@gmail.com</a>><br>
>><br>
>> Igen ezt a problemat ismerem, sajnos, mert a klienskod letolteset<br>
>> lehetove tevo web oldal eleresehez is http-basic-kel kell azonositani<br>
>> a webbongeszoben. Ott megoldottam a dolgot egy, meg elfogadtaho<br>
>> szinten.<br>
>> De itt azert ha jol "erzem" a dolgot, meg bosszantobb a helyzet,<br>
>> illetve talan egy kicsi (vagy nagyon) masrol is van szo. Igazabol nem<br>
>> ertem, mi a turo koze van a jnlp kliensek az en alkalmazasom altal<br>
>> kuldott http keresekhez. Nehogy mar ne kuldhessek olyan headert,<br>
>> amilyet akarok! Az alkalmazasom mas serverekhez is fordulhatna http<br>
>> keresekkel, ezek headerjet is modositgatna a jnlp? Vagy ugy<br>
>> viselkedne, mint egy web bongeszo, es csak a codbase serverhez<br>
>> intezett keresek headerjebe irogat bele? Es mi ertelme van<br>
>> beleirogatni? Tehat mi szuksege van erre a jnlp-nek??? Mert a jar<br>
>> file-ok letoltesehez persze beleir a headerbe. Ez rendben is van,<br>
>> hoszen szol neki a webserver, hogy http-basic auth kell.<br>
>> Es programom egyeb protokollokal is kommunikalhatna a serverrel, akar<br>
>> olyan protokollal, amit nem is ismer a jnlp. Akkor abba hogyan<br>
>> piszkalna bele? Teljesen erthetetlen szamomra ez a dolog. Ebbol meg az<br>
>> kovetkezik, hogy valamit nagyon felreertek a rendszer<br>
>> feladataval/mukodesevel kapcsolatban.<br>
>><br>
>> Zsombor <<a href="mailto:gzsombor@gmail.com">gzsombor@gmail.com</a>> írta (2013. február 4. 23:32):<br>
>> > Jah, érthető. Sajnos ez a "hogyan logoljunk ki http-basic-auth-ot<br>
>> > használó<br>
>> > webalkalmazások"-ból kérdés/szívás problémája:<br>
>> ><br>
>> ><br>
>> > <a href="http://stackoverflow.com/questions/233507/how-to-log-out-user-from-web-site-using-basic-authentication" target="_blank">http://stackoverflow.com/questions/233507/how-to-log-out-user-from-web-site-using-basic-authentication</a><br>
>> ><br>
>> ><br>
>> > Hát, nem túl rózsás a helyzet.<br>
>> ><br>
>> > üdv<br>
>> ><br>
>> > Zs<br>
>> ><br>
>> > 2013/2/4 Zoltán Bernát <<a href="mailto:bernatzoltan@gmail.com">bernatzoltan@gmail.com</a>><br>
>> >><br>
>> >> Tulajdonkeppen nem kell ketszer.<br>
>> >><br>
>> >> A felhasznalo, a kliensprogram telepitesekor csak egyszer kell, hogy<br>
>> >> megadja a jelszavat. A javaws lehetoseget ad arra, (mint egy web<br>
>> >> bongeszo,) hogy a usernek ne kelljen ezt a jelszot tobbet megadnia.<br>
>> >> Tehat ezt a jelszot tobbet nem keri a rendszer azt a javaws<br>
>> >> "megjegyzi", ha ezt a user igy akarja. A user kattint a desktopjan<br>
>> >> levo ikonon (amit a jnlp kliens telepitett) es mar indul is a<br>
>> >> programom. (nyilvan a jnlp kliens, a progi inditasa elott megnezi,<br>
>> >> hogy a szerveren levo jar file-ok last modified erteke ujabb-e, mint a<br>
>> >> kliensnel levokenek. Ehhez a persze el kell ernie a szerveren a vedett<br>
>> >> mappaban levo jar-okat, ehhez pedig folhasznalja a telepiteskor, elso<br>
>> >> alkalommal bekert jelszot)<br>
>> >><br>
>> >> Tehat elindul az en alkalmazasom, es csak az o szamara kell bepotyogni<br>
>> >> minden alkalommal a un/pw parost. Raadasul a usernek tobb accountja is<br>
>> >> lehet a serveren. (mint ahogyan van is) De hiaba adja meg pl. a<br>
>> >> masodik fiokjanak un/pw parosat, ha az alkalmazas installalasakor a<br>
>> >> jnlp-nek az elso fiokjanak az un/pw parosat adta meg, soha nem tudja<br>
>> >> mar elerni a masodik fiokjat.<br>
>> >><br>
>> >><br>
>> >><br>
>> >> Zsombor <<a href="mailto:gzsombor@gmail.com">gzsombor@gmail.com</a>> írta (2013. február 4. 21:31):<br>
>> >> > Hali !<br>
>> >> ><br>
>> >> ><br>
>> >> > Miért baj, hogy nem kell kétszer authentikálni? Felhasználóként<br>
>> >> > kifejezetten zavarna, ha kétszer kellene beírnom a jelszavamat ...<br>
>> >> ><br>
>> >> ><br>
>> >> > Zs<br>
>> >> ><br>
>> >> > 2013/2/4 Zoltán Bernát <<a href="mailto:bernatzoltan@gmail.com">bernatzoltan@gmail.com</a>><br>
>> >> >><br>
>> >> >> Sziasztok!<br>
>> >> >><br>
>> >> >> Van egy vastagkliens alkalmazasom, ami web service-szel kommunikal<br>
>> >> >> egy<br>
>> >> >> glassfish szerverrel.<br>
>> >> >> Szeretnem megoldani a kliens kod Web Startos terjeszteset.<br>
>> >> >> A szerveren egy konyvtarban vannak a kliens kod jar faljai es a jnlp<br>
>> >> >> leiro file is.<br>
>> >> >> Ezt a konyvtarat a webkontener vedi, HTTP BASIC authentikacioval<br>
>> >> >> lehet<br>
>> >> >> hozzaferni. (persze https folott). Azaz nem akarom, hogy barki<br>
>> >> >> hozzaferjen a klien kodhoz.<br>
>> >> >> web.xml: <auth-method>BASIC</auth-method><br>
>> >> >> (probalkoztam a <auth-method>FORM</auth-method> megvalositassal is,<br>
>> >> >> sajnos sikertelenul)<br>
>> >> >><br>
>> >> >> Ilyenkor persze a jnlp kliens nem fer hozza kapasbol a jar<br>
>> >> >> file-okhoz,<br>
>> >> >> ezert foldob a usernek egy ablakot, ahol megadhatja a<br>
>> >> >> username/password parost.<br>
>> >> >> Ennek megadas utan lehuzza az alkalmazast, es mar fut is a kliens<br>
>> >> >> gepen.<br>
>> >> >><br>
>> >> >> A kliens programom is HTTP basic auth. segitsegevel eri el a web<br>
>> >> >> service-eket.<br>
>> >> >> Indulasakor bekeri a usertol a felhasznalo nevet es a jelszot.<br>
>> >> >> Ezutan minden serverhez inditott keres http headerjebe beirja az<br>
>> >> >> authotization elembe ezt a username/passsword ertekeket, es a<br>
>> >> >> webkontener ezen ertekekre autentikal. A problema ott van, hogy a<br>
>> >> >> user gepen futo jnlp klines(javaws.exe) a szepen felulirja a<br>
>> >> >> programom<br>
>> >> >> altal a http headerbe irt authotization ertekeket, azzal a<br>
>> >> >> username/password parossal, amit a user akkor adott meg neki, amikor<br>
>> >> >> a<br>
>> >> >> jnlp kliens kerte tole, hogy azzal lehuzhassa a jar file-okat a<br>
>> >> >> server<br>
>> >> >> vedett konyvtarabol.<br>
>> >> >><br>
>> >> >> Igy viszont ugyebar tok mindegy milyen un/pw parost ad meg a user, a<br>
>> >> >> jnlp kliens a sajat valtozatat kuldi a servernek. (persze ha a<br>
>> >> >> fejlesztokornyezetbol futtaom a kliens kodot, akkor minden<br>
>> >> >> megfeleloen<br>
>> >> >> mukodik)<br>
>> >> >><br>
>> >> >> Bogarasztam a JNLP API-t, de nem talaltam olyat, amivel ravehetnem a<br>
>> >> >> jnlp klienst, hogy ne irja bele minden keres fejebe a sajat<br>
>> >> >> authorization erteket.<br>
>> >> >> Van v.kinek otlete, hogy lehet ebbol kikeveredni?<br>
>> >> >> Koszi.<br>
>> >> >> _______________________________________________<br>
>> >> >> Javalist mailing list<br>
>> >> >> <a href="mailto:Javalist@lists.javaforum.hu">Javalist@lists.javaforum.hu</a><br>
>> >> >> <a href="http://lists.javaforum.hu/mailman/listinfo/javalist" target="_blank">http://lists.javaforum.hu/mailman/listinfo/javalist</a><br>
>> >> ><br>
>> >> ><br>
>> >> ><br>
>> >> > _______________________________________________<br>
>> >> > Javalist mailing list<br>
>> >> > <a href="mailto:Javalist@lists.javaforum.hu">Javalist@lists.javaforum.hu</a><br>
>> >> > <a href="http://lists.javaforum.hu/mailman/listinfo/javalist" target="_blank">http://lists.javaforum.hu/mailman/listinfo/javalist</a><br>
>> >> ><br>
>> >> _______________________________________________<br>
>> >> Javalist mailing list<br>
>> >> <a href="mailto:Javalist@lists.javaforum.hu">Javalist@lists.javaforum.hu</a><br>
>> >> <a href="http://lists.javaforum.hu/mailman/listinfo/javalist" target="_blank">http://lists.javaforum.hu/mailman/listinfo/javalist</a><br>
>> ><br>
>> ><br>
>> ><br>
>> > _______________________________________________<br>
>> > Javalist mailing list<br>
>> > <a href="mailto:Javalist@lists.javaforum.hu">Javalist@lists.javaforum.hu</a><br>
>> > <a href="http://lists.javaforum.hu/mailman/listinfo/javalist" target="_blank">http://lists.javaforum.hu/mailman/listinfo/javalist</a><br>
>> ><br>
>> _______________________________________________<br>
>> Javalist mailing list<br>
>> <a href="mailto:Javalist@lists.javaforum.hu">Javalist@lists.javaforum.hu</a><br>
>> <a href="http://lists.javaforum.hu/mailman/listinfo/javalist" target="_blank">http://lists.javaforum.hu/mailman/listinfo/javalist</a><br>
><br>
><br>
><br>
> _______________________________________________<br>
> Javalist mailing list<br>
> <a href="mailto:Javalist@lists.javaforum.hu">Javalist@lists.javaforum.hu</a><br>
> <a href="http://lists.javaforum.hu/mailman/listinfo/javalist" target="_blank">http://lists.javaforum.hu/mailman/listinfo/javalist</a><br>
><br>
_______________________________________________<br>
Javalist mailing list<br>
<a href="mailto:Javalist@lists.javaforum.hu">Javalist@lists.javaforum.hu</a><br>
<a href="http://lists.javaforum.hu/mailman/listinfo/javalist" target="_blank">http://lists.javaforum.hu/mailman/listinfo/javalist</a><br>
</div></div></blockquote></div><br>