Secret Management

Secret Management 是安全管理 API Key、数据库密码、证书等敏感信息的实践。API Key 不应该硬编码在代码里。

#type / concept #status / evergreen #tech / ai #tech / security

[!info] related notes

Secret Management

一句话定义

Secret Management 是安全管理 API Key、数据库密码、证书等敏感信息的实践。OpenAI API Key 硬编码在代码里推到 GitHub——这是最常见的安全事故之一。

核心原理

存储方式

方式安全性适用场景
环境变量开发环境
.env 文件本地开发
密钥管理服务生产环境
硬编码绝对禁止

最佳实践

# 错误:硬编码
openai.api_key = "sk-xxx"

# 正确:环境变量
import os
openai.api_key = os.environ["OPENAI_API_KEY"]

# 更好:密钥管理服务
from vault_client import VaultClient
vault = VaultClient()
openai.api_key = vault.get_secret("openai/api_key")

.gitignore

.env
*.key
*.pem
secrets.yaml

常见坑

  1. 硬编码 API Key: 推到 GitHub 后被扫描利用
  2. 不轮换 Key: Key 泄露后没有及时更换
  3. 日志打印 Key: 错误日志中包含 API Key

参考资料

创建于 2026/6/30 更新于 2026/7/15