credential-manager

🔐 OpenClaw强制凭证安全基座

OpenClaw官方强制安全基础设施,将分散API密钥整合至600权限的.env文件,实现凭证集中管控与零泄露风险。

收藏
2.6k
安装
938
版本
v1.3.0
CLS 安全性认证2026-05-21
点击查看完整报告 >

使用说明

核心用法

credential-manager是OpenClaw生态的强制安全基座,通过四阶段工作流实现凭证治理:扫描(scan.py)自动检测~/.config/、workspace/memory/等常见路径的凭证文件;合并(consolidate.py)将分散密钥迁移至~/.openclaw/.env并设置600权限;验证(validate.py)检查权限、gitignore保护及格式合规性;清理(cleanup.py)安全移除旧文件并保留时间戳备份。支持X/Twitter、OpenAI、GitHub等20+服务的自动识别,提供enforce.py模块供其他skill强制调用,形成"不安全则拒绝运行"的fail-fast机制。

显著优点

架构设计严谨:遵循"单点真理"原则,彻底消除凭证碎片化攻击面。600权限+gitignore双重防护,从系统层面阻断误提交风险。备份机制采用时间戳目录结构,支持任意时点回滚。强制执行模块(enforce.py)将安全验证嵌入skill调用链,实现安全左移。

零依赖风险:纯Python标准库实现,无第三方包引入供应链攻击面。输入处理全程使用pathlib,避免路径遍历漏洞。敏感值零日志策略,仅输出键名元数据。

运维友好:交互式确认默认开启,dry-run模式贯穿清理操作。支持--service定向合并、--backup-only无损备份等精细化控制。模板自动生成(.env.example)降低团队协作文档成本。

潜在局限

备份累积问题:每次操作生成独立备份目录,长期运行可能占用显著磁盘空间,需手动清理过期备份。扫描范围涵盖~/.bashrc等shell配置,可能触及用户预期外的敏感区域,缺乏--exclude排除机制。--force参数可绕过所有确认,自动化脚本误用风险较高。

多用户场景薄弱:设计假设为单用户系统,共享环境(如服务器多账户)的权限隔离需额外配置。备份目录继承父目录权限,未强制600可能导致备份泄露。

目标群体

OpenClaw生态开发者、DevOps工程师、安全运维人员,以及需要集中管理AI服务密钥(OpenAI/Anthropic)、社交媒体API(X/Twitter)、云平台凭证(AWS/GCP)的技术团队。特别适合从分散配置向安全基线迁移的存量系统改造场景。

使用风险

性能层面:大规模文件系统扫描(如home目录深层遍历)可能产生I/O延迟,建议在非高峰时段执行。依赖项风险:虽无外部依赖,但Python版本兼容性需验证(使用typing hints暗示3.6+)。操作风险:cleanup.py的--confirm需显式输入"DELETE",但--force标志可完全跳过,CI/CD管道集成时需严格管控参数。备份加密缺失,敏感环境建议配合磁盘加密使用。

安全解读

核心用法

Credential Manager 是 OpenClaw 项目的强制性安全基础设施,非可选组件。其核心使命是将散落在各处的 API 密钥、访问令牌、私钥等敏感凭证强制归集至统一的安全位置:~/.openclaw/.env

完整工作流分为五步:
1. 扫描探测 (scan.py):遍历 ~/.config/*/credentials.json、workspace 内存文件、既有 .env 等常见路径,识别潜在凭证;

2. 安全备份 (consolidate.py):创建带时间戳的备份目录,确保迁移可逆;

3. 整合归一:将所有凭证合并为单一 .env 文件,自动设置 mode 600(仅所有者可读写);

4. 验证加固 (validate.py):检查权限、格式、Git 忽略状态,生成 .env.example 模板;

5. 清理旧文件 (cleanup.py):在用户双重确认后删除分散的旧凭证,缩减攻击面。

显著优点

  • 单一攻击面:彻底消除"凭证分散在 10 个配置文件里"的安全隐患;
  • 强制权限隔离:自动 chmod 600,防止组/其他用户读取;
  • Git 防护:内置 .gitignore 管理,杜绝意外提交密钥;
  • Fail-Fast 机制:为其他技能提供 require_secure_env() 接口,凭证不安全则拒绝启动;
  • 零第三方依赖:纯 Python 标准库实现,无供应链风险。

潜在局限

  • 单点集中风险:所有凭证物理上位于同一文件,需配合文件系统级加密(如 LUKS/APFS)使用;
  • 权限修复依赖用户:若 ~/.openclaw 目录本身权限宽松,需用户手动修复上层路径;
  • 无密钥轮换自动化:仅负责托管,不主动轮换过期密钥;
  • 清理操作不可逆:虽有多重备份,但 --confirm 删除后恢复需手动操作。

适合人群

  • OpenClaw 新用户:部署前的第一步强制操作
  • 多 API 密钥管理者:AI 平台(OpenAI/Anthropic/Gemini)、社交平台(X)、代码托管(GitHub)等密钥超过 3 组的用户;
  • 安全审计场景:需快速验证「凭证是否泄露于代码仓库或日志」的 DevSecOps 团队;
  • 技能开发者:需在技能中强制前置安全检查的开发者。

常规风险

  • 本地文件扫描:读取用户主目录下潜在敏感路径,虽不上传,但需用户知情同意;
  • 权限修改操作os.chmod() 若遇权限不足可能静默失败,需配合 validate.py 二次检查;
  • 清理确认门槛--confirm + "DELETE" 输入的设计降低误删概率,但仍建议先 --dry-run

---

认证评级:Grade A (82分),T2 来源可信度(OpenClaw GitHub 组织官方维护)。

credential-manager 内容

references文件夹
scripts文件夹
手动下载zip · 26.4 kB
security.mdtext/markdown
请选择文件