Odkryliśmy, że konto SQL „sa” jest używane w sposób, w jaki nie powinno tak być, dlatego zmieniamy hasła sa we wszystkich naszych instancjach SQL.
(Mamy serwery SQL 2005 do 2017 działające w trybie uwierzytelniania mieszanego. Wszyscy użytkownicy i aplikacje powinni się łączyć z kontami domeny lub kontami SQL innymi niż sa. Monitorowałem, ale nie znalazłem żadnych innych aplikacji, użytkowników ani innych - wewnętrzne pająki korzystające z konta sa).
Kilka pytań:
P1: Czy zmiana hasła sa wymaga ponownego uruchomienia SQL?
Znalazłem kilka odniesień, które mówią, że po zmianie hasła do konta sa wymagane jest ponowne uruchomienie usługi SQL:
Czy to prawda? Czy tylko jeśli zmienię tryb uwierzytelniania? Czy tylko wtedy, gdy rutynowo loguję się jako SA?
Ten wątek centralny programu SQL Server sugeruje nawet, że zmiana może mieć wpływ na istniejące zadania agenta SQL i inne rzeczy; czy to problem? Czy tylko wtedy, gdy ktoś zakodował konto SA w pakiecie SSIS lub coś takiego?
(W razie potrzeby korzystamy z kont domeny dla usługi SQL i usługi agenta SQL oraz kont proxy domeny dla zadań wywołujących pakiety SSIS lub skrypty PowerShell).
Q2: Czy mogę zmienić hasło sa w „normalny” sposób?
Czy mogę to zresetować tak jak inne konta? Korzystanie z SSMS lub bardziej prawdopodobne poprzez:
ALTER LOGIN sa WITH PASSWORD = 'newpass';
Czy też musiałbym wejść w tryb jednego użytkownika lub coś, co wymagałoby planowanego przestoju? (Pamiętaj, że uruchamiałbym to z konta domeny, a nie będąc połączonym jako „sa”).
P3: Czy powinniśmy starać się regularnie zmieniać hasło? Czy tylko wtedy, gdy znajdziemy problem?
Czy jest to zalecana „najlepsza praktyka”?
To jest zamykanie drzwi stodoły po tym, jak konie już uciekły z pytania.
Powinieneś zmienić nazwę i wyłączyć konto sa podczas tworzenia instancji.
Źródło
Jeśli utrzymujesz konto „sa” jako awaryjny sposób uzyskania dostępu do SQL, istnieją bezpieczniejsze sposoby: Połącz się z SQL Server, gdy administratorzy systemu są zablokowani Jeśli nie masz dostępu do konta sieciowego, masz większe problemy, a nie bycie w stanie połączyć się z SQL.
źródło