PHP password védelem
Üdv mindenkinek!
Nem tud valaki egy egyszerű kódot, ami az alábbihoz hasonló, s amellyel url-ben át tudom adni a php fájlnak a bejelentkezési adatokat. Az alábbi kód is működik a http://qwe:rtz##kukac##valami.hu/xxx.php módszerrel, de nekem a http://valami.hu/xxx.php?username=nev1&password=jelszo1 elküldésre lenne szükségem. Találkozot már valaki valami működő verzióval?
Sajnos az include-olás nem jöhet szóba, ezért az alábbihoz hasonló működésűt keresek, ahol az azonosítás után teljes php kódot tudok futtatni.
<?php
$myusername = "myusername";
$mypassword = "mypassword";
$areaname = "My Protected Area";
if ($_SERVER["PHP_AUTH_USER"] == "" || $_SERVER["PHP_AUTH_PW"] == "" || $_SERVER["PHP_AUTH_USER"] != $myusername || $_SERVER["PHP_AUTH_PW"] != $mypassword) {
header("HTTP/1.0 401 Unauthorized");
header("WWW-Authenticate: Basic realm=\"$areaname\"");
echo "<h1>Authorization Required.</h1>";
die();
}
?>
<?php
... //ide kellene jönnie egy bonyolult php script-nek
?>
■ Nem tud valaki egy egyszerű kódot, ami az alábbihoz hasonló, s amellyel url-ben át tudom adni a php fájlnak a bejelentkezési adatokat. Az alábbi kód is működik a http://qwe:rtz##kukac##valami.hu/xxx.php módszerrel, de nekem a http://valami.hu/xxx.php?username=nev1&password=jelszo1 elküldésre lenne szükségem. Találkozot már valaki valami működő verzióval?
Sajnos az include-olás nem jöhet szóba, ezért az alábbihoz hasonló működésűt keresek, ahol az azonosítás után teljes php kódot tudok futtatni.
<?php
$myusername = "myusername";
$mypassword = "mypassword";
$areaname = "My Protected Area";
if ($_SERVER["PHP_AUTH_USER"] == "" || $_SERVER["PHP_AUTH_PW"] == "" || $_SERVER["PHP_AUTH_USER"] != $myusername || $_SERVER["PHP_AUTH_PW"] != $mypassword) {
header("HTTP/1.0 401 Unauthorized");
header("WWW-Authenticate: Basic realm=\"$areaname\"");
echo "<h1>Authorization Required.</h1>";
die();
}
?>
<?php
... //ide kellene jönnie egy bonyolult php script-nek
?>
Nem akarod
Pedig akarok...
:?
Sztem fuss neki a probléma leírásnak távolabbról, fejtsd ki, hogy minek is ez neked, miért így szeretnéd, és akkor talán tudunk épeszű megoldást is javasolni.
A problémának neki futtottam...
bohóckodás
Ergó nem biztonságos. Úgy gondolom, hogy van egy tartalom, amit védeni szeretnél. De amit csinálsz, az nem védelem. Olyan, mint egy kerítés nélküli kapu. Feltételezed, hogy majd mindenki a kapun keresztül akar majd bemenni. Aztán lesz, aki meg nem, csak simán elmegy mellette...
Ha már többen is azt mondják egy (szakmai) fórumban, hogy "ne csináld", akkor lehet, azon kéne elgondolkozni, hogy vmit te gondolsz rosszul és nem azt fejtegetni, hogy mi vagyunk a hülyék, hogy nem válaszolunk a kérdésedre és nem adjuk a nevünket egy ritka amatőr megoldáshoz. Ráadásul biztosra veszem, hogy van más megoldás is, de ahelyett, hogy leírnád a problémát, feltételezed, hogy az általad kigondolt elképzelés szent és sérthetetlen, azzal minden rendben van és kizárt dolog, hogy lenne egyáltalán más, nemhogy jobb megoldás is. Hogy idézzem:
Én még mindig szívesen segítek, ha kifejted, hogy miért is ez a megoldás kell neked, amit nem neveznék megoldásnak...
https-en nem látható az URL
Valóban
http auth miért nem jó?
csak kíváncsiságból: miért nem jobb a user:pass##kukac##host.hu verzió? Mihez kellene ez neked pontosan?
u.i.: a HTTP auth esetén, csak egyszer kell elküldened, a böngésző ezután már megjegyzi és küldi magától HTTP fejlécben, s nem kell tovább adogatnod URL -ben (ami nem túl biztonságos), de gondolom ezzel tisztában vagy.
A user:pass##kukac##host.hu
Tisztában vagyok vele, hogy számotokra nem tűnik biztonságosnak a dolog, de nálam pont erre van szükség ahhoz, hogy egy projektet befejezzek. Nem arra kérek senkit, hogy győzzön meg az eljárás helytelenségéről, hanem hogy aki tud megoldást, az segítsen. Ismerem ennek a hitelesítési eljárásnak a gyengeségeit, mégis erre van szükségem. Ami ennek a gyengesége, az a projekt másik elemei által pont az erőssége is egyben.
...