PHP biztonságos adatbázis kapcsolat
2012-08-14T17:15:01+02:00
2012-08-15T20:22:39+02:00
2022-07-19T02:07:37+02:00
  • Köszönöm!
    Mutasd a teljes hozzászólást!
  • Amennyiben szeretnél belépni az autentikáló névvel és jelszóval,nyilván csak akkor hozod létre a szükséges SESSION-okat ill. COOKIE-kat, ha sikerült belépnie. Innestől kezdve teljesen mindegy milyen csicsát használsz mellé, csak akkor lesz tárolva a név vagy jelszó (általad megadott ideig), ha sikerült belépni.

    Ha ennyire érzékeny adatról van szó, akkor ajánlom,hogy belépés után egy időkódot is tárolj,ami minden oldalfrissítésnél változik. Esetleg IP címet is, így ha esetleg valaki mégis hozzáférne a COOKIE fájlodhoz, (vagy sessionhoz) akkor se tud vele mit kezdeni az IP hiánya miatt.

    Ha ezt adatbázisban tárolod

    ----------------------
    |id|user|pass|ip|time|
    ----------------------

    akkor összebírod hasonlítani a gépen lévő adatokkal.
    Esetleg hash-eled a COOKIE v SESSION-t pl sha1-el.

    $_SESSION["logininfo"]=sha1($_POST["id"].$_POST["user"].$_POST["pass"].$ip);
    $_SESSION["loginid"]=$_POST["id"];

    minden oldallekérésnél UPDATE ... SET time=".time()."

    ezt frissítésekkor ellenőrzöd. ha letelt egy biztonsági időkorlát manuálisan eldobja a COOKIE v SESSION bejegyzéseket.

    Ennél biztonságosabb mód nincs.
    Mutasd a teljes hozzászólást!
  • Sziasztok!

    Egy webes környezetben nem igazán alkalmazott megoldásra lenne szükségem.
    Van egy adatbázisom, amelyben meglehetősen érzékeny adatok vannak letárolva. Tábla szinten korlátozva vannak a felhasználói jogosultságok. Egyik felhasználó még véletlenül sem (esetleges program hiba) olvashatja egy másik felhasználó tábláját.
    A PHP-s kódból való bejelentkezésnek konkrét adatbázis felhasználókkal kell történnie. Tehát nem egy USERS táblában szereplő felhasználói név/jelszó páros engedélyezett, hanem az adatbázisban felvett felhasználók léphetnek be.
    !!!Fontos, hogy nem lehet egy olyan felhasználóval csatlakozni, akinek minden táblához van SELECT joga!!!

    A problémám a következő:
    A bejelentkezéskor elkérem a szükséges adatokat, amivel bejelentkezek az adatbázisba. Csakhogy sikeres autentikálást követően ezt a felhasználói név/jelszó párost valamilyen formában tárolnom kell, hogy a későbbiekben minden lekérdezést ezekkel végezzek.

    Mi lehet erre a legbiztonságosabb megoldás szerintetek?

    A $_SESSION['username'], $_SESSION['password'] biztonságos megoldás egy olyan webszerveren ahol csak én vagyok egyedül, és a session.save_path egy kintről elérhetetlen helyen van?
    Csináltatok már hasonlót esetleg?

    Az építő jellegű kritikákat, hozzászólásokat, javaslatokat előre is köszönöm!
    Mutasd a teljes hozzászólást!
Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd