概述


一、权限管理的意义

AI 助手配置好后,权限管理非常重要

  • 防止陌生人滥用 AI
  • 控制不同用户能看到什么
  • 保护敏感数据

二、权限控制的三个层级

第一层:渠道级(dmPolicy)
    ↓ 谁可以给我发消息

第二层:功能级(capabilities) ↓ 我能执行哪些功能

第三层:数据级(dataFilter) ↓ 我能访问哪些数据


三、第一层:渠道级权限(dmPolicy)

控制谁能向 AI 发消息

模式配置值说明
白名单allowlist只有名单里的人能发消息
开放open任何人都能发消息
禁止deny禁止所有人发消息(仅群聊)

白名单配置示例

"dmPolicy": "allowlist",
"allowFrom": [
  "ou_罗文飞书Id",
  "ou_陈心怡飞书Id",
  "ding_钉钉UserId1"
]

四、第二层:功能级权限(capabilities)

控制 AI 能做什么功能

"capabilities": {
  "canGenerateImage": true,
  "canSearchWeb": true,
  "canReadFile": true,
  "canWriteFile": false,
  "canSendEmail": true
}
功能配置项说明
生成图片canGenerateImage图片生成
网络搜索canSearchWeb搜索功能
读文件canReadFile读取本地文件
写文件canWriteFile创建/修改文件
发邮件canSendEmail发送邮件

五、第三层:数据级权限(dataFilter)

控制 AI 能访问哪些数据

"dataFilter": {
  "allowedDomains": ["company.com"],
  "blockedKeywords": ["机密", "密码"],
  "maxFileSize": "10MB"
}
配置项说明
allowedDomains允许访问的域名
blockedKeywords敏感词过滤
maxFileSize允许处理的最大文件

六、用户分级权限

可以给不同用户设置不同权限级别:

"userRoles": {
  "admin": {
    "dmPolicy": "open",
    "capabilities": {
      "canGenerateImage": true,
      "canSearchWeb": true,
      "canWriteFile": true,
      "canSendEmail": true
    }
  },
  "staff": {
    "dmPolicy": "allowlist",
    "capabilities": {
      "canGenerateImage": true,
      "canSearchWeb": true,
      "canWriteFile": false,
      "canSendEmail": false
    }
  },
  "guest": {
    "dmPolicy": "allowlist",
    "capabilities": {
      "canSearchWeb": true,
      "canGenerateImage": false,
      "canWriteFile": false,
      "canSendEmail": false
    }
  }
}
角色dmPolicy能做什么
adminopen全部功能
staffallowlist基础功能
guestallowlist仅搜索和对话

七、按用户分配角色

"channels": {
  "feishu": {
    "allowFrom": [
      {
        "id": "ou_罗文Id",
        "role": "admin"
      },
      {
        "id": "ou_员工Id",
        "role": "staff"
      },
      {
        "id": "ou_访客Id",
        "role": "guest"
      }
    ]
  }
}

八、敏感操作二次确认

对于高风险操作(如发邮件、删除文件),可以设置二次确认:

"security": {
  "requireConfirmation": {
    "canWriteFile": true,
    "canSendEmail": true,
    "canDeleteFile": true
  },
  "confirmationMessage": "确定要执行这个操作吗?回复「是」确认。"
}

九、审计日志

记录所有操作日志,方便排查问题:

"auditLog": {
  "enabled": true,
  "logPath": "/var/log/openclaw/audit.log",
  "logLevel": "info",
  "includeUserId": true,
  "includeMessage": true,
  "includeAction": true,
  "logRetention": "30d"
}
配置项说明
logPath日志文件路径
logLevel日志级别(debug/info/warn/error)
logRetention日志保留时间

十、常见问题

Q: 员工权限设置后 AI 还是能做所有事?
A:

答:检查 capabilities 配置,确保功能被正确限制。

Q: 如何快速撤销某个用户的权限?
A:

答:从 allowFrom 列表中移除该用户 ID 即可。

Q: 能否设置临时权限?
A:

答:可以添加过期时间:

{
  "id": "临时用户Id",
  "role": "guest",
  "expiresAt": "2026-03-31T00:00:00+08:00"
}

Q: 用户 ID 怎么获取?
A: 查看 Gateway 日志中的 allowFrom 配置,用户发送消息后会记录其 open_id。
Q: 可以按时间段控制白名单吗?
A: 需要自定义 Plugin 实现,OpenClaw 本身不提供时间段权限控制。
Q: 如何导出用户列表?
A: 目前需要手动记录,后续版本会支持导出功能。

十一,下一步学什么

  • 3.8 常见渠道问题排查 → 问题排查清单
  • 第六章:进阶功能 → 了解更多安全和管理功能
  • 第四章:模型配置 → 精细化配置模型

权限管理是系统安全的核心,值得认真配置!