本指南介绍操作员如何模拟其他用户进行客户支持。
概述
BitzOrcas 的委托系统允许授权操作员临时以另一用户身份操作。模拟期间的所有操作都会被审计。
授予委托
具有 delegation.grant 权限的操作员可以创建委托授权:
POST /api/delegations/grantsAuthorization: Bearer {operator-token}
{ "targetUserId": "user-456", "tenantId": "100", "ttlMinutes": 60, "scope": "ticket.view,ticket.comment"}返回委托令牌,操作员在后续请求中携带该令牌。
使用委托令牌
GET /api/ticketsAuthorization: Bearer {delegation-token}
// 请求以目标用户身份执行// 审计日志同时记录 operator_id 和 target_user_id令牌验证
API 管道中的 DelegationTokenMiddleware 自动验证委托令牌。它在认证之后、租户解析之前运行。
撤销委托
DELETE /api/delegations/grants/{grantId}Authorization: Bearer {operator-token}安全注意事项
- 委托授权有可配置的 TTL(默认:1 小时)
- 作用域限制约束操作员可执行的操作
- 所有操作都会记录两个身份的审计日志
- 目前仅 SqlSugar 路径支持委托(EF Core:待实现)