| Termin | Definicja |
|---|---|
| Logowanie do SSMS | Logowanie do SSMS to nawiązanie połączenia z instancją SQL Server z poziomu Management Studio, kontem Windows albo SQL. Mechanizm logowania w SQL Server Management StudioLogowanie do SQL Server Management Studio (SSMS) oznacza utworzenie połączenia między programem SSMS a określoną instancją aparatu SQL Server. W oknie „Connect to Server” wskazuje się typ serwera „Database Engine”, nazwę serwera lub instancji, sposób uwierzytelniania oraz dane konta. Samo uruchomienie SSMS nie oznacza jeszcze zalogowania do SQL Server. Połączenie zostaje nawiązane dopiero po potwierdzeniu parametrów i pomyślnym uwierzytelnieniu użytkownika przez instancję. SSMS obsługuje między innymi uwierzytelnianie Windows oraz uwierzytelnianie SQL Server. W pierwszym wariancie serwer wykorzystuje tożsamość zalogowanego użytkownika systemu Windows albo wskazane konto domenowe. W drugim wariancie sprawdzana jest nazwa logowania utworzona w SQL Server oraz odpowiadające jej hasło. Logowanie SQL Server nie jest tym samym co konto systemu Windows: dane wpisane w SSMS są weryfikowane przez aparat bazy danych, a nie przez lokalny ekran logowania systemu operacyjnego. Nazwa serwera, instancja i punkt docelowy połączeniaJednym z najczęstszych powodów nieudanego logowania jest wskazanie niewłaściwego punktu docelowego. Dla instancji domyślnej często podaje się nazwę hosta, adres IP albo nazwę DNS komputera. Instancja nazwana jest zapisywana zwykle w postaci Nazwa wpisana w polu serwera musi odpowiadać instancji, która rzeczywiście działa i przyjmuje połączenia. Błąd może wynikać z pomylenia nazwy komputera z nazwą instancji, użycia aliasu wskazującego nieaktualny adres albo próby połączenia z instancją, która nie nasłuchuje na oczekiwanym protokole. W przypadku instancji nazwanej mechanizm SQL Server Browser może pomagać w odnalezieniu portu, ale jego działanie nie zastępuje poprawnej konfiguracji sieciowej. Przy połączeniu zdalnym znaczenie mają również reguły zapory oraz dostępność odpowiedniego portu. Uwierzytelnianie Windows i SQL ServerUwierzytelnianie Windows jest związane z kontem systemowym lub domenowym i zwykle pozwala zarządzać uprawnieniami przez członkostwo w grupach Windows. SQL Server otrzymuje informację o tożsamości użytkownika z mechanizmu uwierzytelniania systemu. Jeżeli konto nie ma odpowiedniego loginu w SQL Server albo login nie ma dostępu do żądanej bazy danych, samo poprawne zalogowanie do Windows nie zapewni dostępu do zasobów SQL Server. Uwierzytelnianie SQL Server wymaga wpisania loginu i hasła skonfigurowanych w aparacie SQL Server. Ta metoda musi być dozwolona w ustawieniach instancji poprzez tryb mieszany, obejmujący uwierzytelnianie Windows oraz SQL Server. Jeżeli instancja działa wyłącznie w trybie Windows, próba użycia loginu SQL Server zakończy się niepowodzeniem niezależnie od poprawności hasła. Przy logowaniu SQL Server znaczenie mogą mieć także zasady dotyczące złożoności, wygaśnięcia i blokowania haseł, jeżeli zostały włączone dla danego loginu. Poprawne uwierzytelnienie nie jest równoznaczne z pełnym dostępem administracyjnym. Login jest tożsamością rozpoznawaną na poziomie instancji, natomiast użytkownik bazy danych i przypisane role określają dostęp wewnątrz konkretnej bazy. Dlatego konto może połączyć się z SQL Server, ale nie mieć uprawnień do odczytu tabel, wykonywania określonych poleceń albo otwierania wskazanej bazy jako domyślnego kontekstu. Rozpoznawanie błędów podczas logowania w SSMSDiagnozę należy rozpocząć od rozdzielenia problemu sieciowego od problemu uwierzytelniania. Komunikat o braku możliwości nawiązania połączenia może wskazywać na niedostępną usługę SQL Server, błędną nazwę instancji, nieosiągalny host, zablokowany port lub wyłączony protokół TCP/IP. Jeżeli serwer jest osiągalny, ale odrzuca dane konta, przyczyną może być niepoprawne hasło, wyłączony login, brak obsługiwanej metody uwierzytelniania albo blokada konta. W SSMS warto sprawdzić, czy wybrano właściwy typ serwera, poprawną nazwę instancji i odpowiedni rodzaj uwierzytelniania. Przy koncie Windows należy zweryfikować, z jaką tożsamością uruchomiono SSMS, zwłaszcza gdy program działa w innym kontekście użytkownika. Przy koncie SQL Server trzeba sprawdzić login, hasło oraz tryb uwierzytelniania instancji. Jeżeli połączenie dochodzi do skutku, lecz nie otwiera się wybrana baza, należy przeanalizować uprawnienia loginu, mapowanie użytkownika w bazie oraz ustawioną bazę domyślną. Podczas diagnostyki nie należy wielokrotnie zgadywać hasła, ponieważ określone zasady bezpieczeństwa mogą powodować blokowanie loginu po kolejnych nieudanych próbach. Użyteczne są dokładne komunikaty SSMS, dziennik błędów SQL Server oraz informacje o stanie usługi i konfiguracji instancji. Sprawdzenie tych elementów pozwala ustalić, czy problem dotyczy adresowania serwera, transportu sieciowego, negocjacji uwierzytelniania, konta, czy dopiero uprawnień do konkretnej bazy danych. |