| Termin | Definicja |
|---|---|
| Uprawnienia Windows w SQL Server | Uprawnienia Windows w SQL Server dziedziczą przynależność do grup domenowych, upraszczając zarządzanie dostępem. Model uwierzytelniania Windows w SQL ServerUprawnienia Windows w SQL Server są związane z uwierzytelnianiem Windows oraz kontami i grupami zarządzanymi przez system Windows lub usługę Active Directory. Użytkownik loguje się do systemu przy użyciu konta domenowego albo lokalnego, a SQL Server rozpoznaje jego tożsamość na podstawie zabezpieczeń Windows. W tym modelu hasło użytkownika nie jest przekazywane do silnika SQL Server jako osobny zestaw danych logowania. Połączenie korzysta z biletu lub tokenu uwierzytelniającego wystawionego przez mechanizmy systemu Windows. SQL Server odróżnia login serwerowy od użytkownika bazy danych. Login jest obiektem na poziomie instancji i umożliwia rozpoczęcie sesji, natomiast użytkownik bazy danych reprezentuje ten login w konkretnej bazie. Dla konta Windows login może mieć postać Dziedziczenie dostępu przez grupy domenoweGrupa Windows może zostać dodana do SQL Server jako jeden login, na przykład za pomocą polecenia Przy ocenie uprawnień SQL Server uwzględnia token bezpieczeństwa użytkownika, w którym znajdują się między innymi identyfikator konta oraz identyfikatory grup, do których konto należy. Zmiana członkostwa w grupie może wymagać ponownego logowania, aby nowy token został użyty przy tworzeniu sesji. Samo usunięcie konta z grupy nie musi natychmiast zakończyć już ustanowionych połączeń. Dlatego przy zmianach dostępu należy sprawdzać zarówno konfigurację grupy, jak i aktywne sesje oraz sposób ponownego uwierzytelnienia. Role, uprawnienia i kolejność ich ocenyUprawnienia w SQL Server mogą dotyczyć serwera, bazy danych, schematu albo pojedynczego obiektu, takiego jak tabela, widok, procedura składowana czy funkcja. Na poziomie serwera stosuje się między innymi stałe role serwerowe, a w bazie danych role bazodanowe i role niestandardowe. Przykładowo członkostwo w roli może zapewnić prawo do odczytu danych, podczas gdy bezpośrednie nadanie uprawnienia SQL Server rozróżnia uprawnienia Przykładowa konfiguracja może obejmować utworzenie roli bazodanowej, dodanie do niej użytkownika grupowego oraz nadanie roli prawa do odczytu. Taki układ rozdziela tożsamość Windows od modelu uprawnień aplikacyjnych. Ułatwia też audyt: można ustalić, czy dostęp wynika z bezpośredniego przypisania, członkostwa w roli bazodanowej, członkostwa w grupie domenowej czy z uprawnień odziedziczonych przez schemat. Przy diagnostyce należy sprawdzić także domyślną bazę logowania, mapowanie loginu na użytkownika oraz zgodność identyfikatorów zabezpieczeń po odtworzeniu bazy na innej instancji. Diagnostyka odmowy dostępu w SQL ServerOdmowa dostępu może wynikać z kilku różnych przyczyn: brakującego loginu na instancji, braku użytkownika w konkretnej bazie, nieprawidłowego członkostwa w grupie Windows, braku uprawnienia do obiektu albo użycia niewłaściwego kontekstu bazy. Pierwszym krokiem jest ustalenie konta używanego przez aplikację lub narzędzie oraz bazy, do której faktycznie kierowane jest połączenie. Pomocne są funkcje Do sprawdzenia członkostwa w rolach można wykorzystać między innymi Przy analizie problemu trzeba odróżnić błąd uwierzytelniania od błędu autoryzacji. Uwierzytelnianie oznacza potwierdzenie tożsamości, natomiast autoryzacja określa, jakie działania ta tożsamość może wykonać. Jeżeli login nie może rozpocząć sesji, problem występuje przed sprawdzeniem praw do tabeli lub procedury. Jeżeli sesja zostaje ustanowiona, ale operacja kończy się komunikatem o braku uprawnień, należy przeanalizować mapowanie użytkownika, role, dziedziczenie oraz ewentualne zakazy |