OpenClaw 飞书机器人权限配置与安全指南
为了让 OpenClaw 既能顺畅运行,又不至于因权限过大导致安全隐患,建议在飞书开发者后台的权限管理中,按照以下清单进行勾选。这份清单分为基础必备和进阶功能两部分。
一、基础权限:让机器人能说话
这些权限保证机器人能'听到'指令并'开口'说话,无论个人还是团队使用都必须开启:
- im:message:p2p_msg:readonly (接收单聊消息) —— 允许机器人和你 1 对 1 聊天。
- im:message:group_at_msg:readonly (接收群聊中@机器人的消息) —— 团队场景下,机器人只响应被 @ 的内容,保护群隐私。
- im:message.p2p_msg:send (发送单聊消息) —— 机器人回复你的基础。
- im:message.group_msg:send (发送群聊消息) —— 机器人在群里回复大家的必要权限。
二、进阶功能权限:按需开启
如果你需要 OpenClaw 处理文档、查看成员信息或发送富媒体内容,请有选择性地开启:
1. 处理文档/表格
- drive:file:readonly (读取云文档/云空间文件) —— 机器人读取你发给它的 Excel 或文档进行分析。
- sheet:spreadsheet:readonly (读取电子表格) —— 专门用于自动化报表读取。
2. 识别身份(团队场景推荐)
- contact:user.id:readonly (获取用户 ID) —— 辅助 OpenClaw 区分是谁在发指令,实现权限隔离。
3. 发送图片/附件
- im:resource:upload (上传图片/视频/文件) —— 如果你让 AI 绘图或生成报表文件发回给你,必须勾选。
三、安全红线:非特殊需求请保持关闭
有些权限一旦开启,风险极高,除非你有极特殊的业务需求,否则请保持关闭:
- im:message:everything:readonly (接收所有消息) —— 极度危险。开启后机器人会监听群内所有闲聊,极易导致公司内部非公开谈话被上传至 AI 大模型,触发严重合规风险。
- contact:contact:readonly (获取通讯录所有信息) —— 除非你需要机器人根据职位进行复杂的审批流跳转,否则不要开启。
四、密钥管理:别让凭证裸奔
在 OpenClaw 或其他开源项目中,直接将 App ID 和 App Secret 以明文形式写在配置文件(如 config.yaml 或 settings.json)中是最不安全的做法。一旦代码误上传或服务器被入侵,凭据将直接暴露。为了兼顾'安全'与'可用',建议采用以下三种递进式的配置方案。
首选方案:环境变量注入
不要在配置文件里写死密钥,而是通过操作系统的环境变量注入。这是行业标准做法。
- 修改配置文件:在 OpenClaw 的配置文件中,将对应项设为引用变量(具体格式视版本而定,通常如下):
lark:
app_id: ${LARK_APP_ID}
app_secret: ${LARK_APP_SECRET}
- 在服务器/本地设置环境:
- Linux/Mac 终端执行:
export LARK_APP_ID="你的 ID" export LARK_APP_SECRET="你的 Secret" - Docker 部署时,在
docker-compose.yml中配置:environment: - LARK_APP_ID=cli_xxxxxxxx - LARK_APP_SECRET=xxxxxxxxxxxx
- Linux/Mac 终端执行:
备选方案:使用 .env 隐藏文件
如果你是在本地运行 Python 环境,可以使用 .env 文件配合 .gitignore。
- 在项目根目录新建一个
.env文件:
LARK_APP_ID=cli_a1b2c3d4
LARK_APP_SECRET=secret_e5f6g7h8
- 关键步骤:确保你的
.gitignore文件中包含了.env,防止它被同步到 GitHub 等代码仓库。 - OpenClaw 启动时会自动加载该文件中的配置。
兜底方案:配置文件权限锁定
如果你一定要直接写在 config.yaml 中,请务必执行以下安全加固:
- 限制文件权限:在 Linux 系统中,执行以下命令,确保只有运行 OpenClaw 的用户可以读取该文件:
chmod 600 config.yaml
这会防止服务器上其他低权限账号偷看你的配置。
- 多层加密(进阶):部分用户会使用
sops或ansible-vault对配置文件进行加密,只有在启动输入动态口令时才解密。
五、避坑指南
- 严禁硬编码:绝对不要在
main.py或任何.py源代码中直接写app_id = "xxx"。 - 定期轮换:建议每 3-6 个月在飞书后台点击'重置 App Secret',并同步更新你的部署环境。
- 日志屏蔽:检查 OpenClaw 的日志输出,确保它不会在启动时把你的 Secret 打印到控制台或 log 文件中。
提示:配置完权限后,必须在飞书后台点击'版本管理与发布',创建一个新版本并申请上线(个人使用通常秒过),权限才会正式生效。同时,强烈建议在'安全设置'中填入你部署 OpenClaw 机器的固定公网 IP,防止 App Secret 泄露后被他人冒用。
