Dùng Codex để cho nhóm sửa mã trong phạm vi an toàn và kiểm tra quyền trước khi chạy

Dùng Codex để cho nhóm sửa mã trong phạm vi an toàn và kiểm tra quyền trước khi chạy

🛡️ Dùng Codex để cho nhóm sửa mã trong phạm vi an toàn và kiểm tra quyền trước khi chạy

Trong khoảng 30 phút, trưởng nhóm có thể lập một cấu hình thử cho Codex, kiểm tra nơi được sửa, lúc nào cần phê duyệt và lệnh có được ra mạng hay không. Bạn cần một kho mã thử, một người phụ trách chính sách kỹ thuật và Codex CLI trên máy của thành viên đại diện. Kết quả là bảng kiểm chứng thao tác được phép và bị chặn, không phải lời hứa rằng chỉ cần bật một công tắc là mọi rủi ro biến mất.

Bài này nói về Codex chạy cục bộ qua CLI, ứng dụng máy tính hoặc tiện ích IDE. Nếu bạn mới dùng CLI để sửa một chi tiết đầu tiên, hãy đọc hướng dẫn sửa và tự kiểm chứng trong repo lạ trước. Phần dưới tập trung vào ranh giới vận hành cho cả nhóm.

🧰 Chuẩn bị

Tạo kho mã thử không chứa khóa thật hoặc dữ liệu khách hàng. Chọn một tệp được phép sửa, một tệp ngoài repo, một miền cho phép và một miền phải chặn.

Đọc Agent approvals & security của OpenAI cùng trang Auto-review. Quy tắc làm việc của nhóm, chẳng hạn “chạy kiểm tra trước khi tạo pull request”, có thể ghi trong AGENTS.md cho Codex. Tuy nhiên, câu chữ trong tài liệu dự án không tự tạo giới hạn hệ điều hành. Quyền tệp, mạng và phê duyệt cần được cấu hình và thử riêng.

Thống nhất ai được quyền đổi chính sách và ngày xem lại sau nâng cấp.

🪜 Làm từng bước

Bước 1: Chọn chế độ theo công việc thật

Codex dùng hai lớp khác nhau. Sandbox quyết định lệnh có thể đọc, sửa tệp và kết nối mạng ở đâu. Chính sách phê duyệt quyết định lúc nào Codex phải xin phép trước khi vượt ranh giới. Theo tài liệu OpenAI, chế độ workspace-write cho Codex đọc và sửa trong workspace, còn quyền mạng của lệnh mặc định tắt. Việc sửa ngoài workspace hoặc lệnh cần mạng có thể tạo yêu cầu phê duyệt khi chính sách là on-request.

Với lần đầu khảo sát kho mã, bắt đầu bằng chế độ chỉ đọc:

codex --sandbox read-only --ask-for-approval on-request

Khi đã giao một thay đổi cụ thể trong repo thử, dùng:

codex --sandbox workspace-write --ask-for-approval on-request

Trong CLI, /permissions giúp xem hoặc đổi chế độ; /status cho biết workspace được nhận diện. Tránh mở danger-full-access chỉ để khỏi thấy hộp hỏi quyền: chế độ đó bỏ sandbox cục bộ.

Nếu người đọc muốn hiểu cách lập trình với AI từ đầu, xem hướng dẫn Vibe Coding cho người mới. Trưởng nhóm vẫn phải duyệt phạm vi công việc và mã được tạo ra.

Bước 2: Ghi rõ đường dẫn nào cần bảo vệ

Trong chính sách workspace-write mặc định, OpenAI nêu ba đường dẫn được bảo vệ chỉ đọc khi nằm trong vùng được ghi: .git, .agents và .codex theo điều kiện tài liệu mô tả. Nếu .git là tệp trỏ đến thư mục Git thật, thư mục được trỏ đến cũng được bảo vệ. Đây là bảo vệ cụ thể cho các đường dẫn đó, không có nghĩa mọi tệp nhạy cảm khác trong repo đều an toàn sẵn.

Liệt kê riêng tệp môi trường, chứng chỉ và bản xuất dữ liệu. Với permission profiles bản beta, tài liệu Permissions cho phép quy tắc read, write, deny theo đường dẫn, kể cả từ chối đọc .env. Profile không phối hợp với cấu hình sandbox cũ trong cùng phiên. Chọn một hệ và thử trên máy đại diện.

Một câu hỏi kiểm thử ngắn để giao cho Codex là:

Trong repo thử này, hãy chỉ sửa [đường dẫn tệp được phép] để đổi [mô tả thay đổi].
Trước khi làm, nêu các tệp dự kiến chạm tới. Không đọc bí mật, không sửa tệp ngoài repo.
Sau khi sửa, chạy [lệnh kiểm tra an toàn] và liệt kê tệp đã thay đổi.

Đối chiếu tệp thật sau lần chạy. Thử một hành động ngoài quyền và xác nhận bị chặn hoặc cần phê duyệt. AGENTS.md không phải bằng chứng rằng đường dẫn đã bị khóa.

Bước 3: Kiểm soát mạng như một quyền riêng

Trong workspace-write, mạng của lệnh chạy cục bộ mặc định tắt. Nếu quy trình cần gọi một dịch vụ, xác định đúng tên miền cần thiết, mục đích và dữ liệu được phép gửi. OpenAI phân biệt hai việc: bật mạng cho lệnh và bật proxy để giới hạn đích đến. Chỉ viết danh sách tên miền không tự bật proxy; chỉ bật mạng mà không bật proxy có thể cho lệnh đi thẳng ra ngoài.

Một ví dụ cấu hình cục bộ theo tài liệu, dùng trong môi trường thử, là:

sandbox_mode = "workspace-write"
approval_policy = "on-request"

[sandbox_workspace_write]
network_access = true

[features.network_proxy]
enabled = true
domains = { "api.openai.com" = "allow", "example.com" = "deny" }

Thay bằng miền công ty duyệt. Thử kết nối tới miền cho phép và miền cấm. Proxy của lệnh không lọc web search, browser, app, MCP hoặc Codex Cloud; các bề mặt này có kiểm soát riêng.

Nếu nhóm dùng Codex Cloud hiện hành, tham khảo quy trình từ lỗi đến pull request trên cloud và tài liệu Connect to services hiện tại. Hướng dẫn mạng của Codex Cloud (Legacy) là dành cho hệ cũ; không sao chép các bước đó sang môi trường mới. Quyền cloud cũng không thay chính sách sandbox trên máy thành viên.

Bước 4: Hiểu Auto-review trước khi bật

Với approval_policy = "on-request", yêu cầu vượt ranh giới thường được đưa cho người dùng. Nếu bật approvals_reviewer = "auto_review", một tác nhân kiểm tra riêng sẽ xét những yêu cầu vốn cần phê duyệt trước khi lệnh chạy. Nó không cấp thêm quyền, không tự bật mạng và không làm mất bảo vệ đường dẫn. Lệnh vốn được phép trong sandbox có thể chạy mà không qua bước kiểm tra này.

Một phiên thử có thể dùng cấu hình:

approval_policy = "on-request"
approvals_reviewer = "auto_review"
sandbox_mode = "workspace-write"

Xuất dữ liệu, thay đổi môi trường sản xuất và thao tác khó hoàn tác vẫn cần người có trách nhiệm duyệt. Khi Auto-review từ chối, đọc lý do; đừng đổi câu lệnh để lách ranh giới. Hết thời gian chưa chứng minh hành động nguy hiểm, nhưng hành động cũng chưa chạy.

Bước 5: Thử cả đường được phép lẫn đường bị chặn

Đừng kết luận cấu hình đúng chỉ vì Codex sửa được một tệp. Trên repo thử, ghi bốn phép thử: sửa tệp trong phạm vi, thử sửa ngoài phạm vi, gọi miền cho phép, gọi miền cấm. Với mỗi phép thử, ghi chế độ, câu lệnh hoặc yêu cầu, kết quả thật và người xem lại. Nếu bật Auto-review, ghi thêm quyết định và lý do của reviewer. Không cần sao chép bí mật vào nhật ký thử nghiệm.

Thử lại bằng tài khoản thành viên và sau mỗi thay đổi cấu hình. Với cloud, kiểm tra riêng quyền kho mã, môi trường và mạng. Ghi quyền đang bật, người được đổi và kết quả thử vào biên bản bàn giao.

✅ Kết quả mẫu

Một nhóm phát triển thử trên kho mã giả có thể ghi: “Codex được sửa src/ trong workspace thử; yêu cầu sửa tệp ngoài workspace tạo bước phê duyệt; .git vẫn chỉ đọc trong sandbox mặc định. Lệnh gọi API được duyệt chạy qua proxy; tên miền cấm bị chặn. Auto-review chỉ xét hành động vượt ranh giới. Trưởng nhóm kiểm tra diff và kết quả chạy thử trước khi merge.” Đây là mẫu biên bản, không phải kết quả được bảo đảm cho mọi máy, phiên bản hoặc gói.

Nếu một phép thử cho kết quả khác, dừng mở rộng. Xem lại cấu hình hiệu lực và đường chạy thực tế, đặc biệt khi vừa dùng permission profiles beta vừa để sót thiết lập sandbox cũ. Xác nhận lại bằng cùng người dùng, máy và môi trường sẽ sử dụng thật.

💡 Mẹo để vận hành bền hơn

Cho quyền theo nhiệm vụ. Người chỉ đọc tài liệu không cần quyền sửa. Người sửa một repo chưa cần quyền tới hệ thống sản xuất. Mở quyền từng phần sau khi đã thử điều kiện chặn.

Tách quy tắc và cơ chế. AGENTS.md hữu ích để truyền cách làm, lệnh kiểm tra và tiêu chuẩn review. Sandbox, permission profiles, mạng và phê duyệt mới là cơ chế thực thi quyền của Codex ở bề mặt tương ứng.

Xem lại sau mỗi lần nâng cấp lớn. Cách hiển thị quyền và hỗ trợ profile có thể đổi. Ghi phiên bản và chạy lại bảng thử thay vì giữ một ảnh chụp cài đặt cũ như bằng chứng lâu dài.

⚠️ Giới hạn cần biết

Sandbox cục bộ không cấp hoặc thu hồi quyền trong GitHub, dịch vụ kết nối hay Platform API. Quyền của hệ nguồn vẫn áp dụng. Tài liệu trên web hoặc trong repo có thể chứa chỉ dẫn lừa AI; chúng không được phép thay đổi phạm vi nhiệm vụ của người dùng. Đừng đưa khóa truy cập thật vào prompt để “kiểm tra” chính sách.

Auto-review có thể đánh giá sai và dùng thêm tài nguyên. Nó chỉ xem hành động tạo yêu cầu phê duyệt, không xem lại mọi lệnh bình thường. Chế độ approval_policy = "never" không tạo yêu cầu tương tác để Auto-review xét. Những thay đổi quan trọng hoặc không thể hoàn tác vẫn cần người chịu trách nhiệm xem và quyết định theo quy định của công ty.

❓ Câu hỏi thường gặp

Workspace-write có cho Codex sửa mọi thứ trong repo không? Nó cho phép sửa trong vùng được ghi, nhưng một số đường dẫn như .git được bảo vệ chỉ đọc theo chính sách mặc định. Tệp nhạy cảm khác cần kiểm soát riêng.

Viết trong AGENTS.md rằng không được ra mạng đã đủ chưa? Chưa. Đó là hướng dẫn cho tác nhân. Hãy dùng chính sách mạng thực tế và thử một kết nối được phép cùng một kết nối bị chặn.

Bật danh sách miền trong profile có tự chặn mạng không? Không. Quy tắc miền cần proxy đang hoạt động; quyền mạng và proxy là hai thiết lập riêng. Kiểm tra tài liệu theo phiên bản bạn dùng.

Auto-review có tự duyệt mọi hành động của Codex không? Không. Nó xét yêu cầu vượt ranh giới vốn cần phê duyệt khi chính sách tương tác đang bật. Hành động trong phạm vi có thể không tạo yêu cầu review.

Nên dùng hướng dẫn Codex Cloud (Legacy) cho cloud hiện nay không? Không nên áp dụng nguyên xi. Dùng tài liệu Connect to services của Codex Cloud hiện tại và kiểm tra môi trường, kết nối, quyền kho mã riêng.

#Codex #BaoMatAI #QuanTriCodex #VibeCoding

Doanh nghiệp muốn giới thiệu sản phẩm AI tới bạn đọc Vibe AI Coder? Xem gói tài trợ

Bài viết liên quan