Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學

SQL Server 驗證模式選擇:Windows 驗證 vs 混合模式 差異、優缺點與安全建議

編輯:系統常見問題解答

安裝 SQL Server 時必須選擇驗證模式,事後可在 SSMS 伺服器屬性 → 安全性 頁籤變更(需重啟服務)。

模式定義

  • Windows 驗證模式:啟用 Windows 整合驗證,停用 SQL Server 驗證。僅允許網域/本地 Windows 帳戶登入。
  • 混合模式:同時啟用 Windows 驗證與 SQL Server 驗證(帳號密碼儲存在 SQL Server 內)。

Windows 驗證永遠可用且無法停用。

混合模式必要設定

安裝選混合模式時,必須為內建 sa 帳戶設定強密碼並確認。sa 為 SQL Server 系統管理員,廣為人知且常成攻擊目標,除非應用程式強制需求,否則建議保持停用。切勿設定空密碼或弱密碼。

Windows 驗證優勢(微軟強烈推薦)

  • 憑證由作業系統管理,採用 Kerberos 協定,支援強制密碼複雜度、帳戶鎖定、密碼到期等策略。
  • 單一登入 (SSO):用戶登入網域後無需再輸入密碼連線 SQL Server。
  • 連線被視為「可信連接」,SQL Server 信任 Windows 提供的票證。

SQL Server 驗證缺點

  • 用戶需記住額外帳密,增加認知負擔。
  • 無法使用 Kerberos、Windows 密碼策略、帳戶鎖定機制。
  • 連線字串中明文攜帶帳密(若未加密),風險較高。

SQL Server 驗證適用場景(優點)

  • 支援舊版/第三方應用程式需求 SQL 驗證。
  • 異構環境:非所有用戶皆在 Windows 網域(如 Linux、Unix 用戶)。
  • 跨網域/不可信網域連線(如客戶透過指定 SQL 登入查詢訂單)。
  • Web 應用程式使用者自建身分(表單驗證映射到 SQL 登入)。
  • 開發人員透過預設 SQL 登入建立複雜權限階層分發應用。

密碼策略選項(僅 SQL 登入)

  1. 下次登入必須變更密碼:強制用戶首次登入改密。
  2. 強制密碼到期:套用本機最大密碼壽命策略。
  3. 強制執行密碼策略:套用本機 Windows 密碼策略(長度、複雜度),需 Windows Server 2003+ 支援 NetValidatePasswordPolicy API。

查看本機密碼策略

secpol.msc → 安全性設定 → 帳戶原則 → 密碼原則

安全建議總結

  1. 優先使用 Windows 驗證模式。
  2. 若必須混合模式,禁用 sa 或設極強密碼並定期輪換。
  3. 所有 SQL 登入強制啟用「強制執行密碼策略」。
  4. 定期稽核登入失敗事件(事件檢視器 18456)。
  5. 應用程式連線字串勿硬編碼帳密,使用整合安全性或憑證存儲。

正確選擇與配置驗證模式,是 SQL Server 安全基線的第一道防線。

Copyright © Windows教程網 All Rights Reserved