概述

协作支柱提供多用户、多组织基础设施,使团队能够在汽车网络安全项目上协同工作。它涵盖实时协同编辑、面向 OEM 和多级供应商的基于角色的访问控制、租户隔离的供应商门户、灵活的报告共享、用于工具集成的开放 API 访问以及全面的通知系统。

实时协同编辑

在线状态跟踪

  • 每个用户的编辑活动都通过 5 分钟 TTL(300 秒过期)进行跟踪
  • 客户端每 60 秒发送心跳,带有指数退避重试逻辑
  • 可见性变化检测在用户切换浏览器标签时暂停/恢复在线状态
  • Socket 事件:editing:startediting:stop 广播给所有项目成员

实体级锁定

  • 当用户开始编辑实体时,其他用户会看到在线状态指示器
  • 乐观锁定防止并发冲突写入
  • 版本冲突检测在冲突发生时显示解决 UI
  • 锁定在会话过期或显式停止时自动释放

自动保存与撤销/重做

  • 自动保存在 2 秒防抖周期后触发
  • 撤销/重做堆栈每个会话维护 50 个操作
  • 图形结构变化通过 graph:updated socket 事件广播给所有查看者

支持的协作场景

  • 系统架构图(组件放置、连接)
  • 威胁建模图(威胁关系、攻击路径)
  • 风险登记册(风险编辑、处置关联)
  • 所有实体编辑器(目标、需求、控制措施、声明、测试用例)

基于角色的访问控制 (RBAC)

两级架构

级别范围用途
组织角色平台范围管理组织设置、文档、目录访问
项目角色按项目在单个项目中授予特定模块权限

组织角色权限

  • Org_Settings:组织级管理的读取 / 写入 / 删除权限
  • canEditDocumentation:文档编辑的布尔标志
  • 系统角色(不可删除)与自定义角色

项目角色权限

每个项目角色按模块定义权限:

模块描述
System_ModellingE/E 架构编辑
Threat_Modelling威胁分析访问
Attack_Path_Analysis攻击路径创建(需要 Threat_Modelling 读取权限)
Risk_Assessment风险评分和登记册
Risk_Treatment目标、需求、控制措施、声明
SBOM软件供应链管理
Monitoring_and_Incidents安全事件和事件响应
Validation_and_Testing测试用例和活动管理
Compliance_Reporting合规评估和报告
Activity_Log项目活动动态

权限操作: Read、Write、Delete、Full_Access

RBAC 执行

  • 在每个 API 端点基于中间件执行
  • 装饰器:@RequireRead()@RequireWrite()@RequireDelete()@RequireFullAccess()
  • @RequireProjectMembership() 验证项目级访问
  • 活动动态根据查看者的模块权限进行过滤

许可证层级限制

层级用户限制模块访问功能
Team基本限制基础模块核心 TARA、基本合规
Professional扩展限制基础 + TARA + SBOM完整分析、中国 GB 标准
Enterprise无限制所有模块完整平台、蓝图、高级治理

许可证执行在 API 和 UI 层同时验证,限制功能、用户数量和模块可用性。

多租户供应商门户

租户隔离

  • 每个组织获得专用数据库实例
  • 数据库上下文从 JWT 租户声明中动态解析
  • 所有 API 请求在数据访问前验证租户隔离
  • 全局控制平面管理跨租户操作

租户配置

  1. 组织创建 webhook 触发配置
  2. 创建专用数据库并使用加密连接凭据
  3. 初始化默认用户、角色和权限
  4. 初始化目录(SPDX 许可证、风险方法、漏洞来源、工具定义)
  5. 根据许可证层级配置功能标志
  6. 执行许可证有效期和层级限制

供应商访问模型

  • OEM 管理自己的租户,拥有完整平台访问权限
  • Tier-1 供应商获得自己的租户,具有层级适当的功能
  • 跨项目共享实现租户间受控协作
  • 每个供应商只能看到分配给他们的项目和模块

报告共享

选项用途
链接类型实时 / 快照实时数据 vs. 冻结的时间点
访问模式公开 / 认证 / 密码访问控制级别
评论启用 / 禁用允许外部评论
过期时间可选时间戳到期后自动撤销
状态活跃 / 已撤销手动访问控制

安全功能包括唯一 URI 生成、SHA256 密码哈希、令牌轮换和即时链接撤销。

报告评论

  • 共享报告的线程化评论支持
  • 权限中间件控制谁可以评论
  • 带权限检查的评论删除

开放 API 与外部集成

API 密钥管理

  • 256 位熵密钥生成,带识别前缀
  • 项目范围内的读取/写入权限级别
  • SHA256 哈希安全存储
  • 密钥生命周期:创建、列出、撤销
  • 最后访问跟踪用于使用分析

Webhook 集成

  • HMAC-SHA256 签名验证(X-Uraeus-Signature 头部)
  • Webhook 来源的 IP 白名单
  • 支持类型:组织配置、GitHub SBOM 同步、SendGrid 邮件事件
  • 关联 ID 用于请求跟踪

OpenAPI 文档

  • 完整 OpenAPI 3.0.0 规范
  • 三个 API 服务器组:主 API(/api/v1)、Webhooks(/webhooks/v1)、管理(/admin
  • 安全方案:Bearer JWT、Session Token、Admin API Key
  • 18 个全面的文档模块覆盖所有平台端点

集成用例

  • 通过 API 密钥的 CI/CD 管道 SBOM 上传
  • VSOC 事件导出(JSON、AUTOSAR、STIX、自定义)
  • 威胁情报源导入
  • GitHub webhook 驱动的 SBOM 自动同步
  • 外部测试台代理注册

通知系统

通知类别

类别触发条件
分配风险、任务、目标、控制措施或需求分配给用户
提及评论或描述中的 @提及
审批创建审批请求或做出审批决定
漏洞在 SBOM 组件中发现严重/高危 CVE
升级风险严重级别变化或事件升级
系统项目邀请、角色变更、导出完成

投递渠道

  • 应用内: 通过 Socket.IO 的实时通知,使用用户特定房间
  • 邮件: 基于许可证层级和用户偏好的条件发送
  • 备用方案: 当 WebSocket 不可用时,60 秒轮询通知摘要

优先级别: 严重、高、中、低 — 影响投递紧急度和渠道选择。

用户偏好

  • 按类别启用/禁用
  • 安静时段配置
  • 项目级静音
  • 90 天通知保留,自动清理

活动跟踪

平台上的所有操作都记录在项目活动动态中:

  • 跟踪的模块: 系统建模、威胁建模、风险评估、合规、SBOM、分析
  • 记录的数据: 用户、时间戳、模块、操作类型、实体引用、严重级别
  • 权限过滤: 用户只能看到拥有读取权限的模块的活动
  • 组织级视图: Org_Settings 读取权限可查看所有模块活动

与其他支柱的集成

方向支柱协作功能
全部设计系统架构图的实时协同编辑
全部TARA带在线状态指示器的并发威胁建模
全部测试通过 WebSocket 仪表板的共享活动监控
全部运维实时安全事件通知
全部合规带访问控制的报告共享
全部SBOM通过 API 密钥的 CI/CD 管道集成
全部治理所有协作操作的审计追踪