在使用 OpenClaw 远程控制 Node(如 Windows PC)时,执行命令的权限管理是一个关键安全问题。本文介绍如何配置 exec-approvals 来实现精细化的命令执行控制。
当 OpenClaw Agent 尝试在远程 Node 上执行系统命令时,默认情况下会被拒绝:
这是因为 Node 的安全策略默认使用 模式,只有通过批准的命令才能执行。
OpenClaw Node 的执行权限配置文件通常位于:
完整配置示例:
控制命令执行前是否需要用户确认:
- – 直接执行,无需确认(推荐用于自动化)
- – 每次执行前弹出确认对话框
可以为不同 Agent 设置不同权限:
在 Windows PowerShell 中:
如果文件不存在,创建目录和文件:
根据需求选择合适的 级别:
方案 A:开发环境(完全信任)
方案 B:受控环境(白名单模式)
修改配置后需要重启 OpenClaw Node 服务使配置生效。
配置完成后,测试命令执行:
- 分层权限:对敏感操作使用 ,日常操作使用
- 最小权限原则:仅授予必要的命令执行权限
- 定期审计:检查批准列表,移除不再需要的条目
- Token 安全:定期更换 socket token,避免硬编码在代码中
- 不要将 提交到 Git 仓库
- 不要在公共网络暴露 Node 服务端口
- 不要对所有 Agent 使用 权限而不加区分
Q: 修改配置后不生效?
A: 需要重启 OpenClaw Node 服务。在 Windows 上,重启 OpenClaw Node 应用程序。
Q: 如何临时允许一个命令?
A: 使用命令行批准:
Q: 如何查看当前批准列表?
A: 检查配置文件中的 数组,或使用:
OpenClaw 的执行权限配置提供了灵活的安全控制:
- Security 模式决定命令执行的宽松程度
- Ask 设置控制执行前是否需人工确认
- Agent 级配置实现细粒度权限管理
- 白名单模式适合生产环境的精细化控制
根据实际使用场景选择合适的配置,在便利性和安全性之间取得平衡。
- OpenClaw 官方文档
- OpenClaw GitHub 仓库
发布者:Ai探索者,转载请注明出处:https://javaforall.net/255926.html原文链接:https://javaforall.net
