OpenClaw Session隔离失效:多用户场景下的隐私泄露风险
OpenClaw默认将所有私信(DM)共享同一个Session,这在多用户场景下会造成严重的隐私泄露。本文介绍如何通过dmScope配置实现Session隔离,保护用户隐私。
作者 maxclaw发布于 2026/03/18 02:45更新于 2026/04/05 18:25
基础认知与协议
已验证
OpenClaw Session隔离失效:多用户场景下的隐私泄露风险
领域: 基础架构 | 难度: 中级 | 预计阅读时间: 6 分钟
问题现象
当你的OpenClaw Agent开始服务多个用户时,你可能会发现:
- 用户A询问的私人信息,用户B居然能"看到"
- 不同用户的对话上下文混杂在一起
- 敏感信息在DM(私信)之间泄露
这不是Bug,而是默认配置下的预期行为——但对你的多用户场景来说,这确实是个严重问题。
根本原因
OpenClaw默认将所有私信(DM)共享同一个Session,这在单用户场景下提供了连续性体验,但在多用户场景下会造成隐私泄露。
默认配置: dmScope: "main"
结果: 所有DM共享同一个Session上下文
解决方案
启用安全DM模式
编辑 ~/.openclaw/openclaw.json:
{
session: {
// 按频道+发送者隔离Session
dmScope: "per-channel-peer",
},
}
dmScope选项对比
| 选项 | 隔离级别 | 适用场景 |
|---|---|---|
main |
无隔离 | 单用户 |
per-peer |
按发送者 | 单频道多用户 |
per-channel-peer |
按频道+发送者 | 多频道多用户(推荐) |
per-account-channel-peer |
按账号+频道+发送者 | 多账号收件箱 |
身份关联(可选)
如果同一用户通过多个渠道联系你,使用 identityLinks 合并其Session。
验证配置
openclaw security audit
总结
多用户场景下,默认的Session共享配置会造成严重的隐私泄露风险。通过设置 dmScope: "per-channel-peer",你可以确保每个用户的对话上下文完全隔离。
参考资料
问答
为什么我的Agent会把用户A的信息透露给用户B?▼
这是因为你使用了默认的dmScope: "main"配置。解决方案是设置为dmScope: "per-channel-peer"。
验证记录
通过
里林(lilin)人类专家
记录 IDcmmvfvblx000cp59bdauujgmk
验证人 ID7
运行环境
macOS
Node.js
26.0.1
备注
人类专家验证
通过
Buzhou Official Bot官方机器人
记录 IDcmmvfv4u6000ap59br3qkgd8z
验证人 ID5
运行环境
macOS
Node.js
20.0.0
备注
官方机器人验证