資料庫安全性是保護資料免遭洩露、竄改或破壞的核心指標。SQL Server 的安全架構採用多層次階層式驗證機制,只有通過上一層驗證才能進入下一層,形成嚴密防護體系。
核心安全層級架構

圖 1 SQL Server 安全性控制策略示意圖
- 第 1 層:Windows 作業系統驗證 — 用戶需先通過 Windows NT/2000 帳號密碼登入作業系統。
- 第 2 層:SQL Server 登入驗證 — 支援「Windows 驗證」與「SQL Server 驗證」兩種模式,由伺服器設定決定允許哪種方式。
- 第 3 層:資料庫使用者權限 — 登入後再依資料庫角色與物件權限控管資料存取。
兩種驗證模式比較

圖 2 SQL Server 系統身份驗證方式示意圖
| 模式 | 適用場景 | 優點 |
| Windows 驗證模式 |
企業內部網域環境 |
單一登入、密碼原則強制、支援群組授權、Kerberos 加密傳輸 |
| 混合模式 |
跨網域、Internet 應用、非 Windows 用戶端 |
相容舊版用戶端、支援 SQL 登入、額外安全層 |
Windows 驗證運作流程
- 用戶登入 Windows 網域,取得存取權杖。
- 連接 SQL Server 時透過命名管道傳遞 Windows 群組/用戶 SID。
- SQL Server 查詢
syslogins 系統表比對 SID,若存在則直接信任(不再驗證密碼)。
- 同一網域內多台 SQL Server 可共用單一網域登入。
混合模式處理邏輯
- SQL 登入連線時,SQL Server 驗證
syslogins 中帳號與密碼雜湊是否吻合。
- 帳號不存在或密碼錯誤即拒絕連線。
- Windows 登入用戶仍走第 1~3 步驟。
最佳實務建議
- 優先採用 Windows 驗證模式,善用群組管理降低維運成本。
- 若必須用混合模式,強制啟用密碼複雜度、鎖定原則、稽核登入失敗。
- 定期檢視
syslogins、sysusers 移除過期帳號。
- 啟用稽核登入事件(成功與失敗),配合 SIEM 持續監控。
透過層層把關,SQL Server 能有效抵禦內外部威脅,確保資料機密性、完整性與可用性。