P0-1 认证安全: - JWT secret 改为环境变量配置, 未设置则随机生成(重启失效) - 新增 LoginRateLimitMiddleware: 5次/分钟登录频率限制(滑动窗口) - 429 响应 + 前端 toast 提示 P0-2 操作审计日志: - 新增 OperationLog 模型 (user/username/action/resource/detail/ip) - 新增 AuditLogMiddleware 自动记录 POST/PUT/DELETE/PATCH 操作 - 新增 GET /audit-logs API (分页/过滤/统计) - 前端 AuditLogsPage 对接真实 API (字段/路径修正) P0-3 实例密码加密: - 已确认 crypto.py AES-256-GCM 加密存储, 无需修改 P1 前端错误提示: - 新增 useToast hook + ToastContainer 组件 - request.ts 拦截器: 4xx/5xx 错误 toast 显示后端 detail 信息 - 422 验证错误提取第一条 msg - 网络失败显示通用提示 1182 tests passed
45 lines
1.8 KiB
Python
45 lines
1.8 KiB
Python
from fastapi import APIRouter
|
|
|
|
from app.api.v1.endpoints import (
|
|
auth, user, instance, ticket, query, dashboard, audit, audit_rule,
|
|
announcement, notification, ldap_config,
|
|
instance_detail, backup, redis, dictionary,
|
|
instance_group, masking_rule, rollback,
|
|
workflow, impact, schema_drift, pool,
|
|
mongo, query_history, sql_assistant, db_types,
|
|
settings, scheduled_task, audit_log,
|
|
)
|
|
|
|
api_router = APIRouter(prefix="/api/v1")
|
|
|
|
api_router.include_router(auth.router)
|
|
api_router.include_router(user.router)
|
|
api_router.include_router(instance.router)
|
|
api_router.include_router(ticket.router)
|
|
api_router.include_router(query.router)
|
|
api_router.include_router(dashboard.router)
|
|
api_router.include_router(audit.router)
|
|
api_router.include_router(audit_rule.router)
|
|
api_router.include_router(announcement.router)
|
|
api_router.include_router(notification.router)
|
|
api_router.include_router(ldap_config.router)
|
|
api_router.include_router(instance_detail.router)
|
|
api_router.include_router(backup.router)
|
|
api_router.include_router(redis.router)
|
|
api_router.include_router(mongo.router)
|
|
api_router.include_router(dictionary.router, prefix="/dictionary", tags=["dictionary"])
|
|
api_router.include_router(instance_group.router)
|
|
api_router.include_router(masking_rule.router)
|
|
api_router.include_router(rollback.router)
|
|
api_router.include_router(workflow.router)
|
|
api_router.include_router(impact.router)
|
|
api_router.include_router(schema_drift.router)
|
|
api_router.include_router(pool.router)
|
|
api_router.include_router(query_history.router)
|
|
api_router.include_router(sql_assistant.router)
|
|
|
|
api_router.include_router(db_types.router)
|
|
api_router.include_router(settings.router, prefix="/settings", tags=["系统设置"])
|
|
api_router.include_router(scheduled_task.router)
|
|
api_router.include_router(audit_log.router)
|