· 全部指南
为什么需要生产密钥处理规范
开发者每天都在浏览器工具、Slack 和 LLM 对话里粘贴 JWT refresh token、Stripe live key、数据库 URL 和 .env 导出。「本地处理」表示 Towalles 不会为计算而上传输入——但剪贴板同步、屏幕共享、工单附件与 git 历史同样危险。生产密钥规范把临时英雄式调试变成可审计的分类、轮换与沟通流程。
本指南配合 developer-browser-security-checklist 与 local-first-privacy,聚焦凭证生命周期:粘贴前、泄露后、事故中——算法选型见 password-hashing-guide,API 调试见 api-debugging-playbook。
粘贴前:给密钥分级
一级 — 公开或合成: RFC 示例、文档中的假 sk_test_、demo JWT。可用于教程与 regex-tester 验证。
二级 — 内部 staging: 有额度限制的 staging key、开发 IdP JWT、含假客户 ID 的 .env.staging。可在受管设备使用 Towalles;避免公开屏幕共享。
三级 — 生产凭证: 正式支付 key、生产 OAuth refresh、Webhook 签名密钥。默认规则:勿粘贴进浏览器工具。用加固主机 CLI、Vault 只读视图或合成复现。
四级 — 受监管数据: 完整客户 PII、健康记录、未公开财务。勿用消费级浏览器工具——遵循法务/DLP。
任何日志块在 json-formatter 或 token-counter 前先跑 pii-scanner。若 jwt-decoder 显示生产 aud,即使 exp 很短也按三级处理。
粘贴前最低清单
- 命名密钥类型(API key、JWT、HMAC secret、连接串)。
- 确认环境(staging / production)——终端提示色区分。
- 尽量脱敏或换 fixture。
- 选最小工具(解码 JWT vs 格式化整份
.env)。 - 使用无云剪贴板扩展的工作浏览器配置。
- 设提醒:任务结束清空输入与剪贴板。
Webhook 调试时 hmac-generator 需要 raw body 与 secret——签名与验签之间勿用 JSON 格式化改变空白。Basic Auth 用 base64-encoder-decoder 仅验证编码;仍须 HTTPS。
怀疑泄露之后
遏制: 停止共享标签;清空工具输入;若在 Zoom 中粘贴则注销相关会话。
定范围: 哪类密钥?哪些系统可能已接触(IdP 日志、网关、LLM 留存)?
轮换: 在发行方创建新密钥;更新 Secrets Manager;用 env-diff 审查的 PR 部署——勿手改生产。
审计: 从粘贴到轮换的访问日志;三级密钥默认视为已泄露直至证伪。
文档: 时间线中勿再次粘贴密钥;复盘模板链到 production-secrets-handling-guide。
培训: 五分钟演练——三个样本分为一级到四级。
轮换成本低于争论「只是本地而已」。
工具对照
| 密钥类型 | Towalles 工具 | 禁止 |
|---|---|---|
| JWT | jwt-decoder | 贴进公开 gist |
| Webhook HMAC | hmac-generator | 验签前改 JSON 空白 |
| API key 格式 | api-key-format-checker | 把格式检查当授权 |
| 密码策略演示 | password-strength | 收集员工真实密码 |
| bcrypt 验证 | bcrypt | 验证生产用户密码 |
| 环境差异 | env-diff | 把生产值截图发 Slack |
hash-generator 仅用于文档示例对照——非 live 签名密钥。
LLM 与第三方 SaaS
即使厂商承诺不用于训练,合同仍可能允许短期留存。把 LLM 对话当半公开渠道:先 pii-scanner,再 token-counter 最小化摘录。structured-output-validator 的 schema 与示例中勿嵌入密钥。
需上传的「JSON 美化」SaaS 会把 payload 发到云端——Towalles 本地计算避免这一点,但你仍控制粘贴内容。
团队政策模板
- 浏览器工具白名单(Towalles 仅允许二级)。
- 入职必读 developer-browser-security-checklist。
- 事故频道:谁负责轮换(平台 vs 应用)。
- 长期 HMAC/API key 季度轮换。
- Git hook 拦截
.env与*secret*。
政策写进 Confluence,而非只存在工程师脑子里。
常见误区
「本地 = 可贴生产 key」 — 本地指不上传 Towalles;内存、扩展、截图仍在。
「删掉 Slack 就行」 — 备份会保留;仍应轮换。
「Staging key 无所谓」 — Staging 常有类生产数据且监控更弱。
「Base64/JWT 能保护密钥」 — 见 base64-encoder-decoder 与 jwt-security-basics。
附录:轮换 runbook 摘要
1. 在控制台创建新密钥。
2. 双写期:Webhook 同时接受新旧签名,或 API 双 key。
3. 更新 Secrets Manager;staging → prod PR 经 env-diff 审查。
4. 流量零旧 key 使用后吊销旧密钥。
5. 若因泄露触发轮换,写复盘。
附录:推荐阅读顺序
- local-first-privacy
- developer-browser-security-checklist
- production-secrets-handling-guide(本文)
- jwt-security-basics
- api-debugging-playbook
Towalles 以深度教程连接这些 playbook 与具体工具,而非空壳合规勾选。