回到頂部
自然語言規章轉成可執行政策,於 Agent 工具呼叫前檢查時間、順序、金額與敏感資料

AWS Dogwood 政策可用自然語言寫:Agent 權限真的更安全嗎

AgentCore Policy Authoring 可把規章轉成 Dogwood,限制工具參數、執行順序、時間與累計行為。拆解適用邊界、歧義與驗收方式。

內容查核: 來源查核:

AWS 在 8 月 20 日擴充 Amazon Bedrock AgentCore 的 Policy Authoring:企業可匯入自然語言規章,讓系統轉成 Dogwood 政策,在 Agent 呼叫退款、轉帳、傳送資料等工具之前即時准許或拒絕。

這不是「用提示告訴 Agent 不要亂做」。Dogwood 政策由 AgentCore Gateway 的監控層執行,模型提出工具呼叫後,規則在真正執行前檢查參數與歷史軌跡。即使模型被提示注入誘導,只要呼叫不符政策,執行層仍可擋下。

不過我的判斷是:自然語言產生政策降低了編寫門檻,也放大了規章歧義。 AWS 文件自己強調,Policy Authoring 是 translator,不是 summarizer,更不是替公司決定規則的人。原文寫得含糊,產出的正式規則只會更精確地執行那個含糊理解。

Dogwood 比單次權限多看了什麼?

傳統權限常只檢查「這個身分能不能呼叫退款工具」。Dogwood 的時間與軌跡政策還能問:這個帳戶是否在 15 分鐘內完成驗證、過去一小時是否已嘗試三次退款、12 小時內累計轉帳是否超過上限,以及工具是否按照必要順序執行。

AWS 的銀行範例把規則拆得很具體:退款只能在指定時段且金額不超過門檻;轉帳前必須對同一帳戶完成驗證;累計金額與呼叫次數可跨同一工作階段計算;自由文字欄位則可呼叫 Bedrock Guardrails 檢查敏感資訊。

若 Agent 會先上網找資料,再依搜尋結果採取動作,還需要限制資訊入口。AgentCore Web Search 的網域與日期過濾可縮小允許查詢的網站與期間,Dogwood 再決定取得資料後哪些工具呼叫能執行。兩層一起用,才能避免 Agent 從不合格來源得到指令後仍通過動作政策。

Dogwood 採 default-deny,forbid 會蓋過 permit。這有助於安全預設,但不能代替 Agent 身分、工具最小權限與後端交易控制。完整架構應把AgentCore 身分治理放在前面,再用 Dogwood 限制「已獲授權的身分,在這次任務中能怎麼做」。

自然語言最危險的是沒寫清楚的字

「每天最多退款三次」看似清楚,實際上還有很多問題:一天按 UTC、台灣時間還是客戶所在地?失敗或被拒的嘗試算不算?限制的是員工、客戶帳戶、Agent 工作階段還是整個組織?跨午夜如何計算?

AWS 範例也示範了這種風險。若規章只寫「過去 12 小時轉帳總額」,生成政策可能把所有 request 都計入,包括被拒或失敗的呼叫;這是較保守的解讀,但不一定符合原制度。把「成功交易」與「嘗試交易」寫清楚,才不會讓翻譯器自行選擇。

因此匯入前應先把規章去掉背景故事與理由,只保留可判定的規則,並明列主體、工具、欄位、單位、時區、時間窗口、例外與失敗狀態。不要把整份數十頁內規直接丟進去,期待系統替你整理政策。

它能防提示注入嗎?

它能降低提示注入造成的工具濫用,但不是完整防護。Dogwood 擋的是已描述的工具呼叫條件;若工具本身權限過大、參數設計不完整、敏感資料已出現在模型上下文,或攻擊發生在政策未涵蓋的工具上,規則仍可能放行危險結果。

例如政策限制「單次退款金額」,但工具允許修改收款帳戶,攻擊者可能不碰金額上限而改目的地。又或者規則只追蹤同一 session,攻擊者重新開工作階段就重置計數。這些邊界要靠威脅模型與測試找出,不能把生成成功的 Dogwood 程式碼視為安全完成。

上線前至少跑五類測試

第一類是應允許的正常流程,避免政策過嚴讓業務停擺。第二類是明確拒絕,包括超額、未驗證、順序錯誤與敏感內容。第三類測邊界值,例如剛好等於上限、時間窗口前後一秒與時區切換。

第四類測失敗事件:工具逾時、後端拒絕或重試,究竟算一次還是多次。第五類測跨 session、跨 Agent 與併發呼叫,確認累計控制不會被拆單繞過。每次政策或工具 schema 更新後,都應把這組案例重跑;可結合AgentCore Evals 資料管理保留回歸資料。

我不建議讓生成的政策直接從文件進正式環境。合理流程是法遵整理可判定規則、工程確認工具 schema、Policy Authoring 產生初稿、雙方審查,再由獨立測試驗證。自然語言可以加速抄寫,不能轉移決策責任。

常見問題

Dogwood 是什麼?

Dogwood 是開源的 Agent 治理政策語言,可表達工具呼叫的時間、順序、次數與累計條件。AgentCore Policy 可在 Gateway 執行工具前,以 Dogwood 監控器判定准許或拒絕。

Policy Authoring 會替公司設計規章嗎?

不會。AWS 將它定位為自然語言到正式政策的翻譯器,適合處理已經寫清楚的規則。政策目的、例外、法律解釋與風險承擔仍由組織決定。

Dogwood 可以完全防止 Agent 亂操作嗎?

不能。它只能執行已寫入的條件,仍需搭配最小權限、工具 schema、後端驗證、敏感資料控制、人工核准與稽核紀錄。

自然語言政策生成後需要人工審查嗎?

需要。法遵要確認規則語意,工程要確認欄位、單位、事件與工作階段邊界,測試人員則要用允許、拒絕與邊界案例驗證,不能只看語法正確。

參考來源

№ · further reading

延伸閱讀