Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Program SQL Server obsługuje dwa tryby uwierzytelniania, tryb uwierzytelniania systemu Windows i tryb mieszany.
Uwierzytelnianie systemu Windows jest domyślne i jest często określane jako zintegrowane zabezpieczenia, ponieważ ten model zabezpieczeń programu SQL Server jest ściśle zintegrowany z systemem Windows. Określone konta użytkowników i grup systemu Windows są zaufane do logowania się do programu SQL Server. Użytkownicy systemu Windows, którzy zostali już uwierzytelnieni, nie muszą przedstawiać dodatkowych poświadczeń.
Tryb mieszany obsługuje uwierzytelnianie zarówno przez system Windows, jak i program SQL Server. Pary nazw użytkowników i haseł są przechowywane w programie SQL Server.
Ważne
Zalecamy używanie uwierzytelniania systemu Windows wszędzie tam, gdzie to możliwe. Uwierzytelnianie systemu Windows używa serii zaszyfrowanych komunikatów do uwierzytelniania użytkowników w programie SQL Server. Gdy są używane identyfikatory logowania programu SQL Server, nazwy logowania programu SQL Server i zaszyfrowane hasła są przekazywane przez sieć, co sprawia, że są one mniej bezpieczne.
W przypadku uwierzytelniania systemu Windows użytkownicy są już zalogowani do systemu Windows i nie muszą logować się oddzielnie do programu SQL Server.
SqlConnection.ConnectionString Poniżej określono uwierzytelnianie systemu Windows bez konieczności podawania nazwy użytkownika lub hasła przez użytkowników.
"Server=MSSQL1;Database=AdventureWorks;Integrated Security=true;Encrypt=True;"
Uwaga / Notatka
Loginy różnią się od użytkowników bazy danych. Musisz mapować loginy lub grupy systemu Windows na użytkowników bazy danych lub role w osobnej operacji. Następnie przyznasz użytkownikom lub rolam uprawnienia dostępu do obiektów bazy danych.
Scenariusze uwierzytelniania
Uwierzytelnianie systemu Windows jest zwykle najlepszym wyborem w następujących sytuacjach:
Istnieje kontroler domeny.
Aplikacja i baza danych znajdują się na tym samym komputerze.
Używasz wystąpienia programu SQL Server Express lub LocalDB.
Logowania SQL Server są często używane w następujących sytuacjach:
Jeśli masz grupę roboczą.
Użytkownicy łączą się z różnych domen, które nie są zaufane.
Aplikacje internetowe, takie jak ASP.NET.
Uwaga / Notatka
Określenie uwierzytelniania systemu Windows nie powoduje wyłączenia logowań SQL Server. Użyj instrukcji ALTER LOGIN DISABLE, aby wyłączyć wysoce uprzywilejowane loginy programu SQL Server w Transact-SQL.
Typy logowania
Program SQL Server obsługuje trzy typy identyfikatorów logowania:
Lokalne konto użytkownika systemu Windows lub zaufane konto domeny. Program SQL Server korzysta z systemu Windows do uwierzytelniania kont użytkowników systemu Windows.
Grupa systemu Windows. Udzielanie dostępu do grupy systemu Windows udziela dostępu do wszystkich logowań użytkowników systemu Windows, które są członkami grupy.
Logowanie do SQL Server. Program SQL Server przechowuje zarówno nazwę użytkownika, jak i skrót hasła w bazie danych master przy użyciu wewnętrznych metod uwierzytelniania w celu zweryfikowania prób logowania.
Uwaga / Notatka
Program SQL Server udostępnia identyfikatory logowania utworzone na podstawie certyfikatów lub kluczy asymetrycznych, które są używane tylko do podpisywania kodu. Nie można ich używać do nawiązywania połączenia z programem SQL Server.
Uwierzytelnianie w trybie mieszanym
Jeśli musisz użyć uwierzytelniania w trybie mieszanym, musisz utworzyć identyfikatory logowania programu SQL Server, które są przechowywane w programie SQL Server. Następnie należy podać nazwę użytkownika i hasło programu SQL Server w czasie wykonywania.
Ważne
Program SQL Server jest instalowany przy użyciu nazwy logowania programu SQL Server o nazwie sa (skrót od "administrator systemu"). Przypisz silne hasło do sa loginu i nie używaj loginu sa w aplikacji. Identyfikator sa logowania jest mapowany na stałą sysadmin rolę serwera, która ma nieodwracalne poświadczenia administracyjne na całym serwerze. Jeśli osoba atakująca uzyska dostęp jako administrator systemu, nie ma żadnych ograniczeń związanych z potencjalnymi szkodami. Wszyscy członkowie grupy systemu Windows BUILTIN\Administrators (grupy administratora lokalnego) są domyślnie członkami sysadmin roli, ale można je usunąć z tej roli.
Ważne
Łączenie łańcuchów połączeniowych z danych wejściowych użytkownika może uczynić cię podatnym na atak polegający na wstrzyknięciu łańcuchów połączeniowych. Użyj elementu SqlConnectionStringBuilder, aby utworzyć składniowo prawidłowe parametry połączenia w czasie wykonywania.
Zasoby zewnętrzne
Więcej informacji zawierają poniższe zasoby.
| Resource | Description |
|---|---|
| Główni | Opisuje loginy i inne podmioty zabezpieczeń w programie SQL Server. |