0Pricing
Cloud & IT Cert Prep · 课时

在 Secrets Manager 中存储凭证

安全地存储并轮换数据库凭证和 API 密钥,绝不将其写入代码。

在 Secrets Manager 中存储凭证 是 CoddyKit 上的免费 Cloud & IT Cert Prep 课时。 这是第 4 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Cloud & IT Cert Prep 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Cloud & IT Cert Prep 课程共包含 4 节课。

硬编码机密的问题

硬编码在代码或配置文件中的数据库密码和 API 密钥,是导致数据泄露的主要原因之一。它们可能通过代码仓库、日志和备份泄露。

AWS Secrets Manager 可以安全地存储机密,使用 IAM 控制访问,并且能够自动轮换机密,使机密不必存在于代码中。

Secrets Manager 的功能

Secrets Manager 可以存储、加密、检索和轮换数据库凭证、API 密钥等机密。

  • 机密会使用 KMS 进行静态加密。
  • 应用程序在运行时通过 API 调用获取机密,而不是将其嵌入代码。

加密与访问控制

每个机密都会使用 KMS 密钥加密,并受到 IAM 和可选的基于资源的策略保护。

您只应向需要访问某个机密的特定角色授予权限,并且每次检索都会记录在 CloudTrail 中,从而实现完整的责任追踪。

自动轮换

其中最突出的功能是自动轮换。

  • Lambda 函数会按计划更改机密并更新存储内容。
  • 内置轮换支持 RDS 和其他数据库。

如果凭证意外泄露,轮换可以缩短其造成影响的时间窗口。

轮换的工作方式

对于数据库,轮换通常使用两组凭证或交替用户策略,这样应用程序在凭证更换期间始终不会遇到无效密码。

Lambda 会创建新的机密值,对其进行测试,然后将其提升为当前值;配置正确时,整个过程无需停机。

在运行时检索机密

应用程序会在需要时调用 GetSecretValue 获取机密,并且通常会进行短暂缓存。

由于应用程序持有 IAM 角色,因此无需静态凭证即可检索机密,从而完整实现将长期密钥从代码中移除。

aws secretsmanager get-secret-value \
  --secret-id prod/db/credentials \
  --query SecretString

Secrets Manager 与 Parameter Store

SSM Parameter Store 也可以存储配置和机密(SecureString),并且标准参数免费。

  • 如果需要内置的自动轮换和跨账户共享机密,请选择 Secrets Manager。
  • 如果需要不带轮换功能的简单、免费配置,请选择 Parameter Store。

跨账户与跨区域

Secrets Manager 支持使用资源策略与其他账户共享机密,也可以将机密复制到其他区域。

这适用于多区域应用程序和灾难恢复,可以在工作负载运行的区域提供一致的机密。

审计与监控

使用 CloudTrail 监控密钥的使用情况(谁检索或轮换了密钥),并检测异常。

例如,GuardDuty 可以标记异常的访问模式,而配置规则可以检查是否启用了轮换,从而让密钥管理状况变得可衡量。

与其他服务集成

许多 AWS 服务可以原生使用密钥管理器中的密钥。

  • RDS 和 Redshift 可以在那里存储和管理其主凭证。
  • ECS、Lambda 和 CodeBuild 可以在运行时注入密钥。

这意味着工作负载可以安全地获得凭证,而无需在代码中嵌入或手动获取凭证。

最佳实践

要安全地使用密钥:

  • 切勿硬编码密钥;应从密钥管理器中获取。
  • 启用轮换,并使用专用的 KMS 密钥。
  • 针对每个密钥授予最低权限访问权,并审计检索操作。

快速检查

选择正确的服务。

总结

您已经了解了密钥管理器。

  • 它会自动存储、加密(使用 KMS)和轮换密钥。
  • 应用通过 IAM 控制的 API 调用在运行时获取密钥,绝不会将密钥硬编码。
  • 当您需要轮换或跨账户共享时,应选择它,而不是参数存储。

常见问题解答

「在 Secrets Manager 中存储凭证」课时是免费的吗?

是的 — 「在 Secrets Manager 中存储凭证」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Cloud & IT Cert Prep 课程的其余内容,请升级到 CoddyKit PRO。 Cloud & IT Cert Prep 课程共包含 4 节课。

「在 Secrets Manager 中存储凭证」这节课中我会学到什么?

安全地存储并轮换数据库凭证和 API 密钥,绝不将其写入代码。 你通过在浏览器中直接运行的动手代码来练习 Cloud & IT Cert Prep,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Cloud & IT Cert Prep 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Cloud & IT Cert Prep 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 4 节课,共 4 节。

「在 Secrets Manager 中存储凭证」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Cloud & IT Cert Prep 课中编写并运行代码吗?

能。每节 Cloud & IT Cert Prep 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. S3、EBS 和 RDS 静态数据加密
  2. 全面强制启用默认加密
  3. 使用 AWS Certificate Manager 配置 TLS 证书
  4. 在 Secrets Manager 中存储凭证
← 返回 Cloud & IT Cert Prep