课程 297 / 365
81%
部署与可靠性·理解·10 分钟
正文已完成

配置可以公开,密钥必须受控

按泄露影响、轮换需求和使用主体区分普通配置与敏感凭据。

L297

环境变量不是安全等级,它只是传递方式。端口和功能开关可以公开审查,API 密钥、数据库密码和签名私钥一旦泄露会授予能力,必须限制读取、记录访问并支持轮换。

这一课的结果

能判断一个值属于普通配置、敏感配置还是密钥,并选择合适处理方式。

核心概念

先把关键判断说清楚

01

秘密以泄露后果定义

能用于认证、签名、解密或访问敏感数据的值,应按秘密管理,而不是看变量名。

02

最小权限缩小影响面

不同服务、环境和用途使用独立凭据,避免一个测试密钥同时拥有生产写权限。

03

日志与报错也会泄露

即使源码不含密钥,打印完整环境、请求头或连接串仍可能把秘密送进日志系统。

案例拆解

把生产连接串移出仓库

团队把含用户名和密码的数据库连接串写进配置文件并提交,后来又在故障截图中展示。

  1. 01

    立即识别凭据已暴露,撤销旧密码而不是只删除 Git 文件。

  2. 02

    由密钥存储向生产服务注入新凭据,并限制为所需数据库权限。

  3. 03

    日志只输出主机和数据库名的非敏感摘要,扫描历史提交与构建产物。

案例结果

暴露凭据失效,新凭据不再进入源码和日志,权限范围也被缩小。

提交前练习

现在轮到你

审查一组应用配置,并按敏感级别与泄露动作分类。

内容会自动保存在当前设备
查看参考答案与评分标准

参考答案

普通配置是端口、日志级别;秘密是数据库密码、对象存储写入令牌;权限是网站只需指定桶写入;泄露是先禁用令牌,再发新令牌、更新服务、核对访问日志并清除暴露载体。

评分标准

  • 分类基于泄露后果
  • 密钥权限按主体拆分
  • 泄露动作包含撤销而非只删除文件

本课收口 · 学习证据

完成,不等于随手打一个勾。

确认阅读、保存练习,再用 30 秒检查和一句话总结留下真实学习证据。

0 / 3
02完成本课练习0 / 4 项必填内容已填写
03通过理解检查约 30 秒
一个生产 API 密钥被提交后,从最新代码删除是否足够?
你现在更接近哪一种状态?
完成上面三项后,才能把本课记为已验证。

资料来源

继续核对与延伸阅读

本课内容最近更新于