Bazy w dresie #2.11 | Mechanizmy bezpieczeństwa systemu bazy danych (część 1.)
📂 MySQL
Bezpieczeństwo baz danych jest kluczowe, ponieważ dane przechowywane w systemach informatycznych mogą być narażone na różnorodne zagrożenia, w tym nieautoryzowany dostęp, błędne operacje czy awarie systemów.
Rodzaje zagrożeń
- Nielegalny odczyt danych przez nieuprawnionych użytkowników.
- Niepoprawne modyfikacje danych spowodowane umyślnym lub przypadkowym działaniem użytkowników.
- Błędy oprogramowania lub awarie systemów komputerowych.
- Zniszczenie danych w przypadku poważnych awarii sprzętu komputerowego.
Mechanizmy ochrony baz danych
W celu zapewnienia bezpieczeństwa danych, stosuje się mechanizmy w następujących obszarach:
- Autentyfikacja i autoryzacja użytkowników – kontrola dostępu do bazy danych.
- Ochrona integralności danych – zapobieganie niepożądanym zmianom danych.
- Monitorowanie operacji – rejestrowanie działań użytkowników w systemie.
- Szyfrowanie danych – zapewnienie poufności przechowywanych informacji.
Autentyfikacja i autoryzacja
Proces autentyfikacji i autoryzacji ma na celu weryfikację użytkowników oraz nadawanie im odpowiednich uprawnień do wykonywania operacji na bazie danych. Wyróżnia się dwa główne typy uprawnień:
- Uprawnienia systemowe – dotyczą całej bazy danych.
- Uprawnienia obiektowe – definiują dostęp do konkretnych obiektów bazy danych (np. tabel, widoków).
Ochrona integralności danych
Integralność danych jest chroniona przez:
- Mechanizmy integralności semantycznej – zapewniają poprawność danych pomiędzy operacjami.
- Mechanizmy integralności transakcyjnej – chronią spójność bazy przy współbieżnym dostępie wielu użytkowników.
Monitorowanie operacji
Każde działanie użytkowników, które wpływa na bezpieczeństwo danych, powinno być monitorowane i rejestrowane. Analiza tych zapisów pomaga ocenić efektywność przyjętej polityki bezpieczeństwa.
Szyfrowanie danych
Aby zapewnić poufność informacji przechowywanych w bazach danych, stosuje się mechanizmy szyfrowania, które chronią dane przed nieautoryzowanym dostępem.
Modele bezpieczeństwa
W zależności od systemu zarządzania bazą danych, stosowane są różne modele bezpieczeństwa:
- Uznaniowy model bezpieczeństwa – użytkownicy mogą nadawać uprawnienia innym użytkownikom.
- Obowiązkowy model bezpieczeństwa – dostęp do danych jest kontrolowany według hierarchicznej klasyfikacji użytkowników i obiektów bazy danych.
Przykłady nadawania uprawnień
Uprawnienia w systemach baz danych są nadawane na dwa główne sposoby:
- Uprawnienia systemowe – np. DBAs (pełne prawa do bazy), RESOURCE (prawo do tworzenia tabel), CONNECT (prawo do korzystania z przyznanych uprawnień).
- Uprawnienia obiektowe – np. SELECT, INSERT, DELETE na określonych obiektach bazy danych.