Plugin sandbox
SandboxDemo - Hướng dẫn sử dụng (Tiếng Việt)
Plugin SandboxDemo cung cấp cơ chế “sandbox” để ngăn các thao tác ghi/xóa nguy hiểm khi chạy ở môi trường demo trong hệ sinh thái GP247.
1. Thông tin plugin
- Tên: SandboxDemo module
- Nhà phát triển: GP247
- Yêu cầu Core: >=1.2
- Đường dẫn:
app/GP247/Plugins/SandboxDemo
2. Cài đặt và kích hoạt
- Đảm bảo mã nguồn ở đúng đường dẫn:
app/GP247/Plugins/SandboxDemo
. - Truy cập trang quản trị Extensions, tìm plugin SandboxDemo và nhấn Install.
- Sau khi cài, nhấn Enable để kích hoạt.
- Khi bật, middleware
sandbox-demo
sẽ tự động gắn vào các group:admin
,api.extend
,partner
,pmo
.
3. Middleware Sandbox
- Tên alias:
sandbox-demo
(được khai báo và gắn trongProvider.php
). - Điều kiện áp dụng: Khi có đăng nhập hợp lệ (admin/partner/pmo/vendor) và
SANDBOX_DEMO_ENABLED
bật. - Cho phép: Các request
GET
không thuộc danh sách chặn. - Chặn: Các request khác sẽ trả về 403 hoặc JSON
{ error: 1, msg: "Access denied for sandbox demo" }
. - Danh sách path luôn chặn: Các đường dẫn upload xóa/di chuyển/đổi tên/crop... cho các nhóm admin, multivendor, partner (tự động build theo cấu hình prefix).
- Bạn có thể mở rộng:
routeAlwaysAllow()
: cho phép theo tên route (ưu tiên cao nhất).pathAlwaysAllow()
: cho phép theo path (ưu tiên cao nhất).routeAlwaysBlock()
: thêm tên route cần chặn.pathAlwaysBlock()
: thêm path cụ thể cần chặn. (Allow-list có ưu tiên cao hơn block-list.)
4. Lưu ý khi phát triển
- Sandbox nhằm bảo vệ môi trường demo: hạn chế hành vi ghi/xóa nguy hiểm.
- Kích hoạt Plugin: Mặc định, plugin sau khi cài đặt sẽ không được kích hoạt cho tới khi biến
SANDBOX_DEMO_ENABLED
trong file.env
được set là1
. Nếu chưa có biến này trong file.env
, hãy thêm nó:SANDBOX_DEMO_ENABLED=1
Lưu ý rằng việc set SANDBOX_DEMO_ENABLED=0
hoặc xóa biến SANDBOX_DEMO_ENABLED sẽ vô hiệu hóa Plugin ngay cả khi nó đang được kích hoạt trong admin.
5. Hỗ trợ
- Website:
https://GP247.net
- Email:
[email protected]
Sản phẩm đề xuất: