复现已有算法

This commit is contained in:
cloud
2026-07-14 15:43:18 +08:00
parent abebd2a683
commit 50b8111fd9
860 changed files with 182250 additions and 18 deletions
@@ -0,0 +1,96 @@
---
name: edge-security-secrets
description: edge_collector 密钥、权限和敏感配置处理规范。用于处理 AI Key、JWT secret、MQTT dynsec、SSH 密码、数据库密码、Token、配置同步、日志脱敏、提交检查和用户可见文档时,防止泄露、覆盖运行密钥或把敏感信息提交到仓库。
---
# edge_collector 敏感配置安全
## 敏感信息范围
- AI Provider API Key。
- `jwt_secret`
- terminal `credential_key`
- MQTT dynsec 管理员和客户端密码。
- 数据库账号密码。
- SSH 密码和私钥。
- Token、Cookie、Session。
- 内网穿透访问密钥。
- 客户设备真实敏感地址。
## 基本原则
- 不在最终回复中打印完整密钥。
- 不把密钥写死进代码。
- 不提交真实配置。
- 不用打包产物覆盖远端运行密钥。
- 日志和前端错误提示要脱敏。
- 用户文档隐藏内部模型、Provider、Key、URL 中的敏感部分。
## 配置文件
运行态配置优先保存在目标主机 `runtime` 或服务目录下:
- `runtime/edge/config/`
- `~/cloud_server/config/server_config.json`
- `~/cloud_server/config/ai_config.json`
打包和同步脚本必须保护动态配置。修改以下脚本时要特别检查:
- `package.sh`
- `deploy_cloud.sh`
- `scripts/migrate_edge.sh`
- `scripts/install_all.sh`
## 脱敏规则
展示时保留前后少量字符:
```text
sk-abc...xyz
```
URL 中如包含 key、token、password 参数,必须隐藏参数值。
日志中禁止输出:
```text
Authorization
api_key
password
secret
token
credential_key
```
## 提交前检查
提交前建议:
```bash
git status --short
git diff --cached
rg -n "api[_-]?key|password|secret|token|credential_key|Authorization" .
```
发现真实密钥时:
1. 不提交。
2. 改为配置文件或环境变量。
3. 如已暴露,提醒用户轮换密钥。
## 云平台 AI 配置
- 后端配置可保存 Provider、Base URL、模型名、思考模式等。
- 前端和报告不展示内部 Provider 名称、模型细节和 Key。
- AI 请求失败日志可以记录错误类型和状态码,但不要记录 Key。
## 远程操作
- SSH 命令中可使用既有默认连接规则,但最终回复不要打印密码。
- 采集远程配置时,输出前先脱敏。
- 复制配置文件前确认是否包含密钥。
## 用户可见文档
- 协议介绍、用户手册、AI 报告、导出报告不写内部技术细节和密钥。
- 运维文档可以写配置路径和字段含义,但示例值必须使用占位符。