OpenClaw 的 accessGroup 建好了但权限没变化,先看它有没有被某个 channel、account 或策略真正引用。accessGroup 本身只是一个可复用名单,不会因为存在就自动拦截所有消息;没有挂到入口配置上,它等于只是一张备用清单。
别用昵称判断权限
权限名单最好用平台稳定 ID,而不是用户昵称、群名或备注名。昵称会改,群名会改,甚至同名用户也可能出现。你要排查“为什么某个人还能用”,就对照 Gateway 收到的 sender id,看它是否在 allowlist 或某个被引用的 accessGroup 里。
常见误配
一种是只在 DM 策略里引用了 accessGroup,群聊策略没有引用,所以私聊被拦住,群里仍能触发。另一种是把 accessGroup 写在全局配置里,却忘了具体 channel 有自己的覆盖规则。还有一种更隐蔽:多个平台复用了看起来相同的用户标识,但实际命名空间不同,Telegram 的用户 ID 不能直接当成 Slack 的用户 ID。
实际处理时,先选一个最小入口测试,比如只保留自己的私聊,然后逐步加群、加平台、加 Agent。不要一边改访问组,一边改工具 profile 和模型配置;变量太多时,很难判断到底是哪一层起作用。对外开放 OpenClaw 前,至少做一次“允许用户、陌生用户、群成员、被移除用户”的四组测试。