| Termin | Definicja |
|---|---|
| Widok sys.database_permissions | sys.database_permissions zawiera listę uprawnień przyznanych w obrębie konkretnej bazy danych. Widok sys.database_permissions — czym jest i co opisujeWidok Każdy wiersz widoku opisuje pojedynczą regułę bezpieczeństwa. Najważniejsze informacje znajdują się między innymi w kolumnach Warto pamiętać, że widok dotyczy poziomu bazy danych. Nie jest pełnym zestawieniem wszystkich mechanizmów bezpieczeństwa występujących w instancji. Uprawnienia logowania, członkostwo w rolach na poziomie instancji oraz niektóre ustawienia dostępu należy analizować w innych katalogach systemowych. sys.database_permissions w kontekście klas i zakresów uprawnieńInterpretacja danych zależy od kolumny Znaczenie ma także stan uprawnienia. Wartość opisana jako Uprawnienia mogą być nadawane bezpośrednio użytkownikowi albo roli. W drugim przypadku trzeba ustalić członkostwo w rolach za pomocą Przy porównywaniu z innymi źródłami należy rozdzielić trzy pojęcia: uprawnienie zapisane jawnie, uprawnienie odziedziczone oraz uprawnienie wynikające z przynależności do uprzywilejowanej roli. Widok sys.database_permissions a typowe problemy diagnostyczneJednym z częstych problemów jest przekonanie, że brak wiersza dla użytkownika oznacza brak jakiegokolwiek dostępu. Użytkownik może jednak dziedziczyć prawa z roli albo otrzymywać je przez uprawnienie nadane wyżej w hierarchii. Odwrotna sytuacja również jest możliwa: pojedynczy wpis Innym źródłem nieporozumień są identyfikatory. Wartość Problematyczne bywają również uprawnienia kolumnowe. Jeżeli prawo dotyczy wybranych kolumn, należy uwzględnić Nie należy usuwać wpisów katalogowych ręcznie. Są one wynikiem poleceń bezpieczeństwa, takich jak sys.database_permissions — praktyczne zapytania i dobre nawykiPodstawowy raport powinien łączyć nazwę podmiotu, nazwę uprawnienia oraz opis klasy. Przykładowy schemat zapytania może wyglądać następująco:
Takie zapytanie jest dobrym punktem wyjścia, lecz nie pokazuje jeszcze nazwy zabezpieczanego obiektu. W kolejnym kroku można dodać połączenie z Dobrym zwyczajem jest tworzenie raportów rozdzielających uprawnienia użytkowników od uprawnień ról. Należy także oznaczać konta nieaktywne, role niestandardowe oraz reguły o szerokim zasięgu. Warto przechowywać cykliczne zestawienia, aby wykrywać nowe wpisy, nagłe usunięcia i zmiany stanu. Samo porównanie tekstowych nazw nie zawsze wystarcza, ponieważ zmiana właściciela, schematu albo członkostwa w roli może zmienić efekt końcowy bez modyfikacji konkretnego wiersza w analizowanym widoku. Podczas diagnostyki należy testować dostęp w odpowiednim kontekście użytkownika. Odczyt katalogu przez konto administracyjne nie odpowiada automatycznie temu, co zobaczy zwykły użytkownik, ponieważ widoczność metadanych może być ograniczona. Wyniki warto potwierdzić próbą operacji, która ma być dozwolona lub zablokowana, oraz przeanalizować komunikat błędu bez ujawniania zbędnych danych. Kiedy sprawdzić widok sys.database_permissions w serwisieAnaliza tego widoku jest przydatna, gdy po zmianie użytkownika, roli albo aplikacji pojawia się odmowa dostępu, nieoczekiwana możliwość odczytu lub problem z wykonaniem procedury. Warto sięgnąć po nią również wtedy, gdy dokumentacja uprawnień jest nieaktualna, występują konta o podobnych nazwach albo konieczne jest przygotowanie uporządkowanego audytu konfiguracji bazy danych. Szczególnej uwagi wymagają wpisy nadane bezpośrednio użytkownikom, szerokie uprawnienia schematów oraz kombinacje Jeżeli interpretacja katalogów systemowych jest niejasna, można skorzystać z pomocy Warszawskiego Pogotowia Komputerowego 24/7 przy uporządkowaniu diagnostyki i przygotowaniu czytelnego opisu problemu. Przed analizą warto zebrać nazwę bazy, nazwę użytkownika, oczekiwaną operację, komunikat błędu oraz moment wystąpienia problemu. Tak przygotowane informacje ułatwiają odróżnienie błędnego wpisu w Najważniejsza zasada brzmi: widok powinien być traktowany jako jeden z elementów większego obrazu bezpieczeństwa. Dopiero połączenie jego danych z katalogiem podmiotów, członkostwem w rolach, obiektami i testem rzeczywistej operacji pozwala wiarygodnie ustalić, kto ma dostęp, do czego ten dostęp prowadzi oraz które uprawnienie odpowiada za obserwowane zachowanie. |