| Termin | Definicja |
|---|---|
| Konfiguracja kont usług | Konfiguracja kont usług to przypisanie tożsamości systemowych, w kontekście których uruchamiane są komponenty SQL Server. Tożsamość procesu a konfiguracja usługi SQL ServerKonfiguracja kont usług w SQL Server określa, pod jaką tożsamością systemu Windows uruchamiany jest proces konkretnego składnika silnika. Konto usługi nie jest kontem użytkownika logującego się do aplikacji ani loginem używanym przez klientów bazy danych. Jest to tożsamość przypisana usłudze systemowej, która wpływa na jej prawa dostępu do systemu plików, zasobów sieciowych, magazynu certyfikatów oraz innych elementów systemu Windows. W typowej instalacji oddzielnie konfiguruje się między innymi usługę SQL Server Database Engine oraz SQL Server Agent, jeżeli Agent został zainstalowany. SQL Server może działać między innymi pod wbudowanym kontem usługi, takim jak Local System, Network Service lub Local Service, albo pod dedykowanym kontem domenowym czy wirtualnym. W nowszych instalacjach SQL Server używane są również wirtualne konta usług w postaci NT SERVICE\NazwaUsługi. Wybór tożsamości nie zmienia samej składni zapytań T-SQL, ale zmienia kontekst bezpieczeństwa procesu. Z tego powodu konto musi mieć dostęp do katalogów zawierających pliki danych, pliki dziennika transakcji, pliki kopii zapasowych oraz inne lokalizacje wymagane przez skonfigurowane operacje. Uprawnienia do plików, udziałów i zasobów systemu WindowsPodczas uruchamiania Database Engine SQL Server musi odczytywać i zapisywać pliki baz danych, zwykle z rozszerzeniami Podobna zasada dotyczy kopii zapasowych, importu i eksportu danych oraz innych operacji wykonywanych przez komponent SQL Server, które korzystają z systemu plików. Dostęp do lokalnego katalogu nie oznacza automatycznie dostępu do udziału sieciowego. Przy zasobie SMB serwer docelowy uwierzytelnia tożsamość, która wychodzi przez sieć. Konto lokalne komputera może nie mieć tam praw odpowiadających kontu domenowemu. W praktyce należy rozdzielić uprawnienia lokalne i sieciowe oraz przydzielać tylko zakres konieczny do wykonania danej operacji. Zmiana konta bez naruszania działania instancjiTożsamość usługi SQL Server powinna być zmieniana za pomocą narzędzi przeznaczonych do konfiguracji SQL Server, takich jak SQL Server Configuration Manager. Narzędzie wykonuje czynności związane z przypisaniem konta do usługi i obsługą wymaganych ustawień systemowych. Ręczna zmiana właściwości logowania usługi w konsoli usług systemu Windows może pominąć elementy konfiguracyjne istotne dla SQL Server. Po zmianie należy sprawdzić uruchomienie usługi, dziennik błędów SQL Server oraz stan baz danych. Przed zmianą konta warto zinwentaryzować lokalizacje plików danych i dzienników, katalogi kopii zapasowych, ścieżki używane przez zadania SQL Server Agent oraz zależności od zasobów sieciowych. Trzeba także rozróżnić konto Database Engine od kont innych usług SQL Server, ponieważ każda usługa może działać pod odrębną tożsamością. Zmiana hasła konta domenowego powinna być wykonana w sposób zapewniający zgodność wpisanych poświadczeń z aktualnym stanem domeny. Po operacji należy przeprowadzić kontrolę logowania, wykonania zadania, dostępu do plików oraz odczytu i zapisu w bazie testowej lub w bezpiecznym oknie serwisowym. Objawy niezgodnej tożsamości usługi SQL ServerBłędna konfiguracja konta może objawiać się nieuruchomieniem usługi, zatrzymaniem podczas startu instancji, komunikatem o braku dostępu do pliku lub niepowodzeniem zadania wykonywanego przez SQL Server Agent. W dzienniku błędów mogą pojawić się informacje o niemożności otwarcia pliku bazy, katalogu albo zasobu wskazanego w konfiguracji. Sam fakt, że administrator systemu Windows może otworzyć dany katalog, nie potwierdza jeszcze poprawności konfiguracji, ponieważ administrator i konto usługi są odrębnymi tożsamościami. Diagnostyka powinna obejmować nazwę usługi, przypisane konto, stan uruchomienia, prawa NTFS do konkretnych ścieżek oraz dostęp do udziałów sieciowych. Należy porównać ścieżki zapisane w konfiguracji z rzeczywistym położeniem plików i sprawdzić, czy konto nie zostało zablokowane lub pozbawione wymaganych praw. W przypadku naprawy komputera lub środowiska z lokalną instalacją SQL Server istotne jest zachowanie spójności między konfiguracją usług, lokalizacją plików baz danych i ustawieniami systemu Windows. Dopiero po potwierdzeniu tych zależności można ocenić, czy problem dotyczy konta usługi, uprawnień do zasobu, konfiguracji instancji czy innego elementu systemu. |