< Programozás

Felhasználókezelés

Szerző: Sallai András

Copyright © Sallai András, 2014

Licenc: GNU Free Documentation License 1.3

Web: http://szit.hu

Bevezetés

Felhasználókezelést akkor építünk egy rendszerbe, ha a rendszert csak azonosítás után kívánatos elérni, vagy csak szeretnénk tudni ki, mikor mit csinál a rendszeren. Egyetlen felhasználó ritkán elég egy rendszeren. Ha minden ember ugyanazzal a felhasználónévvel lép be, akkor nem ellenőrizhető ki mikor mit csinált. Az előbbiek miatt jobban járunk ha minden személyhez külön felhasználónév jelszó kerül meghatározásra. Ebben az esetben viszont kell egy olyan jogosultságokkal rendelkező felhasználó, aki jogosult más felhasználókat felvenni, törölni, egy szóval karbantartani.

Némely rendszeren, még magához a rendszerhez is különféle hozzáférési szintek szükségesek. Lehet hogy valaki bizonyos tartalmakat csak nézegethet, mások szerkeszthetik is, de egyik sem adminisztrátor a rendszerben.

Felhasználók tárolása

A felhasználók tárolása általában egy adatbázisban történik. Egy felhasználóról minimálisan a következő adatokat szoktuk tárolni.

Felhasznalok
felhasznalonev	jelszo	teljesNev

A felhasználónév egy ilyen rendszerben nem lehet két személynek azonos, így az megfelel egyéni azonosítómezőnek.

Csoportok

A hozzáférés egy skálázhatóbb szintjét adja a csoportok használata. A felhasználók között így lehetnek kiemelt felhasználók, akik szerkeszthetik magát a felhasználói adatbázist, vagy egyes tartalmakat szerkeszthetnek, vagy csak nézegethetik a tartalmakat.

Csoport
csoportAz	csoportNev
Felhasznalok
felhasználonev	jelszo	teljesNev
Tagsag
csoportAz	felhasznalonev

A felhasználókezelés esetén megoldandó tevékenységek

felhasználók felévétele

felhasználónév generálás

kezdeti jelszó

jogok megadása

felhasználók módosítása

törlés

név változtatás

jelszó változtatás

hozzáférési szintek változtatása

szerep változtatása

Jelszavak tárolása

A jelszavak a felhasználók tábláiban kerülnek tárolása, egy táblázat mezőjében. A jelszavakat mindig titkosítva tároljuk, egyirányú, úgynevezett hash algoritmusok valamelyikével.

Kezdetben valamilyen egyszerű titkosító eljárással generálták a jelszavakat. Unix alapú rendszereken ez jellemzően az úgynevezett password() függvény. Később ennél biztonságosabb megoldásnak bizonyult az MD5. Ma ez már ne számít biztonságosnak, helyette az SHA512 algoritmus használata ajánlott.

Hash algoritmus

Egyirányú titkosítási eljárás. Visszafejtés elvileg lehetetlen. Egy hash algoritmus kimenet mindig egyező hosszúságú a titkosított szövegtől függetlenül. Ha a titkosított szöveg 8 bájt, vagy ha 1000 bájt, a hash kód hossza akkor is azonos. Ezért inkább egyfajta lenyomat, esetleg ujjlenyomatként tekinthetünk rá.