针对不同环境,推荐的最佳安全实践如下。核心原则是:永远不要在代码里硬编码,优先使用系统变量。

  1. Windows (个人/本地)
    Windows 推荐使用“用户环境变量”,避免在终端历史记录中留下明文。
  • 配置方法:
  1. 按下 Win + R,输入 sysdm.cpl,点击“高级” -> “环境变量”。
    2. 在“用户变量”中新建:
    • 变量名:LARK_APP_ID,变量值:cli_xxx
      • 变量名:LARK_APP_SECRET,变量值:xxx
    1. 注意:设置后需重启 IDE(如 VS Code)或 CMD 窗口才能生效。
  • OpenClaw 引用:配置文件中使用 ${LARK_APP_ID}。
  1. macOS / Linux (本地/服务器)
    Unix 系系统推荐使用 .bashrc 或 .zshrc(持久化)或直接在启动命令中注入(临时)。
  • 持久化配置:
  1. 执行 nano ~/.zshrc(Mac 默认)或 nano ~/.bashrc(Linux)。
    2. 添加:export LARK_APP_ID=“cli_xxx” 和 export LARK_APP_SECRET=“xxx”。
    3. 保存后执行 source ~/.zshrc。
  • 安全建议:使用 chmod 600 ~/.zshrc 限制其他本地用户读取。
  1. Docker / Docker Compose (云端/本地隔离)
    这是最推荐的生产环境部署方式,通过 docker-compose.yml 集中管理。
  • 配置方法:

services:
openclaw:
image: openclaw/openclaw:latest
environment:
- LARK_APP_ID=cli_xxxxxxxx
- LARK_APP_SECRET=xxxxxxxxxxxx
# 或者使用更安全的 .env 文件映射
env_file:
- .env

  • 安全建议:如果使用 .env 文件,请确保该文件在 .gitignore 清单中。
  1. 云服务器原生部署 (安全加固版)
    如果你直接在 Linux 服务器上跑脚本,建议结合 systemd 管理服务。
  • 配置方法:创建服务文件 /etc/systemd/system/openclaw.service:

[Service]
Environment=“LARK_APP_ID=cli_xxx”
Environment=“LARK_APP_SECRET=xxx”
ExecStart=/usr/bin/python3 main.py

  • 安全建议:这样密钥只存在于 root 权限可见的服务配置文件中,普通用户无法通过 env 命令查看到。

💡 极简操作清单

环境 推荐方式 安全级别 优点
Windows 系统环境变量 ⭐⭐⭐ 重启后依然有效
macOS/Linux export 变量 ⭐⭐⭐ 灵活,适合开发者
Docker env_file ⭐⭐⭐⭐ 解耦最好,迁移方便
云服务器 systemd 注入 ⭐⭐⭐⭐⭐ 隐藏最深,适合长期运行
Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐