Przywileje systemowe w SQL

Słownik kwalifikacji INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

Przywileje systemowe to uprawnienia pozwalające użytkownikowi wykonywać działania administracyjne lub operacje dotyczące całego systemu bazy danych, a nie tylko pojedynczej tabeli czy widoku.

W pytaniach egzaminacyjnych są one najczęściej łączone z tematyką zarządzania kontami, użytkownikami oraz ich uprawnieniami. Oznacza to, że dotyczą m.in. tworzenia użytkowników, nadawania uprawnień, tworzenia struktur bazy lub wykonywania operacji administracyjnych.

Przykładowe czynności związane z przywilejami systemowymi

W zależności od systemu bazodanowego przywileje systemowe mogą obejmować możliwość:

  • tworzenia użytkowników,
  • usuwania użytkowników,
  • nadawania i odbierania uprawnień,
  • tworzenia baz danych,
  • tworzenia tabel,
  • wykonywania operacji administracyjnych,
  • zarządzania rolami.

Przykład

W MySQL do nadawania uprawnień używa się polecenia GRANT, np.:

GRANT CREATE USER ON *.* TO 'admin'@'localhost';

Taki typ uprawnienia nie dotyczy jednej konkretnej tabeli, ale działania administracyjnego w systemie bazy danych.

Różnica względem przywilejów obiektowych

Przywileje systemowe dotyczą działań globalnych lub administracyjnych, natomiast przywileje obiektowe dotyczą konkretnych obiektów, np. tabeli, widoku lub procedury.

Przykład obiektowy:

GRANT SELECT ON sklep.produkty TO 'jan'@'localhost';

To pozwala użytkownikowi odczytywać dane z tabeli produkty, ale nie daje mu prawa do zarządzania kontami użytkowników.

Zapamiętaj na egzamin

Jeżeli pytanie mówi o kontach, użytkownikach, zarządzaniu uprawnieniami i zabezpieczeniach umożliwiających działania na bazie danych, poprawnym skojarzeniem są zwykle przywileje systemowe.