Back to Documentation
API & Integrations

身份验证与 RBAC v2.0:企业级安全与多租户隔离

角色访问控制策略与系统安全边界。

CXMind v2.0 引入了符合企业标准且深度合规的角色权限控制(RBAC)系统。该架构旨在支持复杂的组织层级结构,同时在多租户环境下维护严格的数据隔离边界。

令牌生命周期机制 (Token Lifecycle)

系统采用双令牌架构(Dual-Token Architecture),在用户体验与高频率风险缓解之间取得了完美平衡。

  • 访问令牌 (Access Token):
    • 有效期 (TTL): 2 小时。
    • 用法: 必须附加在每个 API 请求的 Authorization: Bearer 请求头中。
    • 安全性: 短时效确保了即便令牌泄露,风险窗口也极小。系统支持通过 Redis 后端实现的“黑名单机制”进行即时熔断撤回。
  • 刷新令牌 (Refresh Token):
    • 有效期 (TTL): 7 天。
    • 存储: 存储在 HttpOnlySecureSameSite=Strict 的 Cookie 中,有效防止 XSS(跨站脚本)和 CSRF(跨站请求伪造)攻击。
    • 静默续期: 在后台,前端利用刷新令牌自动交换新的访问令牌,无需中断坐席的操作流程,确保长班次工作的连续性。

多租户安全边界

在 v2.0 中,CXMind 实现了逻辑租户隔离 (LTI)。每一个数据库查询和缓存查找都会自动带上 tenant_id 作用域。

  • 命名空间隔离: AI 模型、提示词模板和 ASR 配置等资源均按租户分区。租户 A 的坐席无法感知租户 B 任何资源的存在。
  • 加密作用域: tenant_id 被嵌入在经过平台私钥签名的 JWT 载荷中,从 API 层级杜绝了“ID 欺骗”攻击。

系统身份层级定义

RBAC v2.0 模型遵循最小权限原则 (PoLP)。每个角色被赋予特定的粒度权限(如 call:read, call:barge, report:export)。

Control LabelSystem Role AliasScope Description
Platform Adminplatform_adminAbsolute control over IT infrastructure, models, integrations, and wildcard `*` cross-tenant override rights.
Operations Managerops_managerFull macroscopic insight over contact center telemetry, active queues, and dashboard indices.
QA & Compliance Leadqa_managerDictates quality assurance rubric schemas, manages evaluation reports, and arbitrates appeal decisions.
Team SupervisorsupervisorManages assigned subordinate teams, possessing unilateral rights to monitor, whisper, or barge into active calls.
Senior Agentsenior_agentEmpowered to modify local flows and contribute directly to shared corporate knowledgebases.
Standard AgentagentCore end-user role. Restricted to self-data analytics, utilizing AI Copilot interactions, and handling primary routing workflows.

安全审计与合规

身份执行的每一项操作都会记录在不可篡改的审计追踪 (Audit Trail) 中:

执行主体 (Actor)

提取自 JWT 的 user_id 和角色。

具体动作 (Action)

具体的 API 端点和方法(例如:POST /v2/calls/barge)。

环境上下文 (Context)

来源 IP、时间戳及租户上下文。

执行结果 (Outcome)

成功/失败状态,为 SOC2 或 GDPR 合规审计提供清晰的链路支持。

Need more help or have a specific architecture question?

Contact Engineering Support