Internet Explorer lapok biztonságosan?
2006-09-07T14:06:37+02:00
2006-09-11T14:53:40+02:00
2022-07-19T21:26:04+02:00
YourSoft
A következő a gondom:
Eddig cégen belül működött a webapplikációnk. Itt minden IE-ből kilépéskor törlődött a cache (IE beállítás).

Most viszont külső emberkék is bejöhetnek majd hozzánk, ahol nincs egységes környezet, sőt akár több ember is használhatja ugyanazt a gépet ugyanazzal a felhasználóval.

És itt kezdődik a gondom:
PDF-ben jelenítünk meg személyes adatokat, https protokolon keresztül. Ezért nem szeretnénk, ha ezek az oldalak megmaradnának az IE cache-ban , de sajnos egyenlőre "pragma: no-cache" esetén nem menti le a cache-ba, és így az Acrobat Reader sem találja meg, míg e nélkül minden esetben megmaradt a cache-ban (illetve SP1-es IE6-ban jól működik, SP2-esben nem ).

A cachelés tiltásáról itt olvastam többet:
support.microsoft
Van valakinek valami ötlete?
Mutasd a teljes hozzászólást!
És, ha nem közvetlenül a PDF-et linkeled, hanem mondjuk PHP-val közvetetten letöltést ajánlasz fel? Esetleg a PHP ki is írhatja a tartalmat.. Ekkor még PDF sem kell. A kérdés az, hogy mire kell most a PDF??


$filename = "ez_a_pdf_path.pdf"; if (file_exists($filename)){ header("Content-Type: application/octet-stream"); //Adatfolyam header header("Content-Disposition: attachment; filename=lista.pdf"); //a felajánlott mentési név $fp = fopen($filename, 'rb'); //megnyitás header("Content-Length: " . filesize($filename)); //méret közlése a klienssel fpassthru($fp); //küldés } else { die("A fájl nem található"); //Ha nincs meg a fájl }

Esetleg ezután egy átirányítás önnmagára, hogy felülírja a cache-t, ha mégis bennmarad

!! Nincs tesztelve !!
Mutasd a teljes hozzászólást!

  • akkor még ajánlhatoma pdf titkositast..
    Vagyis az illeto csak egy masodik jelszo birtokaban nyithatja meg a doksit...
    Mutasd a teljes hozzászólást!
  • Igen, ez jó ötlet, de nem szeretnénk több jelszót kérni a felhasználóktól.
    Belépés, majd állandóan jelszókéregetés elég idegesítő lehet
    Mutasd a teljes hozzászólást!
  • Az nem lenne baj, ha legkésőbb az ie leállításakor törölné a pdf-et a cache-ből, de nem teszi ezt sem.

    Illetve az IE beállításaitól is függ, ha be van állítva a 'cache törlés leállításkor', akkor letörli. Az a baj, hogy ilyeneket nem tudok állítgatni a kliens gépeken.

    Van még egy beállítás ami jól működik html esetén, de pdf-re nem:
    cache-control: no-store
    pragma: no-cache
    expires: 0

    Ez ha pl. nyomsz egy visszagombot akkor kitörli a html-t a cache-ből. Viszont a pdf-et már le sem teszi ha https kapcsolat van, és így az acrobat sem találja meg.
    Mutasd a teljes hozzászólást!
  • Csoportházirendből nem megoldható?
    Mutasd a teljes hozzászólást!
  • A kérdésedre sajnos nem tudok válaszolni, de felhívnám a figyelmedet, hogy elég jó és gyors pdf password törő progik léteznek, így a pdf titkosításával (amit egyébként sem szeretnél) tulajdonképpen nem sokat érsz.
    Mutasd a teljes hozzászólást!
  • Sajnos csak részben oldható meg, mivel van egy csomó külső cég, illetve gép amire nincs ráhatásunk.
    Mutasd a teljes hozzászólást!
  • Köszi, ez is egy info, hogy nem érdemes pdf-et titkosítani.
    Ezt mondjuk sejtettem is, ezért inkább az IE cache törlés felé keresgéltem eddig is.
    Mutasd a teljes hozzászólást!
  • A HIS-nek és a Novellnak is vannak olyan távoli elérést szolgáló technológiái, amelyek segíthetnek a megoldásban. Csak ezek nem 2 fillérbe kerülnek...

    Alternatívaként vmilyen java applet vagy activex vezérlő készítése jön szóba, ami üríti a cache-t.
    Mutasd a teljes hozzászólást!
  • És, ha nem közvetlenül a PDF-et linkeled, hanem mondjuk PHP-val közvetetten letöltést ajánlasz fel? Esetleg a PHP ki is írhatja a tartalmat.. Ekkor még PDF sem kell. A kérdés az, hogy mire kell most a PDF??


    $filename = "ez_a_pdf_path.pdf"; if (file_exists($filename)){ header("Content-Type: application/octet-stream"); //Adatfolyam header header("Content-Disposition: attachment; filename=lista.pdf"); //a felajánlott mentési név $fp = fopen($filename, 'rb'); //megnyitás header("Content-Length: " . filesize($filename)); //méret közlése a klienssel fpassthru($fp); //küldés } else { die("A fájl nem található"); //Ha nincs meg a fájl }

    Esetleg ezután egy átirányítás önnmagára, hogy felülírja a cache-t, ha mégis bennmarad

    !! Nincs tesztelve !!
    Mutasd a teljes hozzászólást!
  • Ok, jó ötletek.

    1.
    Az átirányítás önmagára sessionban jelző lerakása, hogy ilyenkor egy üres pdf-et készítsen, és ezzel felülírja a cachet. Erre mi is gondoltunk. Elvetettük, mivel ha a böngészőből kilép anélkül, hogy bármit nyomna, akkor bent marad. Mi pedig 100%-os megoldásra törekszünk.

    2. A mentés felajánláson még gondolkodunk. Bár ez nem igazán illene bele az applikációba.
    A pdf-es rész konkrétan egy megjelenítő felület ami integrálódik a weblapokba.

    A pdf-re az egységes nyomtathatóság miatt volt szükségünk.
    Mutasd a teljes hozzászólást!
  • Ok, most egy másik fórumon is a felülírásos módszert javasolják, de ők úgy, hogy amikor letöltődik / megjelenik a pdf, azután rögtön hívni egy üres pdf-et.
    Itt csak ezek a kérdések merülnek fel:
    - Most jelenleg egy frameset-ben van a pdf, van egy frame-sáv vezérlő linkekkel, a másik frame pedig a pdf-et tartalmazza.
    - Az a kérdés honnan tudom, hogy mikor töltődött le a pdf. Vagyis mikorra nyitotta meg az Acrobattal együtt az ie - ekkor kell meghívnom az üres pdf-et.
    - Az üres pdf-nek nem szabad megjelennie a képernyőn, hogyan hívjam meg? Ajaxos kéréssel, valami nem látható részben?
    Mutasd a teljes hozzászólást!
  • Úgy rémlik, hogy PDF-ben is van lehetőség valamilyen scriptelésre (talán javascript...)

    Ez esetleg jó lehet.

    Mondjuk, ha egy PDF formot csináltok, ami a serverről kéri az adatokat?

    Ha meg lehet csinálni...

    Most nincs időm bővebben utánaolvasni sajnos.
    Mutasd a teljes hozzászólást!
  • Tehát, most itt tartok:

    A PDF-ben lévő javascript nem használható megoldás

    A jó megoldás:
    Felülírni a pdf-et a cache-ban.

    Az onunload esemény mivel nem működött frames oldalon, így egy iframe-ba átraktam a pdf-et. És erre hívom meg az onunload eseményt. Itt már csak az alábbi gondjaim, vannak:
    - hogyan hívjam meg ugyanazt az url-t (ajax, vagy rejtett iframe), most ezeket próbálgatom, inkább a probléma a következő pont:
    - honnan fogom tudni, amikor meghívom ugyanazt az url-t, hogy pl. nem-e frissítést nyomtak?
    Mutasd a teljes hozzászólást!
  • 1. A frissítési gond megoldva. Mivel ha csak a html (iframet tartalmazó) részre frissíthetnek, ezért a html-t előállító progi mindig törli a sessionból a jelzőbitet.

    2. A felülírás az én gépemen működik (IE6, XP SP2), a kollégám gépén nem (IE6, XP SP1).
    Most az onunloadban az iframe src-jének állítom be mégegyszer ugyanazt az url-t, de nem szereti, nem írja felül a cachet.
    Mutasd a teljes hozzászólást!
abcd