feat: Phase 1 - 安全中间件 + 运维工具箱
新增 oss/core/security/ 模块(852行): - jwt_auth.py: JWT签发/验证(HMAC-SHA256,零外部依赖) - csrf.py: CSRF Token生成与校验 - input_validator.py: JSON Schema校验+类型强制 - tls.py: 自签名证书生成+SSL上下文 新增 oss/core/ops/ 模块: - health.py: 增强版/health端点(CPU/内存/磁盘/运行时间) - metrics.py: Prometheus兼容/metrics端点 对接改造: - engine.py: 导出新模块 - manager.py: 注册/api/login /health /metrics路由 - middleware.py: CSRF+InputValidation中间件 - config.py: JWT_SECRET/CSRF_SECRET等配置项 - security.py→security/__init__.py: 合并插件沙箱与HTTP安全
This commit is contained in:
@@ -40,12 +40,19 @@ class Config:
|
||||
# 安全配置
|
||||
"PERMISSION_CHECK": True,
|
||||
"ENFORCE_SIGNATURE": True,
|
||||
"CORS_ALLOWED_ORIGINS": ["http://localhost:3000", "http://127.0.0.1:3000"], # 允许的CORS来源
|
||||
"CSRF_ENABLED": True, # 启用CSRF防护
|
||||
"INPUT_VALIDATION_ENABLED": True, # 启用输入验证
|
||||
"RATE_LIMIT_ENABLED": True, # 启用限流
|
||||
"RATE_LIMIT_MAX_REQUESTS": 100, # 最大请求数
|
||||
"RATE_LIMIT_TIME_WINDOW": 60, # 时间窗口(秒)
|
||||
"JWT_SECRET": "",
|
||||
"CSRF_SECRET": "",
|
||||
"CSRF_TOKEN_TTL": 3600,
|
||||
"TLS_CERT_DIR": "./data/tls",
|
||||
"PUBLIC_PATHS": ["/health", "/favicon.ico", "/api/status", "/api/health", "/api/login", "/metrics"],
|
||||
"ADMIN_USER": "admin",
|
||||
"ADMIN_PASS": "admin123",
|
||||
"CORS_ALLOWED_ORIGINS": ["http://localhost:3000", "http://127.0.0.1:3000"],
|
||||
"CSRF_ENABLED": True,
|
||||
"INPUT_VALIDATION_ENABLED": True,
|
||||
"RATE_LIMIT_ENABLED": True,
|
||||
"RATE_LIMIT_MAX_REQUESTS": 100,
|
||||
"RATE_LIMIT_TIME_WINDOW": 60,
|
||||
|
||||
# 性能配置
|
||||
"MAX_WORKERS": 4,
|
||||
|
||||
Reference in New Issue
Block a user