Czym są role serwerowe w MSSQL?
Role serwerowe w Microsoft SQL Server to predefiniowane grupy uprawnień działające na poziomie całego serwera. Ułatwiają zarządzanie kontami użytkowników, ponieważ zamiast nadawać wiele pojedynczych uprawnień, administrator może przypisać login do odpowiedniej roli.
Role serwerowe dotyczą operacji administracyjnych, a nie tylko pracy wewnątrz jednej bazy danych. Dlatego trzeba odróżniać je od ról bazodanowych, które obowiązują w konkretnej bazie.
Przykłady ról serwerowych
sysadmin– pełna kontrola nad serwerem i wszystkimi bazamiserveradmin– konfiguracja ustawień serwerasecurityadmin– zarządzanie loginami i bezpieczeństwemdbcreator– tworzenie, modyfikowanie, usuwanie i odtwarzanie baz danychprocessadmin– zarządzanie procesami działającymi na serwerzediskadmin– zarządzanie plikami dyskowymi używanymi przez serwer
Rola dbcreator
Rola dbcreator jest często spotykana w pytaniach egzaminacyjnych. Użytkownik należący do tej roli może:
- tworzyć nowe bazy danych,
- zmieniać ich właściwości,
- usuwać bazy,
- odtwarzać bazy z kopii zapasowej.
Nie daje ona jednak pełnej kontroli nad całym serwerem. Takie możliwości ma rola sysadmin.
Najważniejsze rozróżnienie egzaminacyjne
dbcreator– zarządza bazami danych jako obiektami serwera,securityadmin– odpowiada za bezpieczeństwo i loginy,diskadmin– dotyczy plików na dysku,sysadmin– wykonuje każdą operację na serwerze.
Przykład dodania loginu do roli
ALTER SERVER ROLE dbcreator ADD MEMBER [nazwa_loginu];
Co zapamiętać?
W zadaniach egzaminacyjnych słowo dbcreator należy kojarzyć przede wszystkim z operacjami:
- tworzenia,
- modyfikowania,
- usuwania,
- odtwarzania baz danych.
To właśnie odpowiada poprawnej interpretacji tej roli w MSSQL Server.