Files

1.3 KiB

插件安全边界

能提供的隔离

  • 私有实现以独立二进制交付,宿主公开源码不包含其业务逻辑。
  • 进程协议避免 Go 动态链接和共享内存 ABI。
  • 包签名和文件哈希防止未授权替换。
  • UI 使用短时 URL、独立 Bridge Token 和 sandbox iframe。
  • 插件故障时 OAuth 插件路径失败关闭,不静默切回另一种网络行为。

不能提供的保证

  • 闭源二进制仍可能被逆向分析。
  • 子进程不是操作系统沙箱。
  • 插件拥有 Sub2API 服务用户可访问的文件、环境变量和网络权限。
  • 包签名证明发布者身份,不证明实现无漏洞或符合 Provider 条款。

部署要求

  • 官方 OpenAI Transport 使用宿主内置公钥;只向 plugins.trusted_publishers 添加经过审核的第三方公钥。
  • 使用专用低权限系统用户运行 Sub2API。
  • 限制该用户的文件权限、出站网络和环境变量。
  • 不向插件环境注入无关密钥。
  • 对插件升级保留旧包和回滚流程。
  • 记录安装、启用、停用、配置和删除操作,但不记录配置明文。

敏感数据

插件处理真实 OAuth Authorization 请求头,必须避免将请求头、请求体、代理凭据和上游敏感响应写入日志或诊断消息。UI 配置中不应出现 OAuth Token。