在 SQL Server 啟用 sa 帳號並設定密碼時,常遇到「密碼有效性驗證失敗,密碼太短不符合 Windows 策略要求」錯誤(訊息 15116)。本文解析背後的群組原則衝突機制,提供立即生效的解決步驟。
-- 嘗試設定簡單密碼並啟用 sa
EXEC sp_password 'sa', null, 'sa'; -- 舊密碼為 null(首次設定)
ALTER LOGIN sa ENABLE;
-- 報錯:
-- 訊息 15116,層級 16,狀態 1
-- 密碼有效性驗證失敗。該密碼太短,不符合 Windows 策略要求。
CHECK_POLICY 選項預設開啟,強制密碼遵循 Windows 本地/網域群組原則(長度、複雜度、歷史記錄等)。-- 使用符合複雜度要求的密碼(範例:大小寫+數字+符號,長度 10+)
EXEC sp_password 'sa', 'Uiop_098Mn', 'sa';
ALTER LOGIN sa ENABLE;
-- 僅適用測試/開發環境,生產環境嚴禁
ALTER LOGIN sa WITH CHECK_POLICY = OFF;
EXEC sp_password 'sa', 'simple', 'sa';
ALTER LOGIN sa ENABLE;
-- 用畢後務必開啟
ALTER LOGIN sa WITH CHECK_POLICY = ON;
sp_password + ALTER LOGIN。sa / 新密碼 登入 SSMS,確認成功。sa。理解 Windows 密碼策略對 SQL Server 登入的強制影響,並採用符合規範的強密碼,即可快速解決 15116 錯誤,同時維持資安防護等級。