# 安全说明 DSH Desktop Agent Bridge 让外部 agent 使用用户的 DSH 桌面环境执行工作。它提供接口身份、会话归属和资源授权检查,执行沙箱及原生审批仍由 DSH 实现。 当前只验证 Windows + DSH `0.2.1-rc.2`。其他组合未获安全兼容性保证;升级 DSH 后应重新验收。 ## 信任边界 - 本机 RPC 仅在回环地址监听,校验 Host、Origin、令牌及请求结构。独立令牌由服务端映射到固定客户端身份,客户端不能通过参数改名。 - 客户端只能访问自己的协作会话及用户已授权的工作区、能力包和模型。新身份默认没有资源权限。 - 协作执行要求 DSH 的 `workspace-write` 和 `ask` 审批语义。外部工具没有切换到完整访问或永久批准的接口。 - 用户接管后外部写入指挥被拒绝;停止不回滚已执行的操作。资源撤销不自动停止正在执行的工作。 **同一操作系统账号下的程序不彼此隔离。** 能读取 `client-.json` 的程序能使用该凭据;能修改本机插件或 DSH 配置的程序处于此接口限制之外。不要把本机令牌当成抵御已控制用户账号的程序的安全边界。 ## 父 Agent 审批 每个客户端的父交互转交开关默认关闭,只能由用户通过桌面设置开启。开启后,父 Agent 应先展示完整请求,等待用户答复,再提交一次批准、拒绝或问题答案。 服务端验证身份、会话、任务、请求生命周期和回复格式,但**无法证明 `userReply` 由真人输入**。字段有值或父 Agent 声称“用户已同意”不是独立人类认证。使用者必须信任父 Agent 不会自行代批、伪造答复或把子任务文本当作授权。 关闭转交时使用 DSH 原生审批。接管、停止或修改授权会使旧转交请求失效;跨身份、过期和重复回复被拒绝。网络中断不会自动批准;提交结果不确定时不自动重放批准。 ## 数据与远程部署 协作状态含任务文本、会话归属、资源配置和交互回复审计;连接文件包含明文令牌。完整会话另由 DSH 保存。它们不是加密保险库,不应提交到仓库、附到公开问题或上传为测试产物。 远程接入使用与桌面内部身份凭据分开的令牌。不要直接公开 DSH 原生网关或本机 RPC;按 [远程连接说明](docs/remote.md) 部署认证适配器与 HTTPS 通道。TLS 终止方可能看到任务和结果,部署方应纳入信任范围。选定模型也可能将工作区读取内容发送给其配置的模型提供商;回环连接不表示模型处理全在本地。 同项目任务排队仅覆盖本插件,不是全局文件锁。客户端断线后 DSH 已接受的工作可能继续;凭据泄露时仅断开客户端不等于停止任务。 ## 发现问题 如怀疑凭据泄露或越权,先在 DSH 停止相关任务并撤销该身份资源授权,停止远程通道,然后检查本机状态和原生会话。不要在未知状态下自动重发任务或批准。 本项目目前没有承诺专用安全响应时限。仓库启用 GitHub 私密漏洞报告时,请从 **Security → Report a vulnerability** 提交。若该入口不可用,可先提交不含利用细节、凭据或私人内容的公开 Issue,请维护者安排私密渠道。 报告请提供受影响版本、最小复现、预期/实际权限边界和已去敏证据。不要公开有效令牌、连接文件、完整用户状态或真实会话日志。