Bảo mật và Quản trị trong Promptise Foundry: Hướng dẫn Triển khai JWT, Kiểm soát Truy cập và Nhật ký Kiểm toán
Promptise Foundry là một framework thông minh doanh nghiệp cung cấp giải pháp bảo mật và quản trị toàn diện, giúp bạn xây dựng ứng dụng AI sản xuất an toàn và kiểm soát được. Bài viết này sẽ khám phá chi tiết về hệ thống xác thực JWT, kiểm soát truy cập theo vai trò và hệ thống nhật ký kiểm toán của nó.
Tại sao cần quản trị bảo mật doanh nghiệp?
Khi phát triển ứng dụng AI sản xuất, bảo mật không còn là tùy chọn. Promptise Foundry tích hợp sẵn hệ thống quản trị bảo mật, bao gồm:
- Xác thực: Hỗ trợ xác thực JWT cho nhiều người dùng
- Kiểm soát truy cập: Quản lý quyền dựa trên vai trò
- Theo dõi: Ghi lại tất cả các hoạt động
- Phù hợp: Đáp ứng tiêu chuẩn bảo mật doanh nghiệp
Cấu trúc thành phần bảo mật chính
Cấu trúc bảo mật của Promptise Foundry bao gồm ba tầng chính:
1. Hệ thống Xác thực JWT
Dựa trên JSON Web Tokens, hỗ trợ xác thực cho nhiều người dùng với các vai trò khác nhau:
from promptise.mcp.server import JWTAuth, AuthMiddleware
JWT_SECRET = "your-secret-key-here"
auth = JWTAuth(secret=JWT_SECRET)
server.add_middleware(AuthMiddleware(auth))
2. Kiểm soát Truy cập theo Vai trò
Hệ thống ba cấp độ (viewer/analyst/admin) để quản lý quyền chi tiết:
| Vai trò | Cấp độ Quyền | Chức năng điển hình |
|---|---|---|
| Viewer | Đọc duy nhất | Xem danh sách nhân viên, trạng thái công việc |
| Analyst | Quyền phân tích | Truy vấn dữ liệu tài chính, kiểm tra kho hàng |
| Admin | Quản lý đầy đủ | Cấu hình hệ thống, luân chuyển khóa, nhật ký kiểm toán |
3. Hệ thống Nhật ký Kiểm toán
Ghi lại tất cả các hoạt động, hỗ trợ ghi nhật ký chuỗi HMAC:
@admin.tool(roles=["admin"])
async def get_audit_log(limit: int = 5) -> str:
"""Lấy các mục nhật ký kiểm toán gần đây"""
return "Nhật ký Kiểm toán:\n" + "\n".join(entries[:limit])
Thực hành: Xây dựng Máy chủ MCP An toàn
Bước 1: Cấu hình Xác thực JWT
Trong `examples/mcp/enterprise_server.py`, bạn có thể thấy cấu hình xác thực hoàn chỉnh:
# Cấu hình khóa JWT
JWT_SECRET = "promptise-demo-secret-key-2025"
auth = JWTAuth(secret=JWT_SECRET)
# Cấu hình ngăn xếp middleware
middleware_stack = [
AuthMiddleware(auth), # Middleware xác thực
LoggingMiddleware(), # Middleware ghi nhật ký
RateLimitMiddleware(rate_per_minute=120), # Giới hạn tốc độ
TimeoutMiddleware(default_timeout=30.0), # Kiểm soát thời gian chờ
]
Bước 2: Định nghĩa Quyền theo Vai trò
Sử dụng decorator để dễ dàng kiểm soát quyền cho các công cụ:
@hr.tool() # Tất cả vai trò có thể truy cập
async def list_employees(department: str = "") -> str:
return "Danh sách nhân viên..."
@finance.tool(roles=["analyst", "admin"]) # Phân tích viên và quản trị viên
async def get_revenue_summary(quarter: str = "Q1-2025") -> str:
return "Tóm tắt doanh thu..."
@admin.tool(roles=["admin"]) # Chỉ quản trị viên
async def rotate_secret(service: str) -> str:
return f"Khóa đã được luân chuyển: {service}"
Bước 3: Kích hoạt Nhật ký Kiểm toán
Middleware `LoggingMiddleware` tự động ghi lại tất cả các hoạt động:
{
"timestamp": "2025-04-02 14:22:01",
"user_role": "admin",
"tool_called": "finance_list_transactions",
"status": "OK",
"ip_address": "192.168.1.100"
}
Tính năng Bảo mật Nâng cao
Quản lý Khóa Bí mật (Secret Scoping)
Quản lý khóa bí mật tách biệt, hỗ trợ TTL và luân chuyển tự động:
from promptise.runtime import ProcessConfig, SecretScopeConfig
config = ProcessConfig(
secrets=SecretScopeConfig(
enabled=True,
secrets={
"stripe_key": "${STRIPE_API_KEY}",
"db_password": "${DB_PASSWORD}",
},
default_ttl=3600, # Hết hạn mặc định sau 1 giờ
revoke_on_stop=True, # Xóa tự động khi dừng
)
)
Theo dõi Sức khỏe Hành vi
Phát hiện hành vi bất thường theo thời gian thực, ngăn chặn agent bị treo hoặc lặp:
from promptise.runtime import HealthConfig, EscalationTarget
health = HealthConfig(
enabled=True,
stuck_threshold=3, # 3 lần gọi giống nhau = treo
loop_window=20, # Kiểm tra 20 lần gọi gần nhất
on_anomaly="escalate", # Thông báo nâng cao khi có bất thường
escalation=EscalationTarget(
webhook_url="https://hooks.slack.com/..."
)
)
Isolation Multi-tenant
Đảm bảo dữ liệu của các người dùng/tenant được tách biệt hoàn toàn:
from promptise.agent import CallerContext
# Thiết lập ngữ cảnh người gọi
ctx = CallerContext(user_id="user123", tenant_id="acme-corp")
Lời khuyên Tốt nhất cho Môi trường Sản xuất
- Quản lý Khóa: Sử dụng biến môi trường để lưu trữ khóa JWT, luân chuyển khóa định kỳ (khuyến nghị 90 ngày), triển khai cơ chế thu hồi khóa.
- Quyền Tối thiểu: Tuân theo nguyên tắc quyền tối thiểu, kiểm toán phân phối quyền định kỳ, triển khai quy trình phê duyệt thay đổi quyền.
- Chính sách Lưu giữ Nhật ký: Giữ nhật ký kiểm toán ít nhất 90 ngày, triển khai lưu trữ và sao lưu nhật ký, xem xét truy cập bất thường định kỳ.
- Theo dõi và Cảnh báo: Thiết lập cảnh báo truy cập bất thường, theo dõi các nỗ lực xác thực thất bại, theo dõi các thao tác nâng quyền.
Giải quyết Sự cố và Gỡ lỗi
Giải pháp cho Các Vấn đề Thường gặp
| Vấn đề | Có thể Do | Giải pháp |
|---|---|---|
| Xác thực thất bại | Token JWT hết hạn | Làm mới token, kiểm tra cấu hình khóa |
| Từ chối quyền | Quyền vai trò không đủ | Kiểm tra cấu hình `@tool(roles=[...])` |
| Nhật ký bị thiếu | Middlewares ghi nhật ký chưa kích hoạt | Đảm bảo `LoggingMiddleware` đã được thêm |
| Hiệu suất giảm | Nhật ký kiểm toán quá tải | Điều chỉnh mức độ ghi nhật ký, sử dụng ghi nhật ký bất đồng bộ |
Công cụ Gỡ lỗi
Sử dụng công cụ `get_audit_log` tích hợp để xem ghi chép hoạt động theo thời gian thực:
# Xem 10 mục nhật ký kiểm toán gần đây
curl -H "Authorization: Bearer " \
http://localhost:8000/admin/get_audit_log?limit=10
Tổng kết và Triển vọng
Hệ thống quản trị bảo mật của Promptise Foundry cung cấp nền tảng bảo mật vững chắc cho ứng dụng AI doanh nghiệp. Với xác thực JWT, kiểm soát truy cập chi tiết và nhật ký kiểm toán, bạn có thể:
- Triển khai nhanh chóng: Cấu hình hệ thống bảo mật đầy đủ trong vài phút
- Mở rộng linh hoạt: Hỗ trợ các chiến lược vai trò và quyền tùy chỉnh
- Phù hợp và tin cậy: Đáp ứng yêu cầu kiểm toán doanh nghiệp
- Theo dõi theo thời gian thực: Theo dõi và phát hiện bất thường toàn diện
Bước tiếp theo
- Bắt đầu sử dụng: Clone repository và chạy ví dụ
git clone https://gitcode.com/gh_mirrors/de/Foundry cd Foundry python examples/mcp/enterprise_server.py - Khám phá Tài liệu: Xem hướng dẫn cấu hình bảo mật chi tiết
- Tài liệu chính thức
- Cấu hình thời gian chạy
- Mô-đun quản trị
- Phát triển Tùy chỉnh: Điều chỉnh chiến lược bảo mật theo nhu cầu kinh doanh
- Thay đổi định nghĩa vai trò
- Thêm middlewares tùy chỉnh
- Tích hợp hệ thống xác thực hiện có
Promptise Foundry giúp quản trị bảo mật trở nên đơn giản và mạnh mẽ, cho phép bạn tập trung vào logic kinh doanh, không phải phức tạp về bảo mật. Bắt đầu xây dựng ứng dụng AI an toàn của bạn ngay hôm nay!