Thực thi mã AI bằng Cloudflare Sandbox có thể cho phép trợ lý chuyển đổi tệp hoặc tính toán mà không đặt mã được sinh ra trực tiếp vào ứng dụng chính. Quyết định then chốt là môi trường thực thi có thể tiếp cận những gì. Mã có thể sử dụng các tệp, thông tin xác thực, đường mạng và công cụ mà bạn cung cấp.

Chạy mã được sinh ra trong một ranh giới thực thi phù hợp với khối lượng công việc, với đầu vào, truy cập mạng và khả năng ứng dụng được giới hạn có chủ đích. Giữ các thao tác có hệ quả ở bên ngoài môi trường đó và kiểm tra sản phẩm trả về trước khi sử dụng. Thử khả năng ngăn chặn, xử lý tài nguyên và dọn dẹp bằng cả mã có chủ đích gây hại lẫn mã thông thường trước khi mở rộng quyền truy cập.

Hãy hình dung một nhà phân tích yêu cầu trợ lý kết hợp các bản xuất CSV được phép và tạo biểu đồ. Trợ lý cần các tệp đầu vào đó và một nơi ghi đầu ra. Nó không cần toàn bộ tài khoản lưu trữ của công ty hoặc thông tin xác thực có thể sửa đổi hệ thống nguồn.

Bài viết mô tả một kiến trúc đề xuất cho nhiệm vụ đó. Bài viết không khẳng định rằng cô lập loại bỏ mọi rủi ro, hay cùng một môi trường sandbox phù hợp với mọi ngôn ngữ và phần phụ thuộc.

Xác định ranh giới thực thi mã AI bằng Cloudflare Sandbox

Tổng quan Sandboxes của Cloudflare phân biệt môi trường dựa trên container với Dynamic Workers. Môi trường phù hợp phụ thuộc vào yêu cầu thực thi. Hãy lựa chọn theo tài liệu hiện hành thay vì cho rằng một ví dụ Sandbox SDK cũ mô tả giao diện hiện nay.

Với tác vụ chuyển đổi của nhà phân tích, hãy liệt kê ngôn ngữ, thư viện, định dạng đầu vào, loại đầu ra và đích mạng cần thiết. Nếu tác vụ chỉ cần tính toán cục bộ trên các tệp được cung cấp, mọi truy cập bên ngoài bổ sung cần có lý do riêng.

Giữ trách nhiệm quyết định công việc nào thuộc về người dùng đã xác thực nào ở Worker điều phối. Môi trường chạy mã chỉ nên nhận tài liệu được phép của tác vụ, thay vì một bộ thông tin xác thực cấp tài khoản mà từ đó nó có thể tìm thêm dữ liệu.

Khả năngVí dụ này có cần không?Ranh giới cần xác định
Đọc các bản xuất đầu vào đã chọnCóChỉ đầu vào được cho phép của công việc
Ghi tệp kết quảCóMột vị trí đầu ra riêng
Truy cập Internet công cộngKhông mặc nhiên cầnChỉ các đích có tên khi có lý do
Đọc thông tin xác thực môi trường thậtKhôngGiữ quyền thao tác dịch vụ ngoài công việc
Sửa bản ghi nghiệp vụ nguồnKhôngMột thao tác ứng dụng riêng được xem xét

Chọn môi trường theo nhu cầu thực thi

Hướng dẫn chọn môi trường của Cloudflare là điểm bắt đầu để so sánh các cách tiếp cận. Xác nhận yêu cầu thực tế về ngôn ngữ được hỗ trợ, phần phụ thuộc và vòng đời cho tác vụ của bạn.

Một môi trường lệnh đầy đủ có thể hữu ích khi chuỗi công cụ thực sự cần nó. Môi trường đó cũng đưa thêm tệp, tiến trình và hành vi của phần phụ thuộc vào phạm vi phải quản lý. Một bề mặt thực thi hẹp hơn có thể dễ xem xét hơn khi tác vụ chỉ cần một phép chuyển đổi có giới hạn.

Tránh chọn môi trường mạnh nhất chỉ vì nó giúp bản trình diễn đầu tiên dễ làm hơn. Câu hỏi khi mua dịch vụ là liệu môi trường có thực hiện được tác vụ được phép với các biện pháp kiểm soát mà đội ngũ có thể giải thích và duy trì hay không.

Cố định ảnh môi trường thực thi hoặc cấu hình phần phụ thuộc ở nơi nền tảng được chọn hỗ trợ cách làm đó. Lưu cấu hình cùng kết quả để có thể liên hệ lỗi về sau với môi trường thực sự đã chạy mã.

Trình tự đề xuất: Chuẩn bị đầu vào công việc được phép. Chọn môi trường thực thi có giới hạn. Chạy với chính sách tệp và mạng rõ ràng. Kiểm tra sản phẩm và dọn dẹp.
Thiết kế đề xuất. Chỉ những khả năng được cấp có chủ đích mới đi vào ranh giới. Xem sơ đồ kích thước đầy đủ

Giữ bí mật và quyền nghiệp vụ trong ứng dụng

Hướng dẫn về thông tin xác thực và mạng của Cloudflare giải thích bề mặt kiểm soát liên quan. Xác định cách môi trường được chọn tiếp cận các dịch vụ đã chấp thuận, rồi trực tiếp kiểm chứng hành vi đó trong cấu hình thử nghiệm.

Với công việc của nhà phân tích, ứng dụng điều phối có thể lấy các bản xuất được phép và chuyển chúng thành đầu vào. Chương trình được sinh ra sau đó thao tác trên các bản sao này. Nếu cần nguồn dữ liệu khác, hãy trả yêu cầu về ứng dụng, nơi vẫn áp dụng kiểm tra danh tính và quyền hạn.

Đừng giao thông tin xác thực lưu trữ với quyền rộng rồi dựa vào lời nhắc để quy định thư mục nào được phép. Quyền thực tế nằm ở thông tin xác thực và ranh giới thực thi, không ở sự nhã nhặn của chỉ dẫn dành cho mô hình.

Áp dụng nguyên tắc tương tự cho đầu ra. Công việc có thể đề xuất một tệp hoặc kết quả. Một thành phần ứng dụng riêng quyết định có công bố, gửi email hay nhập nó hay không. Nhờ đó, mã được sinh ra không biến yêu cầu chuyển đổi thành hành động nghiệp vụ chưa được xem xét.

Xem tệp là đầu vào và đầu ra chưa đáng tin cậy

Kiểm tra loại và kích thước đầu vào trước khi thực thi theo chính sách đã thống nhất. Giữ bản kê đầu vào để đội ngũ xác định chính xác những tệp nào đã đi vào công việc. Tránh trộn đầu vào của các người dùng khác nhau trong một không gian làm việc chung nếu chưa có thiết kế cô lập đã được kiểm chứng.

Tệp đầu ra cũng cần được kiểm tra. Tệp có phần mở rộng như dự kiến có thể chứa định dạng bất ngờ, nội dung ẩn hoặc phép tính gây hiểu nhầm. Xác nhận loại sản phẩm, vị trí được phép và các kiểm tra ngữ nghĩa trước khi trình bày nó như một kết quả hoàn tất.

Với biểu đồ tài chính, so sánh tổng với dữ liệu nguồn và giải thích mọi phần bị loại trừ. Một ảnh hiển thị đẹp không chứng minh phép tính bên dưới đúng. Với tệp nén hay tài liệu xuất ra, kiểm tra những tệp và dữ liệu mà nó thực sự chứa.

Giai đoạn sản phẩmKiểm tra gợi ýVấn đề được ngăn ngừa
Tiếp nhận đầu vàoNguồn được phép và định dạng dự kiếnVô tình xử lý dữ liệu chéo người dùng
Chuẩn bị không gian làm việcĐường dẫn riêng cho tác vụ và nội dung có giới hạnDùng lại tài liệu của công việc khác
Thu thập đầu raLoại, đường dẫn và chính sách kích thước dự kiếnTệp ngoài dự kiến được trình bày như sản phẩm bàn giao
Kiểm tra ngữ nghĩaTổng, tham chiếu hoặc khẳng định riêng của tác vụKết quả có vẻ hợp lý nhưng sai
Công bốQuyền rõ ràng từ ứng dụngMã tự phân phối dữ liệu

Thử mã có chủ đích gây hại trong môi trường thử nghiệm được phép

Bộ kiểm thử nghiệm thu nên có các lần thử đọc ngoài không gian làm việc được cung cấp, liên hệ đích chưa chấp thuận và tiêu thụ quá nhiều tài nguyên. Dùng dữ liệu giả lập và môi trường thử nghiệm riêng để chính phép thử không thể làm lộ tài liệu thật.

Kiểm tra các biện pháp mà bạn thực sự đã cấu hình. Một sơ đồ không có kết nối Internet không phải bằng chứng truy cập ra ngoài bị chặn. Ghi lại kết quả của lần thử truy cập và lý do môi trường trả về.

Hướng dẫn bảo mật sandbox của Cloudflare là tài liệu gốc cho các ranh giới của môi trường. Các biện pháp của ứng dụng vẫn cần kiểm thử riêng, bao gồm xác thực, định tuyến công việc và công bố đầu ra.

Cũng thử các lỗi thông thường: lỗi nhập phần phụ thuộc, CSV không hợp lệ, tiến trình không bao giờ kết thúc và đầu ra vượt chính sách ứng dụng. Người vận hành cần một loại lỗi rõ ràng và cách an toàn để kết thúc hoặc kiểm tra công việc.

Quyết định đề xuất: Kết quả có an toàn và hữu ích cho tác vụ này không? Sản phẩm đã kiểm tra hoặc thất bại hay ngoài dự kiến. Trả kết quả qua ranh giới ứng dụng.
Thiết kế đề xuất. Chỉ những khả năng được cấp có chủ đích mới đi vào ranh giới. Xem sơ đồ kích thước đầy đủ

Làm cho vòng đời và việc dọn dẹp có thể quan sát được

Xác định lúc công việc bắt đầu, sự kiện nào kết thúc nó và những gì còn lại sau đó. Phân biệt môi trường thực thi với sản phẩm kết quả và bằng chứng vận hành được giữ lại. Kết thúc một tiến trình không nhất thiết xóa các tệp đã sao chép sang dịch vụ lưu trữ khác.

Nếu khôi phục hoặc dùng lại không gian làm việc, hãy xác định dữ liệu tác vụ nào có thể xuất hiện trở lại. Không gian được lưu bền tiện lợi có thể trở thành vấn đề dữ liệu chéo tác vụ nếu các giả định về định tuyến hoặc dọn dẹp sai.

Lưu hồ sơ về chủ sở hữu công việc, bản kê nguồn, cấu hình thực thi, lý do hoàn tất và đầu ra đã thu thập. Chỉ giữ nội dung mà tác vụ và chính sách xem xét đã thống nhất yêu cầu.

Diễn tập hủy và dọn dẹp sau một công việc thất bại. Xác nhận tác vụ tiếp theo không thể kiểm tra đầu vào của tác vụ trước, đồng thời ứng dụng vẫn giải thích được lỗi mà không giữ một bản sao không cần thiết của mọi tệp.

Ước tính dịch vụ thực thi có kiểm soát

Chi phí phát triển bao gồm điều phối, danh tính, chuẩn bị đầu vào, kiểm soát thực thi, kiểm tra sản phẩm và vận hành. Nó lớn hơn phần mã cần để chạy một lệnh một lần.

Yêu cầu đề xuất bằng GBP, xác định các loại tác vụ và ngôn ngữ được hỗ trợ. Dịch vụ chuyển đổi CSV có giới hạn là phạm vi khởi đầu rõ ràng hơn một trợ lý tổng quát được phép chạy chương trình tùy ý trên các hệ thống công ty.

Chi phí định kỳ phụ thuộc vào môi trường được chọn, thời gian chạy, lưu trữ, sử dụng mô hình và xử lý lỗi. Kiểm tra giá nền tảng hiện hành cho môi trường đó. Đừng áp ước tính container vào thiết kế Dynamic Workers hoặc mặc định rằng công việc nhàn rỗi, thất bại và được khôi phục đều miễn phí.

Thử nghiệm thí điểm nên tạo ra sản phẩm hữu ích và chứng minh ranh giới bao quanh chúng. Trình diễn một công việc hợp lệ, một khả năng bị chặn, hủy, dọn dẹp và một đầu ra bị từ chối. Những kết quả này giúp chủ sở hữu quyết định có thể bổ sung loại tác vụ khác một cách an toàn hay không.

Chúng tôi có thể xác định phạm vi dịch vụ qua thử nghiệm thí điểm tích hợp AI . Yêu cầu đề xuất thực thi sandbox kèm ví dụ đầu vào, công cụ cần thiết và các hành động mà trợ lý không được thực hiện nếu thiếu quyền riêng.

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

Sandbox có tự động làm mã do AI sinh ra an toàn không? Không. Cô lập là một ranh giới hữu ích, nhưng mã có thể sử dụng những khả năng và dữ liệu được cung cấp cho môi trường. Xác định và kiểm tra tệp, thông tin xác thực, truy cập mạng, chính sách tài nguyên và xử lý đầu ra.

Có nên cấp khóa API môi trường thật cho mã được sinh ra không? Tránh cấp quyền rộng đối với dịch vụ. Giữ thông tin xác thực ở lớp ứng dụng, nơi có thể kiểm tra truy cập, và chỉ cung cấp các thao tác có giới hạn mà tác vụ cần. Kiểm chứng các biện pháp thông tin xác thực và mạng mà nền tảng được chọn hỗ trợ.

Mọi tác vụ đều cần container Linux sao? Không. Chọn môi trường theo ngôn ngữ, phần phụ thuộc và yêu cầu thực thi. Cloudflare mô tả các cách tiếp cận khác nhau, và một bề mặt hẹp hơn có thể đủ cho tác vụ có giới hạn.

Trợ lý có thể tự động công bố tệp đã tạo không? Chỉ theo chính sách ứng dụng được thống nhất riêng. Tạo sản phẩm và phân phối nó là hai hành động khác nhau. Kiểm tra đầu ra và quyền công bố trước khi nhập, gửi email hoặc cho người khác truy cập.

Kiểm thử ngăn chặn nên bao gồm gì? Dùng môi trường riêng và dữ liệu giả lập để thử truy cập tệp trái phép, đích mạng chưa chấp thuận, dùng tài nguyên quá mức, hủy và dọn dẹp không gian làm việc. Giữ bằng chứng về các biện pháp đã cấu hình thay vì dựa vào bản vẽ kiến trúc.

Có thể dùng lại không gian làm việc giữa các tác vụ không? Chỉ khi có thiết kế cô lập và lưu giữ có chủ đích. Dùng lại có thể giữ ngữ cảnh hữu ích, nhưng cũng giữ dữ liệu của tác vụ khác. Kiểm tra định tuyến, nội dung được khôi phục và dọn dẹp trước khi dựa vào cách này.

Điều gì quyết định chi phí triển khai? Ngôn ngữ hỗ trợ, nhu cầu phần phụ thuộc, chuẩn bị đầu vào, kiểm soát khả năng, kiểm tra sản phẩm và yêu cầu hỗ trợ quyết định khối lượng công việc. Bắt đầu bằng tác vụ có giới hạn và yêu cầu đề xuất bằng GBP có kiểm thử lỗi và bàn giao vận hành.