必须将火山引擎API Key配置为系统级环境变量,禁用代码或配置文件中的明文硬编码;推荐永久写入~/.zshrc并source生效,ChatBox可自动读取ARK_API_KEY与ARK_SECRET_KEY,企业场景应结合IAM最小权限与KMS加密实现二次隔离。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你需要把火山引擎的 API Key 安全存进本地环境,避免写死在代码里、配置文件中或聊天记录里——一旦提交到 Git 仓库或发错群,密钥立刻失效且可能产生不可控费用。
立即禁用明文硬编码
不要在 Python 脚本里写 api_key = "sk-xxx",也不要在 JSON 配置文件中直接填 Access Key 和 Secret Key。这类写法会让密钥随代码被同步到远程仓库,哪怕加了 .gitignore 也常因疏漏暴露。
这一步必须停止:任何将密钥以纯文本形式出现在项目源码树中的操作,【包括注释里写示例密钥】。
优先配置为系统级环境变量
方法一:临时生效(适合调试)
在终端中执行:export ARK_API_KEY="your_access_key_here" → export ARK_SECRET_KEY="your_secret_key_here"
方法二:永久生效(推荐长期使用)
① 打开用户 shell 配置文件:
macOS/Linux:编辑 ~/.zshrc 或 ~/.bash_profile
Windows(WSL):同上;Windows 原生 CMD/PowerShell 需通过「系统属性→高级→环境变量」图形界面设置
② 在文件末尾追加两行:export ARK_API_KEY="your_access_key_here"export ARK_SECRET_KEY="your_secret_key_here"
③ 保存后执行 source ~/.zshrc(或对应文件名)使配置立即生效
注意:Windows 原生 PowerShell 中请用 $env:ARK_API_KEY="..." 语法,CMD 中用 setx ARK_API_KEY "...",但 setx 会写入注册表且新终端才生效。
客户端自动读取环境变量(免填密钥)
OpenClaw 启动时不会读取 ARK_API_KEY,它只认 apiKey / secretKey 字段;但 ChatBox 支持自动识别这两个环境变量——只要你在启动前已配置好,就完全不用在界面上输入任何密钥。
这一步做完,ChatBox 就能直连火山方舟,【无需在 UI 中暴露密钥,也无需导出配置文件】。
敏感信息二次隔离(企业/高安全场景)
方法一:用火山引擎 KMS 加密密钥后再存入配置中心
先调用 KMS CreateKey 创建主密钥 → 使用 Encrypt 接口加密你的 ARK_SECRET_KEY → 将密文存入 Consul/Nacos 等配置中心 → 应用启动时调用 Decrypt 解密使用
方法二:为每个服务创建独立 IAM 用户并绑定最小权限 API Key
进入 IAM 用户管理 → 新建用户(如 chatbox-prod-user)→ 仅授予「方舟在线推理只读 + 指定模型 ID 调用」权限 → 为该用户创建专属 API Key → 该密钥泄露仅影响单一服务,不会波及其他模型或项目
主账号密钥切勿用于生产环境,【它默认拥有当前项目全部模型调用权限,且无法限制 IP 或接入点】。


















