返回顶部
c

credential-manager凭证管理器

MANDATORY security foundation for OpenClaw. Consolidate scattered API keys and credentials into a secure .env file with proper permissions. Use when setting up OpenClaw, migrating credentials, auditing security, or enforcing the .env standard. This is not optional — centralized credential management is a core requirement for secure OpenClaw deployments. Scans for credential files across common locations, backs up existing files, creates a unified .env with mode 600, validates security, and enfor

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.3.0
安全检测
已通过
4,089
下载量
免费
免费
2
收藏
概述
安装方式
版本历史

credential-manager

凭据管理器

状态:强制性安全基础

将分散的API密钥和凭据整合到安全、集中的.env文件中。

⚠️ 此步骤不可省略

集中式.env凭据管理是OpenClaw安全的核心要求。如果你的凭据分散在多个文件中,请立即停止并整合它们

规则: 所有凭据必须仅存放在~/.openclaw/.env中。不得存放在工作区、技能或脚本目录中。

参见:

基础

每个OpenClaw部署必须包含:

~/.openclaw/.env (权限模式 600)

这是你所有凭据的唯一真实来源。没有例外。

为什么?

  • - 单一位置 = 更易于保护
  • 文件权限600 = 只有你能读取
  • 被Git忽略 = 不会意外提交
  • 格式经过验证 = 可捕获错误
  • 审计追踪 = 知道哪些内容发生了变化

分散的凭据 = 分散的攻击面。本技能解决这一问题。

本技能的功能

  1. 1. 扫描常见位置的凭据
  2. 备份现有凭据文件(带时间戳)
  3. 整合到~/.openclaw/.env
  4. 保护设置正确的权限(600)
  5. 验证安全性和格式
  6. 强制执行最佳实践
  7. 清理迁移后的旧文件

检测参数

本技能通过扫描以下内容自动检测凭据:

文件模式:

  • - 配置目录中的credentials.json文件
  • .env文件
  • 文件名包含-creds或credentials的内存文件

敏感键模式:

  • - API密钥、访问令牌、Bearer令牌
  • 密钥、密码、口令短语
  • OAuth消费者密钥
  • 私钥、签名密钥、钱包密钥
  • 助记词和种子短语

安全检查:

  • - 文件权限(必须为600)
  • Git忽略保护
  • 格式验证

快速开始

完整迁移(推荐)

bash

扫描凭据


./scripts/scan.py

审查并整合

./scripts/consolidate.py

验证安全性

./scripts/validate.py

单独操作

bash

仅扫描


./scripts/scan.py

整合特定服务

./scripts/consolidate.py --service x

仅备份,不删除

./scripts/consolidate.py --backup-only

清理旧文件

./scripts/cleanup.py --confirm

常见凭据位置

本技能扫描以下位置:

~/.config/*/credentials.json
~/.openclaw/workspace/memory/*-creds.json
~/.openclaw/workspace/memory/credentials.json
~/.env (如果存在,则合并)

安全特性

文件权限: 将.env设置为权限模式600(仅所有者可读写)
Git保护: 创建/更新.gitignore
备份: 更改前创建带时间戳的备份
验证: 检查格式、权限和重复项
模板: 创建.env.example(可安全共享)

输出结构

迁移后:

~/.openclaw/
├── .env # 所有凭据(安全)
├── .env.example # 模板(安全)
├── .gitignore # 保护.env
├── CREDENTIALS.md # 文档
└── backups/
└── credentials-old-YYYYMMDD/ # 旧文件备份

支持的服务

自动检测的常见服务:

  • - X(Twitter): OAuth 1.0a凭据
  • Molten: 代理意图匹配
  • Moltbook: 代理社交网络
  • Botchan/4claw: 网络协议
  • OpenAI、Anthropic、Google: AI提供商
  • GitHub、GitLab: 代码托管
  • 通用: APIKEY、TOKEN、_SECRET模式

完整列表请参见references/supported-services.md

安全最佳实践

详细安全指南请参见references/security.md

快速检查清单:

  • - ✅ .env权限为600
  • ✅ .env已被Git忽略
  • ✅ 代码或日志中不包含凭据
  • ✅ 定期轮换密钥
  • ✅ 每个环境使用不同的密钥

脚本

所有脚本均支持--help查看详细用法。

scan.py

bash

扫描并报告

./scripts/scan.py

包含自定义路径

./scripts/scan.py --paths ~/.myapp/config ~/.local/share/creds

JSON输出

./scripts/scan.py --format json

consolidate.py

bash

交互模式(更改前提示)

./scripts/consolidate.py

自动确认(无提示)

./scripts/consolidate.py --yes

仅备份

./scripts/consolidate.py --backup-only

特定服务

./scripts/consolidate.py --service molten

validate.py

bash

完整验证

./scripts/validate.py

仅检查权限

./scripts/validate.py --check permissions

自动修复问题

./scripts/validate.py --fix

cleanup.py

bash

预演(显示将要删除的内容)

./scripts/cleanup.py

实际删除旧文件

./scripts/cleanup.py --confirm

保留备份

./scripts/cleanup.py --confirm --keep-backups

迁移工作流

步骤1:发现
bash
./scripts/scan.py

审查输出,了解将要迁移的内容。

步骤2:备份与整合
bash
./scripts/consolidate.py

创建备份,构建.env,设置权限。

步骤3:验证
bash
./scripts/validate.py

确保一切安全且正确。

步骤4:测试
使用新的.env文件测试你的应用程序/技能。

步骤5:清理
bash
./scripts/cleanup.py --confirm

删除旧的凭据文件(备份保留)。

对于技能开发者:强制执行此标准

其他OpenClaw技能在使用凭据前必须验证其安全性:

Python技能

python #!/usr/bin/env python3 import sys from pathlib import Path

将凭据管理器脚本添加到路径

sys.path.insert(0, str(Path.home() / .openclaw/skills/credential-manager/scripts))

强制执行安全的.env(不符合则退出)

from enforce import requiresecureenv, get_credential

requiresecureenv()

现在可以安全加载凭据

apikey = getcredential(SERVICEAPIKEY)

Bash技能

bash #!/usr/bin/env bash set -euo pipefail

验证.env存在且安全

if ! python3 ~/.openclaw/skills/credential-manager/scripts/enforce.py; then exit 1 fi

现在可以安全加载

source ~/.openclaw/.env

这创建了一个快速失败系统: 如果凭据未正确保护,技能将拒绝运行。用户被迫修复问题。

加载凭据

迁移后,从.env加载:

Python

python import os from pathlib import Path

加载.env

env_file = Path.home() / .openclaw / .env with open(env_file) as f: for line in f: if = in line and not line.strip().startswith(#): key, val = line.strip().split(=, 1) os.environ[key] = val

使用凭据

apikey = os.getenv(SERVICEAPI_KEY)

Bash

bash

加载.env

set -a source ~/.openclaw/.env set +a

使用凭据

echo $SERVICEAPIKEY

使用现有加载器

如果你使用OpenClaw脚本进行了迁移: python from loadcredentials import getcredentials creds = get_credentials(x)

添加新凭据

编辑~/.openclaw/.env:
bash

添加新服务


NEWSERVICEAPIKEY=yourkey_here
NEWSERVICESECRET=yoursecrethere

同时更新模板:
bash

编辑.env.example


NEWSERVICEAPIKEY=yourkey_here
NEWSERVICESECRET=yoursecrethere

回滚

如果出现问题:

bash

查找你的备份


ls -la ~/.

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 credential-manager-1776359312 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 credential-manager-1776359312 技能

通过命令行安装

skillhub install credential-manager-1776359312

下载

⬇ 下载 credential-manager v1.3.0(免费)

文件大小: 26.88 KB | 发布时间: 2026-4-17 16:12

v1.3.0 最新 2026-4-17 16:12
Consolidation Rule enforcement - all credentials MUST be in ~/.openclaw/.env ONLY. Enhanced detection for workspace/skills/scripts .env files. New CONSOLIDATION-RULE.md documentation.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部