Kursy i Poradniki IT - Adrian Kowalski
Kurs SQL dla Początkujących
O lekcji

Zarządzanie użytkownikami jest kluczowym elementem administracji bazą danych. Obejmuje ono tworzenie użytkowników oraz kontrolowanie tego, jakie operacje mogą wykonywać w bazie danych.

Tworzenie użytkowników

Tworzenie użytkowników w SQL odbywa się za pomocą komendy CREATE USER. Nowo utworzony użytkownik domyślnie nie posiada żadnych uprawnień i musi otrzymać stosowne prawa do bazy danych.

Składnia:

CREATE USER 'nazwa_użytkownika'@'host' IDENTIFIED BY 'haslo';
  • nazwa_użytkownika – nazwa użytkownika, który ma być tworzony,
  • host – określa, z jakiej lokalizacji dany użytkownik może się łączyć (np. localhost dla połączeń lokalnych lub % dla dowolnego hosta),
  • haslo – hasło zabezpieczające konto użytkownika.

Przykłady:

  1. Utwórz użytkownika jan mogącego łączyć się z bazy danych z lokalnego hosta:

    CREATE USER 'jan'@'localhost' IDENTIFIED BY 'haslo123';
    
  2. Utwórz użytkownika anna z dostępem z dowolnego miejsca:

    CREATE USER 'anna'@'%' IDENTIFIED BY 'bezpiecznehaslo'
    

Nadawanie uprawnień: GRANT, REVOKE

Aby użytkownik mógł wykonywać operacje w bazie danych, należy nadać mu odpowiednie uprawnienia. W SQL służą do tego polecenia GRANT (nadanie uprawnień) i REVOKE (cofnięcie uprawnień).

Instrukcja GRANT

Nadawanie uprawnień za pomocą GRANT pozwala określić, co użytkownik może robić w bazie danych.

Składnia:

GRANT lista_uprawnień ON zakres TO 'nazwa_użytkownika'@'host';
  • lista_uprawnień – jakie uprawnienia nadajemy (np. SELECT, INSERT, UPDATE),
  • zakres – określa, na jakich zasobach mają obowiązywać uprawnienia (np. konkretna tabela albo cała baza danych),
  • nazwa_użytkownika – użytkownik, któremu nadajemy uprawnienia.

Przykłady:

  1. Pozwól użytkownikowi jan używać baz danych:

    GRANT ALL PRIVILEGES ON *.* TO 'jan'@'localhost';
    
  2. Przyznaj użytkownikowi anna prawo do odczytu danych z tabeli Klienci w bazie Sklep:

    GRANT SELECT ON Sklep.Klienci TO 'anna'@'%';
    
Instrukcja REVOKE

REVOKE służy do cofania uprawnień nadanych wcześniej przy użyciu polecenia GRANT.

Składnia:

REVOKE lista_uprawnień ON zakres FROM 'nazwa_użytkownika'@'host';

Przykład: Cofnij użytkownikowi anna prawo do odczytu z tabeli Klienci:

REVOKE SELECT ON Sklep.Klienci FROM 'anna'@'%';

Po cofnięciu wszystkich uprawnień użytkownik nie będzie mógł wykonywać żadnych operacji na bazie danych, dopóki nie zostaną na nowo przyznane.