SQL Server 內建無「限特定機器連接」功能,亦無連接觸發預存程序機制。需透過外部架構或間接手段實現存取控制。
將 SQL Server 置於防火牆後方,利用防火牆規則僅允許授權 IP 存取埠(預設 1433)。此為最安全、功能最完整的作法,符合纵深防禦原則。
開發自訂 ODS Gateway,客戶端連線至 Gateway,由 Gateway 驗證來源後轉發至 SQL Server。缺點:若客戶端發現真實 SQL Server 位址,仍可繞過 Gateway 直連。參考程式碼可至 Microsoft SQL Programmers Toolkit 取得。
建立持續執行的預存程序,定期查詢 sysprocesses.net_address(MAC 位址),對不符合清單的連線發出 KILL 指令。缺點:
採用防火牆 + 網路分段架構:資料庫置於隔離網段,僅應用伺服器可存取;應用層實作身分驗證與授權邏輯。若需資料庫層面管控,SQL Server 2017+ 提供連線攔截器與行級安全性,可作為補充防線。