Files
group_xinghuo_jinrong/app/api/admin.py
T

35 lines
1.1 KiB
Python

"""管理接口:审计查询、合规巡检、会话/Tool 留痕(RBAC 保护)。"""
from __future__ import annotations
from fastapi import APIRouter, Depends, Request
from app.api.deps import require_permission
from app.model.schemas import AuthContext
from app.service.audit_service import audit_service
from app.utils.response import success_response
router = APIRouter()
AUDIT_READ_DEP = Depends(require_permission("audit:read"))
@router.get("/audit-logs")
def list_audit_logs(
request: Request,
auth: AuthContext = AUDIT_READ_DEP,
):
events = [
{
"trace_id": event.trace_id,
"event_type": event.event_type,
"agent_type": event.agent_type,
"actor_id": event.actor_id,
"customer_id": event.customer_id,
"decision": event.decision,
"input_summary": event.input_summary,
"created_at": event.created_at.isoformat(),
}
for event in audit_service.list_events()
]
return success_response(request, {"items": events, "total": len(events)})