deny, gắn vào một key — và từ đó về sau gateway từ chối tool đó trên
mọi cuộc gọi, không cần đổi code agent.
Trang này đề cập tình huống dùng deny-list và một quyết định mà nó ép buộc:
bạn block trên bề mặt nào — các tool bạn quảng bá (inbound) hay các
cuộc gọi tool mà mô hình phát ra (response). Để biết toàn bộ từ vựng so
khớp và ngữ nghĩa verdict, xem
Schema quy tắc và
Verdict.
1. Block một cuộc gọi tool mà một AI agent thực hiện
Một quy tắc deny-list là thứ đơn giản nhất mà một chính sách firewall có thể biểu đạt: khớp một tool theo tên, trả vềdeny. Dùng nó khi một tool không
bao giờ nên kích hoạt cho một key nhất định — shell.exec, *.delete, một
community plugin bạn không tin — bất kể đối số.
Trong console workspace của bạn, mở một chính sách (hoặc
tạo một cái) và thêm một quy tắc:
tool_name_glob là một glob nhỏ, phân biệt hoa-thường — shell.* bắt cả
một họ, *.delete bắt một động từ trên nhiều server, * bắt mọi thứ. Không
cần mệnh đề argument: một glob trần + deny block tool một cách vô điều kiện.
Thêm một mệnh đề argument chỉ khi
bạn muốn allow tool nói chung nhưng deny một hình dạng cuộc gọi.
2. Inbound vs response: chọn bề mặt
Một deny có thể đáp xuống hai điểm khác nhau trong vòng đời request, và sự khác biệt quan trọng. Ghim quy tắc với trườngstage, hoặc để trống để bao
cả hai.
inbound
Các tool mà agent của bạn quảng bá tới mô hình trên request (các
định nghĩa tool). Một deny ở đây bóc tool đi trước khi mô hình kịp chọn
nó — mô hình không bao giờ thấy nó như một lựa chọn.
response
Các
tool_calls mà mô hình phát ra trong câu trả lời của nó. Một deny
ở đây bắt cuộc gọi mà mô hình đã quyết định thực hiện, trước khi nó đến
được tool.inbound khi bạn muốn một tool vô hình — mô hình không thể gọi
thứ chưa bao giờ được chào, nên bạn tránh các lượt lãng phí khi nó chọn một
tool chỉ để bị từ chối. Dùng response (hoặc để stage trống) khi tool
xuất hiện hợp lệ trong một số request và bạn muốn bắt cuộc gọi thực sự được
phát ra, hoặc khi bạn chỉ kiểm soát vòng lặp agent chứ không kiểm soát tập
tool được quảng bá.
Một quy tắc không có
stage áp dụng cho mọi bề mặt — cùng một deny bao
phủ một tool dù nó được quảng bá, phát ra, hay
dispatch qua MCP. Đó là mặc định
chắc-ăn-mọi-mặt; chỉ ghim một bề mặt khi một deny nên được thu hẹp vào một
cái. Xem Stage.3. Gắn chính sách và quan sát nó kích hoạt
Một chính sách không làm gì cho đến khi một key phân giải về nó. Gắn trong console bằng cách đặtfirewall_policy_id trên
key, hoặc đặt chính sách làm mặc định
của workspace. Phân giải là: chính sách được gắn của key (khi nó tồn tại và
được bật), nếu không thì mặc định của workspace. (Một chính sách được gắn
nhưng bị tắt rơi về mặc định — xem
Quản lý chính sách.)
Một khi đã gắn, một cuộc gọi bị deny trên bề mặt inbound trả về HTTP
400 với mã lỗi firewall_blocked và một lý do nêu tên tool — vd:
tool "shell.exec" blocked by firewall. Lỗi được đánh dấu skip-retry
(chạy lại cuộc gọi y hệt thì cũng chỉ bị block lại) và tốn không token mô hình
nào, vì một block inbound kích hoạt trước cuộc gọi thượng nguồn. Một deny
dispatch qua MCP gateway thay vào đó hiện ra như
một lỗi tool, nên mô hình thấy sự từ chối và có thể phản ứng.
4. Deny là một trong vài verdict
Deny là tool cùn nhất trên deny-list. Khi một block cứng là quá mức, cùng một glob có thể mang một verdict mềm hơn:| Verdict | Khi nào dùng nó thay cho deny |
|---|---|
audit | Bạn muốn thấy tool kích hoạt nhưng chưa block nó. |
sanitize | Tool ổn nhưng đối số của nó có thể mang secret/PII — che đối số, không bao giờ che kết quả tool. |
pending_approval | Một con người nên phê duyệt từng cuộc gọi ngoài luồng. |
cap_cost | Allow cho đến khi chi tiêu của một lần chạy agent vượt một cap cents. |
deny. Với một tư thế allow-list
(deny mọi thứ, cho phép một tập có tên) hãy lật default_verdict của chính
sách thành deny và thêm các quy tắc allow hẹp — xem
Allow-list tool.
5. Triển khai nó an toàn
Chạy thử trước khi phụ thuộc vào nó
Chạy thử trước khi phụ thuộc vào nó
Tab Test của console chạy thử một chính sách trên một cuộc gọi tool
mẫu và trả về verdict, quy tắc đã khớp, và lý do — không gì được dispatch,
không gì được lưu. Xác nhận glob của bạn khớp đúng tool bạn định (và chỉ
tool đó) trước khi gắn một key. Xem
Test quy tắc.
Shadow mode để đo lường khi live
Shadow mode để đo lường khi live
Bật shadow mode trên chính sách và
mọi verdict thực thi — kể cả deny của bạn — bị hạ cấp thành
audit, lý do
được thêm tiền tố [shadow] would …. Bạn đo chính xác cái mà deny sẽ
block trên traffic thật, rồi tắt shadow để thực thi.Tìm tên tool từ traffic thật
Tìm tên tool từ traffic thật
Không chắc tên tool chính xác để glob? Chế độ xem Discovered Tools
liệt kê mọi tool mà workspace đã thấy, gắn cờ covered hoặc gap. Soạn deny
của bạn thẳng từ các tên thực sự đã xuất hiện. Xem
Analytics.
Xác nhận block trong events log
Xác nhận block trong events log
Mỗi đánh giá ghi một event firewall với verdict, bề mặt, tool, và quy tắc
đã khớp. Sau khi bạn thực thi, lọc events log
theo verdict
deny để thấy quy tắc kích hoạt trên các cuộc gọi bạn mong
đợi.6. Ai làm được gì
Toàn bộ cấu hình deny-list chạy trong console dưới session của bạn (/api/workspace/firewall/*):
| Hành động | Vai trò |
|---|---|
| Đọc chính sách, preset, discovered tools, Simulate | Member |
| Chạy thử một chính sách (Test) | Developer+ |
| Tạo / chỉnh sửa / xóa quy tắc và chính sách | Developer+ |
| Đọc events log và tổng hợp lần chạy | Developer+ |
Liên quan
Cú pháp glob
Chính xác cách
shell.*, *.exec, và *.shell.* khớp.Allow-list tool
Tư thế ngược lại: default-deny, cho phép một tập có tên.
Kiểm tra đối số
Deny chỉ một hình dạng cuộc gọi, không phải cả tool.
Cuộc gọi tool nguy hiểm
Mối đe dọa mà một deny-list giải quyết.
Verdict
Deny và các anh em mềm hơn của nó làm gì trên đường truyền.
Tham chiếu Firewall
Toàn bộ tham chiếu quy tắc + so khớp.
