讓 AI 連公司資料庫安全嗎?唯讀連線與內網部署做法
可以做到安全,關鍵有三件事:唯讀權限(從技術上杜絕寫入與竄改)、加密傳輸與內網友善的連線方式(資料庫不必暴露在公網)、以及資料不用於訓練模型的合約承諾。
「讓 AI 碰我們的資料庫」聽起來就危險——這是每一位 IT 主管的直覺反應,而且這個直覺是對的:做錯了確實危險。這篇整理讓 AI 查資料庫的真實風險,以及每一項對應的工程做法,供你評估任何同類服務時使用。
AI 查資料庫有哪些真實風險?
- 寫入風險:AI 產生的 SQL 若不受限制,可能修改或刪除資料
- 外洩風險:資料在傳輸或處理過程中流出,或被用於訓練模型
- 暴露風險:為了讓外部服務連入,把資料庫開放到公網
- 越權風險:員工透過 AI 查到本不該看的資料(薪資、成本)
- 稽核缺口:查了什麼、誰查的,事後無從追查
唯讀連線怎麼做到「技術上不可能寫入」?
關鍵字是「多層防護」,而不是「相信 AI 不會亂來」。以 BizQuery 為例,每一條查詢要過三道關:第一,SQL 語句閘門——只放行單一 SELECT 查詢,任何寫入、修改、刪除語句在執行前就被拒絕;第二,查詢一律在資料庫的唯讀交易中執行;第三,連線帳號本身就是資料庫層級的唯讀角色,只被授予 SELECT 權限。三層任何一層都足以擋下寫入,疊起來則是縱深防禦。
評估任何 AI 查詢服務時,可以直接問對方:「如果 AI 產生了一條 UPDATE 語句,它會在哪一層被擋下?」答案應該是「至少兩層以上、而且其中一層在資料庫本身」。只靠應用程式層過濾是不夠的。
資料庫在內網、沒有對外 IP 怎麼辦?
不需要為了用 AI 查詢而把資料庫暴露在公網上。常見做法有三種:SSH Tunnel、VPN,以及由內網主動向外撥出的反向連線(connector)——在你的網路內跑一個小程式,由它主動建立加密通道連出去,外部服務完全不需要連入權限,防火牆不必開任何 inbound 埠。實際採用哪種,依貴司資安政策在導入期與 IT 一起確認。
資料會被拿去訓練 AI 嗎?
這要看服務商採用的 AI 供應商合約。正確的答案應該是:查詢過程中資料僅用於產生當次回覆,不被用來訓練任何模型,也不與其他客戶共用。企業級 AI 服務在合約上即承諾輸入資料不用於訓練——簽約前把這一條白紙黑字確認清楚。
怎麼限制不同員工能查的範圍?
兩層做法:資料庫端,開通的唯讀權限本身就能限定範圍(例如不開放成本、薪資等敏感表);系統端,再依帳號設定可查詢的資料範圍,讓行銷看得到訂單、看不到進貨成本。查詢紀錄應完整留存,誰問過什麼都可以稽核。
| 風險 | 對應做法 | 驗證方式 |
|---|---|---|
| 寫入/竄改 | 多層唯讀防護(語句閘門+唯讀交易+唯讀帳號) | 問服務商:UPDATE 會在哪層被擋? |
| 傳輸外洩 | 全程加密連線 | 確認協定與憑證 |
| 公網暴露 | SSH Tunnel/VPN/反向連線 | 防火牆不開 inbound 埠 |
| 用於訓練 | 供應商合約承諾不訓練 | 合約條文白紙黑字 |
| 員工越權 | 資料庫權限範圍+帳號層級範圍設定 | 實測敏感表查不到 |
| 無法稽核 | 查詢紀錄完整留存 | 調閱任一帳號的歷史查詢 |