Przywileje obiektowe to uprawnienia nadawane do konkretnych obiektów bazy danych, takich jak tabela, widok, procedura, funkcja lub sekwencja. Nie dotyczą one zarządzania całym systemem bazy danych ani kontami użytkowników.
Najprościej: przywilej obiektowy odpowiada na pytanie: co użytkownik może zrobić z konkretnym obiektem?
Przykładowe przywileje obiektowe
Typowe przywileje obiektowe to:
SELECT— odczyt danych z tabeli lub widoku,INSERT— dodawanie rekordów,UPDATE— modyfikowanie rekordów,DELETE— usuwanie rekordów,REFERENCES— tworzenie kluczy obcych odwołujących się do tabeli,EXECUTE— wykonywanie procedury lub funkcji.
Przykład
GRANT SELECT, INSERT ON sklep.klienci TO 'adam'@'localhost';
To polecenie pozwala użytkownikowi adam odczytywać i dodawać dane w tabeli klienci w bazie sklep.
Odebranie takiego uprawnienia może wyglądać tak:
REVOKE INSERT ON sklep.klienci FROM 'adam'@'localhost';
Po tej operacji użytkownik może nadal mieć prawo odczytu, ale traci możliwość dodawania rekordów.
Przywileje obiektowe a systemowe
Przywileje obiektowe dotyczą konkretnego obiektu, np. tabeli klienci. Przywileje systemowe dotyczą szerszych działań administracyjnych, np. tworzenia użytkowników lub zarządzania uprawnieniami.
Zapamiętaj
Jeżeli w pytaniu pojawia się konkretna tabela, widok lub procedura oraz operacje typu SELECT, INSERT, UPDATE, DELETE, chodzi zwykle o przywileje obiektowe. Jeżeli pytanie dotyczy kont użytkowników i administracji bazą, chodzi raczej o przywileje systemowe.