Tartalomjegyzék

< Adatbázis-kezelés

Adatbázis-biztonság

Az adatbázis biztonságának rétegei

Hozzáférés vezérlés

Jogok meghatározása

GRANT jogok
     ON objektum_neve
     TO szereplo_neve; 

Sorszintű biztonság

CREATE VIEW nézet_neve AS
    SELECT *
    FROM tábla_neve
    WHERE mező_neve = user; 

Adatbázis elérés

Az adatbázis elérés szabályozása a hálózaton.

Auditálás

Naplózás

Minden tevékenységet naplózunk és rendszeresen ellenőrzünk.

/etc/mysql/my.cnf
#general_log_file = /var/log/mysql/mysql.log
#general_log = 1
expire_logs_days = 10
/var/log/mysql/mysql.log

PHPMyAdmin

Azonosítás

felhasználónév jelszó

fontos: jelszó erősség

követelmény (tartalmazzon):

Hozzáférés:

A programnak csak usage hozzáférést adunk.

Integritás, Titkosítás

Adatintegritás a következő algoritmusok biztosítják:

Mentés és visszaállítás

Mentés:

mysqldump -u root -p[titok] [adatbazinev] > mentesfajnev.sql
mysqldump --all-databases > mysql-mentes.sql

Visszaállítás:

mysql -u root -p[titok] [adatbazisnev] < mentesfajlnev.sql

Mentés szerveren:

A mentés lehet:

A crontab rendszerrel időzítjük.

Alkalmazások biztonsága

SQL injekció

Ellenőrizzük a bekért adatmezőket, mielőtt adatbázisban rögzítjük azokat.

Egy az alábbihoz hasonló bevitellel, a jelszavak megkerülhetők. Ezt nevezzük SQL injekciónak:

a" or 1 = 1 "

Ennek megelőzésére egyik lehetőség a mysqli használata esetén a mysqli_real_escape_string() függvény használata:

$user = mysqli_real_escape_string($con, $data['user']);