跳转到内容

安全与数据边界

这页面向部署和安全负责人。Blade Agent 会处理用户文件、模型请求、浏览器登录态和工具凭证;上线前必须确认这些数据落在哪里、谁能读取,以及哪些请求会离开内网。

Blade OAuth 签发的 Token 使用非对称签名,各服务从 Blade OAuth 获取公钥并校验身份。服务到 http://<host>:19000 的网络中断时,新的公钥或身份校验可能失败。

  • API Key 以 sk-blade-v3-... 开头,适合后端服务;明文只在创建时返回一次。
  • API Key 应按用户或服务分别创建,不要多人共用同一把 Key。
  • Key 泄露后先在管理界面吊销,再检查会话、文件和模型调用日志。
  • v2610.0.0-beta.1 起,首个登录用户不会自动成为管理员,管理员身份跟随 Blade OAuth 的声明。升级后要复核现有管理员。

上传文件、智能体生成的文件和会话工作区默认进入 Blade Agent 的 workspace/ 持久化目录。部署方需要自己制定保留和删除策略;只删聊天记录,不一定会清掉外部备份、Gitea 仓库或对象存储中的副本。

建议至少做到:

  1. workspace/ 放在受控持久卷,限制宿主机读权限。
  2. 备份前确认是否允许把业务文件复制到备份系统。
  3. 为离职用户、测试组织和过期会话建立删除流程。
  4. 不在截图、日志和支持工单里暴露文件内容、Token、邮箱或内网地址。

模型看到什么,取决于当前会话、Skill、系统提示词和工具结果。使用公网模型服务时,这些内容会发往配置的模型地址;使用盒子内模型时,也要检查 LLM Gateway 是否配置了公网回退源。

出网白名单应覆盖实际使用的模型源、Skill 调用的外部 API 和浏览器访问目标。没有业务需要时,不要给沙箱无限制公网访问。

Tracing 后端可能记录完整 prompt、模型响应和工具输入输出。接入 Langfuse、Helicone 或其他系统前,先确定脱敏和保留周期。

Blade Agent 在 Docker 沙箱中执行命令,但容器不是天然的强安全边界。风险取决于挂载目录、Docker Socket、Linux capability、网络和运行用户。

  • 不要把宿主机根目录、SSH Key 或云厂商凭证挂进会话沙箱。
  • 除非部署方案明确需要,不要把 Docker Socket 暴露给沙箱。
  • 以非 root 用户运行,收紧 capability 和出向网络。
  • v2608.0.0 取消了运行时路径限制;智能体可以访问进程权限允许的绝对路径,所以文件系统权限必须在容器层收紧。

浏览器自动化会使用用户可见的浏览器和现有登录态。Skill 不应把 Cookie、Authorization Header 或页面中的 Token 写入回复和文件。删除、付款、发布、改权限等动作应要求用户确认;chrome --confirm 只处理 JavaScript 对话框,不等于业务授权。

容器日志、LLM 观测页和 tracing 系统可能包含 prompt、工具参数、文件路径与错误响应。生产环境应限制访问,并在集中日志系统中设置保留期。

目前公开文档没有声明一套跨服务的不可篡改审计日志。如果业务要求合规审计,需要在 API Gateway、Blade OAuth、容器平台和目标业务系统分别留痕,不能只依赖聊天记录。

交付镜像中的核心 Python 代码和内置系统工具可使用 PyArmor 保护;skills/、配置和模板保持可读,便于调试。这项措施保护厂商源码,不负责隔离客户数据,也不能替代上面的权限与网络控制。

检查项通过标准
管理员Blade OAuth 中有明确的管理员声明,首个登录用户没有意外提权
API Key每个服务单独建 Key,可在管理端吊销
工作区持久卷权限、备份和删除周期已确定
模型出网模型地址和回退源已列入审批范围
沙箱无高风险宿主机挂载,无多余 capability
日志LLM payload 和工具结果的访问、脱敏、保留期已配置
高风险动作Skill 中写明确认和回滚步骤