KWALIFIKACJA INF3 - WRZESIEŃ 2014

PYTANIE NR 17.
Polecenie REVOKE SELECT ON nazwa1 FROM nazwa2 w języku SQL umożliwia
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Polecenie REVOKE w SQL służy do cofania wcześniej nadanych przywilejów. W zapisie REVOKE SELECT ON ... FROM ... odbierane jest uprawnienie SELECT (czyli prawo odczytu danych) wskazanemu użytkownikowi lub roli dla danego obiektu (np. tabeli lub widoku).

Pełne wyjaśnienie:

W SQL wyróżnia się m.in. polecenia DCL (Data Control Language), które dotyczą kontroli dostępu do obiektów bazy danych. Najczęściej spotyka się parę poleceń: GRANT (nadawanie uprawnień) oraz REVOKE (cofanie/odbieranie uprawnień).

Składnia REVOKE SELECT ON nazwa1 FROM nazwa2 oznacza, że cofamy przywilej SELECT dla wskazanego obiektu bazy danych (w praktyce najczęściej: tabela lub widok) i odbieramy go wskazanemu podmiotowi (użytkownikowi lub roli). Uprawnienie SELECT odpowiada za możliwość odczytu danych, czyli wykonywania zapytań wybierających rekordy.

  • "odbieranie uprawnień użytkownikowi." jest poprawne, bo dokładnie opisuje działanie REVOKE: zabiera wcześniej udzielone prawo (tu: SELECT).
  • "nadawanie uprawnień z użyciem zdefiniowanego schematu." jest niepoprawne, bo nadawanie realizuje GRANT, a "schemat" nie jest kluczowym elementem znaczenia REVOKE w tym kontekście.
  • "usuwanie użytkownika z bazy." jest niepoprawne, ponieważ usuwanie konta użytkownika to zupełnie inna operacja administracyjna (zależna od systemu bazy) i nie jest wykonywana poleceniem REVOKE.
  • "nadawanie praw do tabeli." jest niepoprawne, bo ponownie dotyczy GRANT, nie REVOKE. REVOKE nie przyznaje, tylko cofa.

W praktyce administracyjnej cofanie uprawnień jest ważne dla bezpieczeństwa: po zmianie roli pracownika, odejściu z firmy lub po audycie uprawnień często trzeba odebrać zbędne przywileje, aby ograniczyć ryzyko nieautoryzowanego dostępu (zasada minimalnych uprawnień).

Dodatkowe pytania

Dodatkowe pytania (FAQ):
REVOKE służy do cofania (odbierania) wcześniej nadanych uprawnień do obiektów bazy danych. Najczęściej używa się go do odebrania przywilejów takich jak SELECT, INSERT czy UPDATE wskazanemu użytkownikowi lub roli.
To zapis cofnięcia uprawnienia SELECT do wskazanej tabeli (lub widoku). Oznacza, że dany użytkownik/rola przestaje mieć prawo odczytu danych z tego obiektu, czyli nie powinien móc wykonywać zapytań wybierających rekordy.
REVOKE zarządza tylko przywilejami (prawami dostępu), a nie kontami. Usuwanie użytkownika to osobne polecenia administracyjne zależne od DBMS. Cofnięcie SELECT nie kasuje konta, jedynie ogranicza jego możliwości.
SELECT jako przywilej oznacza prawo do odczytu danych z obiektu (najczęściej tabeli lub widoku). Użytkownik z takim uprawnieniem może pobierać rekordy, ale nie musi mieć prawa do ich modyfikacji (UPDATE/DELETE).
GRANT nadaje uprawnienia (przyznaje dostęp), a REVOKE je odbiera (cofa). Oba polecenia należą do DCL i służą do kontrolowania, kto może wykonywać określone operacje na obiektach bazy danych.
REVOKE stosuje się, gdy trzeba ograniczyć dostęp: po zmianie obowiązków pracownika, po zakończeniu projektu, po wykryciu nadmiarowych uprawnień w audycie lub po incydencie bezpieczeństwa, aby zablokować odczyt danych.
W wielu systemach baz danych uprawnienia mogą być nadawane i odbierane zarówno użytkownikom, jak i rolom. Mechanika bywa podobna, ale szczegóły zależą od DBMS, dlatego warto sprawdzić w dokumentacji danego silnika.
Częsty błąd to pomylenie REVOKE z GRANT i wybranie odpowiedzi o "nadawaniu praw". Inny błąd to traktowanie SELECT wyłącznie jako zapytania, a nie jako przywileju. Zdarza się też mylenie cofania uprawnień z usuwaniem konta.
Zasada minimalnych uprawnień zmniejsza ryzyko wycieku danych i skutki błędów aplikacji. Jeśli konto ma tylko niezbędne prawa (np. SELECT bez UPDATE), to nawet w razie przejęcia konta napastnik ma ograniczone możliwości.
Sposób zależy od DBMS: zwykle sprawdza się widoki/systemowe tabele z przywilejami albo używa narzędzi administracyjnych (np. panelu/CLI). Warto nauczyć się, gdzie w danym silniku przechowywane są informacje o przyznanych prawach.
info

To pytanie poprawnie rozwiązuje 64% zdających egzamin. średnie

Według specjalistów z branży: "Polecenie REVOKE w SQL służy do cofania wcześniej nadanych przywilejów."

Źródła:

  • PostgreSQL Documentation: GRANT and REVOKE (SQL Commands) – https://www.postgresql.org/docs/current/sql-revoke.html (dostęp: 2026-03-01)
  • MySQL 8.0 Reference Manual: REVOKE Statement – https://dev.mysql.com/doc/refman/8.0/en/revoke.html (dostęp: 2026-03-01)
  • Oracle Database SQL Language Reference: REVOKE – https://docs.oracle.com/en/database/oracle/oracle-database/ (sekcja SQL REVOKE; strona dokumentacji REVOKE, dostęp: 2026-03-01)

Materiały:

  • Dokumentacja wybranego DBMS (np. PostgreSQL/MySQL/Oracle) – sekcja GRANT/REVOKE
  • Materiały o SQL DCL i modelu uprawnień (użytkownicy, role, przywileje)
  • Ćwiczenia praktyczne z zarządzania uprawnieniami na przykładowej bazie

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego