Ivan 596 wrote:
> 
> 
> Dňa 22.10.2007, *Martin Kuba* <[EMAIL PROTECTED]
> <mailto:[EMAIL PROTECTED]>> napísal(a):
> 
>     > 0. Prihlasovanie odosielane cez POST-metodu :-)
> 
>     Vsechny odesilani formularu by mely jit pres POST metodu, ne jen
>     prihlasovani.
>     A po POSTu je dobre delat redirect.
> 
> 
> tomuto celkom nerozumiem...

Při předávání dat přes URL není jisté, jaké kódování českých znaků se použije,
kdežto při posílání přes POST to jisté je. Například u TomCatu
je nutné dělat speciální změny v jeho konfiguraci, pokud si chcete
předat data s diakritikou v URL.

No a redirect po POSTu je dobrý na to, že uživatel může klidně
zmáčknout tlačítko Reload, a nic se nestane, neodešle formulář
omylem podruhé. Lidé opravdu nelibě nesou, když třeba zaplatí
za zboží dvakrát, protože špatně klikli.

>     > 3. Kazda stranka (okrem prihlasovacej) na zaciatku testuje ci existuje
>     > session s id uzivatela, teda iba uz prihlaseny mozu pristupovat
> 
>     Je zbytecne duplikovat kod a mit to v kazde strance na zacatku,
>     mnohem lepsi je udelat si na to Filter mapovany na vsechny stranky
>     (a pro prihlasovaci v nem mit vyjimku).
> 
> 
> ano, ano, ja to mam v tzv. page-header, v struts sa to vola
> include-prelude alebo podobne

To není dobrá technika, protože pak máte kód v JSP stránkách.
Při přechodu z PHP to sice může vypadat jako logická volba,
kam umístit kód, ale je to principiálně špatně. Už proto,
že takový kód se kompiluje až za runtime, takže na něm
neproběhne statická kontrola překladače při překladu aplikace.

A mimochodem, <include-prelude> není věc Struts, ale konfigurace
JSP ve web.xml.


>     Jak uz psal Filip Jirsak, Java neni skriptovaci jazyk, a proti nekterym
>     typum utoku je z principu odolna.
> 
> 
> znameno to, ze v jave ak ma uzivatel pristup k spracovaniu formulara,
> nevadi ak by povynechaval ci popridaval nekorektne parametre?

Ano, nevadí. Stejně tak je Java z principu odolná proti buffer overrun
útokům.


> ze <c:out ...> osetruje toto som netusil, vdaka
> v mojom pripade idu ale vsetky data najprv do databazy, neskor sa z nej
> nejake vypisuju na stranku

To je přece úplně jedno, jestli jdou nejřív do databáze, to ničemu nepomůže.
Když uživatel zadá text typu "><script> window.close();</script><!--
tak jeho uložení do databáze a opětné vyzvednutí obsah textu
nijak nezmění, při neošetřeném výpisu na stránku zafunguje.


> 
>     A hlavne pri kazdem pristupu k datum si kontrolovat, zda na to
>     ma uzivatel opravneni, protoze zly  uzivatel si muze rucne
>     vytvaret URL tak, aby volal zpracovani formularu, aniz
>     by se k formularum musel dostat.
> 
> 
> musel by poznat presnu URL adresu:-)

To není problém. Když bude mít právo měnit svoje data, tak odkouká URL
a pak by byl schopen měnit cizí data. Security by obscurity nikdy
nefungovala, viz např. slavné prolomení ochrany systému GSM ...

Makub
-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Supercomputing Center Brno             Martin Kuba
Institute of Computer Science    email: [EMAIL PROTECTED]
Masaryk University             http://www.ics.muni.cz/~makub/
Botanicka 68a, 60200 Brno, CZ     mobil: +420-603-533775
--------------------------------------------------------------

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Odpovedet emailem