Felhasználói eszközök

Eszközök a webhelyen


oktatas:adatbazis-kezeles:adatbazis-biztonsag

Különbségek

A kiválasztott változat és az aktuális verzió közötti különbségek a következők.

Összehasonlító nézet linkje

oktatas:adatbazis-kezeles:adatbazis-biztonsag [2019/08/15 22:23] (aktuális)
admin létrehozva
Sor 1: Sor 1:
 +[[oktatas:​adatbázis-kezelés|<​ Adatbázis-kezelés]]
 +
 +====== Adatbázis-biztonság ======
 +  * **Szerző:​** Sallai András
 +  * Copyright (c) Sallai András, 2015, 2019
 +  * Licenc: GNU Free Documentation License 1.3
 +  * Web: http://​szit.hu
 +===== Az adatbázis biztonságának rétegei =====
 +
 +  * hozzáférés vezérlés
 +  * auditálás
 +  * azonosítás
 +  * titkosítás
 +  * integritás ellenőrzése
 +  * mentés és visszaállítás
 +  * az alkalmazás biztonsága
 +
 +
 +{{:​oktatas:​adatbázis-kezelés:​adatbazis_biztonsag_retegei.png|}}
 +===== Hozzáférés vezérlés =====
 +==== Jogok meghatározása ====
 +
 +<​code>​
 +GRANT jogok
 +     ON objektum_neve
 +     TO szereplo_neve; ​
 +</​code>​
 +==== Sorszintű biztonság ====
 +
 +<​code>​
 +CREATE VIEW nézet_neve AS
 +    SELECT *
 +    FROM tábla_neve
 +    WHERE mező_neve = user; 
 +</​code>​
 +
 +==== Adatbázis elérés ====
 +Az adatbázis elérés szabályozása a hálózaton.
 +
 +  * adatbázis beállítások - my.ini vagy my.cnf
 +  * tűzfalbeállítások - Netfilter, [[http://​dev.mysql.com/​downloads/​mysql-proxy/​|Mysql-proxy]]
 +
 +
 +{{:​oktatas:​adatbázis-kezelés:​mysql_netfilter.png|}}
 +
 +{{:​oktatas:​adatbázis-kezelés:​mysql_proxy.png|}}
 +===== Auditálás =====
 +==== Naplózás ====
 +
 +Minden tevékenységet naplózunk és rendszeresen ellenőrzünk.
 +
 +  * kilépés/​belépés
 +  * változtatások
 +
 +<code ini /​etc/​mysql/​my.cnf>​
 +#​general_log_file = /​var/​log/​mysql/​mysql.log
 +#​general_log = 1
 +expire_logs_days = 10
 +</​code>​
 +
 +  /​var/​log/​mysql/​mysql.log
 +
 +==== PHPMyAdmin ====
 +
 +  * Kiszolgáló:​ localhost -> Állapot fül -> Felügyelet gomb (stb)
 +
 +===== Azonosítás =====
 +
 +|  felhasználónév ​ |  jelszó ​  |
 +
 +fontos: jelszó erősség
 +
 +követelmény (tartalmazzon):​
 +  * szám
 +  * kis- és nagybetű
 +  * nem betű és nem szám karakter
 +  * legalább 10 karakter hosszú
 +
 +Hozzáférés:​
 +  * A programnak külön felhasználója legyen, amely MySQL felhasználó.
 +  * A felhasználóknak külön hozzáférés,​ amely NEM MySQL felhasználó.
 +
 +{{:​oktatas:​adatbázis-kezelés:​mysql_felhasznalok.png|}}
 +
 +
 +A programnak csak **usage** hozzáférést adunk.
 +
 +===== Integritás,​ Titkosítás =====
 +
 +Adatintegritás a következő algoritmusok biztosítják:​
 +
 +  * AES
 +  * RC4
 +  * 3DES
 +  * MD5
 +  * SHA1
 +  * SHA512
 +  * SSL
 +  * TLS
 +
 +===== Mentés és visszaállítás =====
 +
 +Mentés:
 +  mysqldump -u root -p[titok] [adatbazinev] > mentesfajnev.sql
 +
 +  mysqldump --all-databases > mysql-mentes.sql
 +
 +  * PHPMyAdmin
 +
 +Visszaállítás:​
 +  mysql -u root -p[titok] [adatbazisnev] < mentesfajlnev.sql
 +
 +  * PHPMyAdmin
 +
 +Mentés szerveren:
 +  * rsync 
 +
 +A mentés lehet:
 +  * teljes mentés
 +  * inkrementális mentés ​
 +
 +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"​ 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'​]);​
 +
  
oktatas/adatbazis-kezeles/adatbazis-biztonsag.txt · Utolsó módosítás: 2019/08/15 22:23 szerkesztette: admin