
最近我們在自己的 Claude Code、Cursor 內部工作流裡,發現一件讓我們反覆確認的事:
公司的資安政策裡,完全沒有提到 AI Coding 工具。
這件事本身不算新鮮,但當我們把它攤在 IT 主管面前時,對話的走向讓人意外。大多數人的第一反應是「那是工程師的事」,而不是「那是合規的事」。
所以讓我直接問你:如果明天你的工程師把一份客戶訂單資料庫的連接字串貼進 Cursor 聊天框,你的公司有任何機制能在 24 小時內發現嗎?
這篇文章的出發點,是給有決策權的老闆和 IT 主管讀的。工程師可以看,但那些能簽核工具採購、能要求資安政策的人,才是真正的目標讀者。AI 寫程式合規稽核(AI Coding Compliance Audit)這件事,在 2026 年已經從工程師的技術作業,升級成老闆必須主動掌握的治理議題。
GitHub 在 2024 年的 Octoverse 報告 中提到,超過 50% 的企業開發者已在日常工作中使用 AI Coding 工具。這代表每天有數以百萬計的程式碼片段,含括 API 金鑰、客戶資料邏輯、授權驗證流程,正在被貼入各種 AI 模型的 context window。
為什麼 AI 寫程式合規稽核從工程議題升級成老闆議題
2019 年,你不需要替開發工具做合規審計,因為開發工具就是 IDE,頂多是 VS Code 加幾個 plugin。2024 年之後,開發工具等於一個不斷接收 prompt 的語言模型端點。這個差異,決定了整個法遵責任鏈的位移。
傳統 IDE 的邏輯很單純:程式碼在你的 laptop,你的 Git repo,你的 CI/CD pipeline。AI Coding 工具的邏輯則是:程式碼在 AI 供應商的 inference cluster,在雲端 context cache,有時候還在訓練資料集裡。換句話說,每一次你的工程師貼出一段程式碼,就等於做了一次受控(或不受控)的資料傳輸。
這件事為什麼是老闆的事,有三條清晰的理由。
第一,責任在公司而不在工具供應商。 Cursor、GitHub Copilot、Claude Code 的服務條款,通常有「不對使用者送入的輸入資料負保密責任」的免責條款。你的工程師貼了什麼,法律責任落在你的公司。
第二,監管正在跟上。 台灣個資法修正草案(2024 年版本)、歐盟 AI Act 都開始對「以 AI 工具處理個資」的情境設定企業責任。KPMG 做過一份調查,結果很直接:超過 60% 的歐盟企業在 AI Act 正式生效後才開始意識到自己的 AI Coding 工作流有合規缺口。
第三,稽核可追溯是董事會議題。 一旦客戶要求提供程式碼開發的來源記錄(code provenance),或是 IP 歸屬爭議上了法院,你必須能回答:這段程式碼是誰寫的、用了什麼工具、工具有無存取任何機敏輸入。這種可追溯性,靠工程師個人自律根本做不到。
4 條法遵紅線:資料外洩、著作權、開源授權汙染、稽核可追溯
我們整理出中小企業在導入 AI Coding 工具後,最容易踩到的 4 條法遵紅線。這些不是假設情境,是來自實際案例的分類。
法遵紅線 | 觸發情境 | 責任方 | 潛在後果 |
|---|---|---|---|
機敏資料外洩 | 工程師將 DB 連線字串、API key 貼入 AI 工具 prompt | 公司 | 客戶個資外洩、個資法罰款 |
著作權歸屬爭議 | AI 生成程式碼被客戶主張不可商業授權 | 開發商(你的公司) | 交付物無效、合約違約賠償 |
開源授權汙染 | Copilot 吐出 GPL/AGPL 授權片段混入商業專案 | 客戶(最終用戶) | 整個 codebase 被迫開源 |
稽核可追溯缺失 | 無法提供「哪段程式碼由 AI 生成、用了哪個模型」的記錄 | 公司 | 合規稽核失敗、法律訴訟舉證不利 |
這 4 條紅線的共通點是:光靠工程師的個人意識管控,都會在規模化之後失控。一個 10 人開發團隊,每天平均進行 50 次以上的 AI 工具互動。你沒有 policy,就等於沒有管控。
關於開源授權汙染這條紅線,我們推薦參考 FOSSID 的 開源授權合規指南,這是目前對 AI 生成程式碼開源授權問題討論最完整的公開資源之一。
關於 AI 系統採購的 IP 歸屬條款,可以延伸閱讀我們之前整理的AI 系統採購合約 IP 歸屬完整指南,裡面有實際合約條款的紅線範本。
5 個真實資料外洩情境,每一個都比你想的更常見

以下 5 個情境,我們在合作客戶的工作流裡,或是業界資安回報裡,都見過類似的版本。不是學術假設,是真實發生過的問題模式。
情境 1:Cursor 貼 Production 資料庫密鑰
工程師在 debug 時,把 .env 裡的 DATABASE_URL(含 production 密碼)直接貼進 Cursor 的 chat window,想讓 AI 幫忙分析連線問題。Cursor 的 context 送出到 Anthropic 或 OpenAI 的 API,這段字串就進了雲端推論環境。
後果:即使 AI 供應商聲稱不會保留推論資料,但 prompt 在傳輸過程中的曝露、以及工程師的行為本身,已構成「未授權傳輸 production 機敏資訊」的合規事件。這不是我們自己說的,GitGuardian 的 State of Secrets Sprawl 2024 報告 顯示,超過 12.8 萬個 secrets 在 GitHub 上被公開推送,其中相當比例源自 developer 的 AI 工具使用習慣。
情境 2:GitHub Copilot 訓練資料回吐
Copilot 在某些情境下會產生與訓練資料高度相似的程式碼片段,包括含有真實 API key 或特定授權片段的程式碼。這個問題在 2023 年已有研究者公開提出,Microsoft 也因此更新了 Copilot 的 filter 機制,但「訓練資料回吐」的風險並未完全消除。
後果:如果工程師沿用 Copilot 吐出的含版權程式碼,並將其整合進客戶專案,著作權責任落在你的公司。
情境 3:Claude Code MCP 過度授權
Claude Code 透過 MCP(Model Context Protocol)連接外部工具和資料來源。若開發者在設定 MCP server 時,將具備 read/write 權限的資料庫工具全開,等於讓 Claude Code agent 擁有不受限制的 production 資料存取。
後果:當 AI agent 在執行任務時,可能無意間讀取、甚至修改客戶資料。這在我們自己的 Claude Code agent harness 設定裡,是第一個要鎖的項目,原則是「最小授權」,每個 MCP 工具只開它完成任務所需的最小權限集。
情境 4:開發者 Laptop 存有 Legacy Repo 明文密鑰
工程師的本機環境,通常存有歷史專案的 .env 檔、legacy AWS credentials、甚至舊版的客戶資料庫備份。當 AI Coding 工具(特別是有本機 file access 能力的 Agentic 工具)被允許掃描整個 project folder 時,這些歷史機敏資料就進入了 context。
後果:一次「請幫我重構這個舊專案」的 prompt,可能把 3 年前的客戶帳號密碼送進 AI 推論環境。
情境 5:Prompt 漏抄客戶 API Key
這是最簡單、也最常見的情境:工程師在寫 prompt 說明背景時,不小心把含有客戶 API key 的程式碼片段直接複製進去,以為只是個環境變數範例。
後果:客戶的第三方服務授權金鑰洩露,後續追查責任時,「誰貼的、什麼時候貼的」完全沒有稽核紀錄可查。這就是稽核可追溯缺失紅線的最典型場景。
要了解更完整的 AI Coding 安全事件分析,可以參考我們整理的AI 程式碼安全完整指南:6 條紅線與 5 大 SOP,裡面包含了 9 秒刪光資料庫的真實事件還原。
稽核模板 A:機敏資訊分級與 IDE Prompt Filter
這套模板的目的是建立一個「上游防護」機制,在機敏資訊進入 AI 工具之前就攔截。適合 IT 主管推行公司政策時使用。
第一步:機敏資訊分級定義
把公司所有可能進入 AI 工具的資訊,按風險等級分三級:
分級 | 類型 | 範例 | AI 工具使用限制 |
|---|---|---|---|
S1 絕對禁止 | 生產環境機敏 | DB 密碼、API Key、OAuth token、客戶個資 | 禁止以任何形式貼入 AI 工具 context |
S2 需脫敏 | 業務邏輯資料 | 資料庫 schema、API 端點結構、客戶 ID 格式 | 匿名化後方可使用,真實值替換為 placeholder |
S3 公開可用 | 技術框架資訊 | 使用的 library 版本、UI 元件邏輯、工具設定 | 可直接使用,但需記錄使用的 AI 工具版本 |
第二步:IDE Prompt Filter Policy
在 Cursor 的 .cursorrules 或 Copilot 的系統 prompt,加入以下規則聲明(屬於政策紀律層面,依靠制度而非單一技術手段):
「本工作環境禁止將 S1 等級資訊送入任何 AI 模型。所有包含真實憑證、個人資料、或生產環境設定的 prompt,必須先完成脫敏替換。」
配合 .gitignore 把 .env、*.pem、credentials.json 加進全域封鎖清單,並設定 pre-commit hook 掃描 staged files 是否含有常見的 secret pattern(使用 detect-secrets 或 gitleaks)。
關於 AI 系統供應商盡職調查,可以延伸閱讀AI 採購供應商盡職調查 SOP 指南,裡面包含資料處理條款的逐條審查清單。
稽核模板 B:Repo Secret Scan 與 Rotation SOP

這套模板處理的是「已經進去了怎麼辦」的問題,比上游防護更緊急,也是大多數公司最容易跳過的環節。
Repo Secret Scan 工具選型
目前市面上有三個主流工具,各有適用情境:
工具 | 適用情境 | 整合方式 | 免費方案 |
|---|---|---|---|
gitleaks | 中小企業,輕量 pre-commit 整合 | CLI + GitHub Actions | 完全免費,開源 |
detect-secrets | Python 生態系,自訂 regex 規則強 | pre-commit hook | 完全免費,開源 |
GitGuardian | 需要集中管理面板、多 repo 掃描 | SaaS + GitHub App | 5 開發者以下免費方案 |
Secret Rotation SOP(4 步驟)
一旦發現 secret 可能已洩露(不管確不確定,只要懷疑就啟動),按以下流程執行:
步驟 1:立即 revoke 疑似洩露的憑證,不等確認,先廢先查。
步驟 2:在對應平台(AWS IAM、GitHub Token、Stripe Dashboard)生成新憑證,更新所有使用到該憑證的服務。
步驟 3:清查 Git history,使用 git log 加上 -S 參數搜尋特定 secret pattern,確認洩露範圍。若需要清除歷史記錄,可使用 git filter-repo(注意這會改寫 commit hash,需通知所有協作者)。
步驟 4:記錄本次 incident,含發現時間、洩露範圍、rotation 完成時間(MTTR),作為下次稽核的基準。目標是把 secret rotation MTTR 壓在 4 小時以內。
我們公司自己每天跑 20+ AI 流程,在自己的 Claude Code agent harness 裡,secret scan 是 pre-commit hook 的第一道關卡,任何 S1 等級資訊出現在 staged files 裡,整個 commit 直接 block。這個機制上線之後,我們內部的「意外 secret commit」事件降到了零。
關於酷澎個資外洩事件的 SOP 分析,可以參考我們整理的個資外洩危機處理:員工離職權限撤銷 SOP,這是一個因權限管理失效導致資料外洩的完整案例。
稽核模板 C:AI 生成物歸屬與開源授權合約條款
這套模板處理的是「程式碼出生之後的法律身份」問題。對中小企業老闆來說,這通常是最容易被忽略、但潛在損失最大的一條。
AI 生成程式碼的著作權現狀
台灣著作權法目前沒有明文規定「AI 生成物的著作人」。實務上,各大 AI Coding 工具供應商的立場大致如下:Copilot 聲稱生成物為使用者所有,但免除自身對著作權侵害的責任;Claude Code 與 Cursor 的立場類似。
這意味著:如果 AI 工具吐出一段與某個開源專案高度相似的程式碼,且該開源專案是 GPL 授權,你用了那段程式碼,理論上你的整個 codebase 可能需要開源。這條紅線對做 SaaS 或客製化系統的公司,是存亡等級的風險。
合約條款:對客戶交付的 AI 生成物聲明
建議在開發合約裡加入以下條款(這是模板,需要律師審核後使用):
「乙方在開發過程中可能使用 AI 輔助工具。乙方承諾:(一)對 AI 生成之程式碼進行開源授權掃描,確認無 GPL/AGPL 等 copyleft 授權污染;(二)保存 AI 工具使用記錄,作為程式碼來源追溯之依據;(三)若因 AI 生成物之著作權問題導致客戶損失,乙方負賠償責任。」
關於 SOC 2 Type II 稽核在 AI 供應商採購的應用,可以延伸閱讀SOC 2 Type II AI 供應商採購:12 項稽核重點,裡面包含了對 AI 工具供應商的合規評估框架。
客製化系統程式碼審計的詳細流程,可以參考我們的客製化系統上線前程式碼審計 6 大項目,這篇涵蓋了從授權掃描到安全測試的完整 checklist。
我們的看法是:3 年後 AI 生成程式碼的著作權問題,會成為每一份軟體開發合約的標準條款,因為法院的判例正在累積,一旦第一個大型訴訟確立標準,整個市場的合約規範就會快速收斂。現在提前在合約裡加進這條,成本幾乎為零,等到被迫加的時候,代價就是一次訴訟。
中小企業老闆本季就能落地的 6 個動作
這些動作按執行難度排序,前 3 個不需要工程師資源,後 3 個需要工程師配合,但都是一次性設定。
動作 | 誰來執行 | 預估工時 | 達成指標 |
|---|---|---|---|
1. 建立 AI 工具使用政策文件(含 S1/S2/S3 分級) | IT 主管 | 2-4 小時 | 政策文件上線,全員知悉 |
2. 更新採購合約,加入 AI 生成物條款 | 老闆 + 法務 | 1-2 天(含律師審核) | 所有新合約含 AI 聲明條款 |
3. 清查現有 AI 工具訂閱,確認資料處理條款 | IT 主管 | 半天 | 建立工具清單 + 條款摘要 |
4. 設定 gitleaks pre-commit hook | 工程師 | 2-4 小時 | 所有 repo 啟用 secret scan |
5. 執行全 repo 歷史 secret scan | 工程師 | 1-2 天 | 歷史洩露清單 + rotation 完成 |
6. 設定 AI 工具的最小授權原則(特別是 MCP 設定) | 工程師 + IT 主管 | 1 天 | 所有 AI agent 工具通過權限審核 |
這 6 個動作,可以在一個季度內完成,建立起基本的 AI Coding 治理框架。它不能保證 100% 沒有風險,但可以讓你在稽核、客戶問詢、或萬一發生事件時,有據可查、有 SOP 可循。
關於 AI Agent 採購系統的評估方法論,可以延伸閱讀AI Agent 評估方法論:SMB 6 大 KPI 與 90 天驗收清單,這篇提供了從採購到驗收的完整框架。
想聊聊現況?
我們很樂意聽你聊聊現況。如果你正在評估 AI Coding 工具的合規風險,或是需要一份適合自己公司規模的稽核模板,來這裡聊聊。不用準備什麼,帶著你的問題就好。
ℹ️我們怎麼看
AI Coding 合規稽核這件事,現在大多數中小企業的做法是等事情發生再說。我們認為這個策略的成本被嚴重低估了。一次客戶資料外洩事件的損害,遠超過建立整套稽核框架的成本。我們自己在內部工作流上,選擇的路是「把合規稽核工具化」,用 pre-commit hook 和 MCP 最小授權設定,把稽核負擔從工程師的人工判斷,轉移到自動化流程。這個取捨讓我們在新增 AI 工具時,不需要每次都重新評估風險。給你的判斷工具是:如果你的團隊今天有人「意外」貼了一個 API key 進 AI 工具,你多快能知道?
ℹ️我們做過這件事
我們公司自己每天跑 20+ AI 流程,包括 Claude Code agent harness、n8n 自動化和 MCP 工具整合,所以 AI Coding 合規問題是我們每天實際面對的事,不是純理論。恆遠數位行銷有 30+ 企業客製案落地,涵蓋系統開發、AI 導入顧問和資安治理框架建立。如果你想聊聊自己公司的 AI Coding 治理現況,聽你聊聊現況。
Q中小企業一定需要正式的 AI Coding 合規稽核嗎?
需要,但規模可以彈性調整。如果你的公司有工程師在用 Cursor、Copilot 或 Claude Code,你就已經有 AI Coding 合規風險了。正式稽核不等於大企業才做的繁重流程,從一份政策文件和一個 pre-commit hook 開始,成本很低,但能把最常見的風險攔掉。
QCursor 和 GitHub Copilot 哪個合規風險比較高?
這個問題的答案取決於你怎麼用,而不是哪個工具本身。Cursor 因為有更強的 agentic 模式和 MCP 整合,在授權邊界上的風險面更廣;Copilot 的訓練資料回吐問題(特別是開源授權汙染)則比較明確。兩者都需要政策管控,不能只靠工具供應商的預設設定。
QAI 生成的程式碼,著作權到底屬於誰?
目前台灣法律沒有明確規定。各大工具供應商的服務條款立場是「生成物屬於使用者」,但同時免除自身對著作權侵害的責任。實務上,建議在開發合約裡明確聲明 AI 工具的使用,並加入開源授權掃描的義務條款,以轉移法律風險。
Qsecret scan 工具需要付費嗎?
不需要。gitleaks 和 detect-secrets 都是完全免費的開源工具,可以整合進 pre-commit hook 和 GitHub Actions CI/CD pipeline。GitGuardian 提供 5 名開發者以下的免費方案,如果需要集中管理面板可以考慮。
QMCP 最小授權原則具體怎麼設定?
原則是:每個 MCP server 只開完成指定任務的最小權限集。如果 AI agent 的任務是讀取資料庫分析資料,就只開 SELECT 權限,不開 INSERT/UPDATE/DELETE。如果任務是讀取文件,就限制 file path 範圍,不讓 agent 存取整個 filesystem。這個設定需要工程師在 MCP server 設定檔裡明確限制,不能依賴 AI 模型自己判斷。
Q如果已經發現有 secret 外洩到 Git repo 歷史,還來得及處理嗎?
來得及,但要立刻執行兩件事:第一,先 revoke 那個 secret,讓它失效。第二,用 git filter-repo 或 BFG Repo Cleaner 把 secret 從 Git 歷史記錄裡清除(注意這會改寫 commit hash)。很多人只做第二步,忘了第一步,但已經外洩的 secret 在網路上可能已經有人複製了,讓原始 secret 失效才是最關鍵的。
AUTHOR
恆遠數位編輯團隊
想了解更多?看看我們的相關服務
相關文章

我們公司怎麼跑出 20+ AI 流程?系列第 5 篇:內部週報 dashboard 自動生成 SOP,4 個資料來源、3 條品質規則、2 個 human-in-the-loop 節點

中小企業客戶入口網站採購完整指南:Zendesk / Salesforce Experience Cloud / 自架 3 條路徑、6 個決策、5 條合約紅線、90 天上線 SOP

SaaS API 用量爆表 30 天止血完整 SOP:5 個爆表訊號、4 種計費模式踩雷、跟廠商談 credit 的 email 骨架

ESP32 機械手臂視覺辨識夾取完整指南:運算放哪、手臂怎麼選、模型用哪個

手機 NFC 加 ESP32 能做打卡系統嗎?初學者從零動手做完整指南

留言(0)
尚無留言,成為第一個留言的人吧!