Autor | Zpráva | ||
---|---|---|---|
Martin XYZ Profil * |
#1 · Zasláno: 9. 5. 2014, 13:29:24
Ahoj,
prosím o názor zkušenějších. Na několika stránkách mám vyřešeno zabezpečení přes SESSION... Na každé zaheslované stránce je toto: <?php session_start(); if(!$_SESSION['LoggedInSecure']) header("location: ./login.php"); ?> A přihlášení z formuláře je takto: <?php session_start(); if (($_POST["login"] == "jmeno") && ($_POST["password"] == "heslo")) { $_SESSION['LoggedInSecure'] = true; header("location: ./secured.php");} ?> Dotaz - jak moc je toto bezpečné? Případně co by bylo lepší použít, aby se to nedalo snadno obejít? Děkuji, Martin |
||
juriad Profil |
#2 · Zasláno: 9. 5. 2014, 13:34:02
Změň to na:
if(!$_SESSION['LoggedInSecure']) { header("location: ./login.php"); exit(); } Lepší než ukládat true do LoggedInSecure je ukládat přímo login nebo ID uživatele. Po odhlášení předpokládám, že SESSION ničíš. Další zlepšení je možné asi jen použitím SSL (https místo http). |
||
Jan Tvrdík Profil |
#3 · Zasláno: 9. 5. 2014, 13:38:04
juriad:
„Další zlepšení je možné asi jen použitím SSL (https místo http).“ Jen SSL? Co takhle zabezpečit web proti sessions fixation nebo session hijacking? Nebo co takhle nemít heslo v plain-textu? |
||
Časová prodleva: 4 dny
|
|||
Martin XYZ Profil * |
#4 · Zasláno: 13. 5. 2014, 18:17:55
juriad: děkuji za úpravu skriptu, použil jsem Tvoje řešení. A po odhlášení session ničím, tak to snad takhle bude stačit :-).
Díky, M. |
||
Časová prodleva: 10 let
|
0