兩種驗證模式
| 模式 | 說明 | 連線協定 |
| Windows NT 驗證 | 使用目前 Windows 登入認證,透過 RPC 取得使用者 Token,對照 syslogins 表決定權限。不需輸入帳密。 | Named Pipes |
| 混合模式 (SQL Server + NT) | 允許 SQL Server 驗證 (帳號/密碼) 或 NT 驗證。TCP/IP Sockets 強制使用 SQL Server 驗證。 | TCP/IP Sockets / Named Pipes |
驗證模式儲存於登錄 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\LoginMode:0=混合模式(預設),1=NT 驗證。
遠端連線操作步驟
- 取得目標 IP:
ping 目標主機名 解析 IP 位址。
- 設定用戶端網路工具: 新增「伺服器別名」,協定選 TCP/IP,IP 位址填入第 1 步取得的 IP,連接埠保持預設 1433。
- Enterprise Manager 註冊伺服器: 右鍵「SQL Server 群組」→「新增」→「伺服器註冊」,輸入 IP、登入帳號 (sa)、密碼。
關鍵注意事項
- 權限層級: 僅擁有 sa (系統管理員) 權限的登入才能對整個資料庫操作;單一資料表密碼無法建立伺服器層級連線。
- 防火牆/連接埠: 目標主機防火牆必須開放 TCP 1433 (及 UDP 1434 供瀏覽服務)。
- 禁止遠端連線設定: Enterprise Manager → 伺服器屬性 → 「連線」→ 取消勾選「允許其他 SQL Server 連線」將封鎖所有遠端連線。
- 版本相容性: 用戶端工具版本 (EM、QA) 應與伺服器主版本一致,避免連線失敗。
- 密碼洩露風險: 早期版本 global.asa + .htr 漏洞可能導致連線字串明文外洩,開發時務必避免在前端程式碼硬編碼帳密。
安全性最佳實務
- 停用 sa 帳號或設定極高複雜度密碼,改用 Windows 驗證模式。
- 建立最低權限的應用程式專用登入,僅授與必要資料庫權限。
- 啟用 IPsec 或 VPN 保護傳輸層安全。
- 定期稽核登入失敗事件 (錯誤代碼 18456)。
結語
掌握驗證模式差異、正確設定用戶端網路工具、確認防火牆與伺服器端連線設定,是成功建立 SQL Server 7.0 遠端連線的關鍵。切記:安全性配置永遠優先於連線便利性。