AWS Secrets Manager 是一种 AWS 服务,可使您能够更轻松地管理密钥。密钥可以是数据库凭证、密码、第三方 API 密钥,甚至是任意文本。您可以通过使用 Secrets Manager 控制台、Secrets Manager 命令行界面 (CLI) 或 Secrets Manager API 和开发工具包来集中存储这些密钥并控制对其的访问。
在过去,当您创建从数据库检索信息的自定义应用程序时,通常必须将访问数据库所需的凭证(密钥)直接嵌入在应用程序中。在需要轮换凭证时,除了创建新的凭证以外,您还必须执行很多其他操作。您必须花一些时间更新应用程序以使用新凭证。然后,您必须分发更新的应用程序。如果您有多个应用程序共享凭证,而您错过更新其中一个,则该应用程序会中断。由于存在这种风险,很多客户选择不定期轮换其凭证,这实际上带来了新的风险。
Secrets Manager 允许您将代码中的硬编码凭证(包括密码)替换为对 Secrets Manager 的 API 调用,以便以编程方式检索密钥。这有助于确保检查您的代码的人不会泄露密钥,因为其中根本不包含密钥。此外,您还可以配置 Secrets Manager 以根据指定的计划自动轮换密钥。这使您能够将长期密钥替换为短期密钥,这有助于显著减少泄露风险。
基本 Secrets Manager 场景
下图阐明了最基本的场景。它显示了如何在 Secrets Manager 中存储数据库的凭证,然后在需要访问数据库的应用程序中使用这些凭证。
-
数据库管理员在 Personnel 数据库上创建一组凭证,以供名为 MyCustomApp 的应用程序使用。管理员还使用应用程序访问 Personnel 数据库时所需的权限来配置这些凭证。
-
数据库管理员将这些凭证作为名为
MyCustomAppCreds
的密钥存储在 Secrets Manager 中。这些凭证已加密并作为受保护密钥文本 存储在密钥中。 -
当 MyCustomApp 需要访问数据库时,该应用程序向 Secrets Manager 查询名为
MyCustomAppCreds
的密钥。 -
Secrets Manager 检索密钥,解密受保护密钥文本,然后通过受保护通道(具有 TLS 的 HTTPS)将其返回给客户端应用程序。
-
客户端应用程序解析响应中的凭证、连接字符串以及所需的任何其他信息,然后使用这些信息访问数据库服务器。
符合标准
AWS Secrets Manager 通过了以下标准的审核,可用于需要获取合规性认证的解决方案中。
AWS 已扩展了其健康保险可携性与责任法 (HIPAA) 合规性计划,将 AWS Secrets Manager 包括作为符合 HIPAA 要求的服务。如果您与 AWS 签订了商业伙伴协议 (BAA),则可使用 Secrets Manager 帮助构建符合 HIPAA 要求的应用程序。AWS 提供了一份以 HIPAA 为主题的白皮书,供想要了解如何利用 AWS 处理和存储医疗信息详情的客户查阅。有关更多信息,请参阅 HIPAA 合规性。 |
|
AWS Secrets Manager 已通过支付卡行业 (PCI) 数据安全标准 (DSS) 版本 3.2 一级服务提供商的合规性认证。对于使用 AWS 产品和服务来存储、处理或传输持卡人数据的客户,在管理自己的 PCI DSS 合规性认证时,可以使用 AWS Secrets Manager。有关 PCI DSS 的更多信息,包括如何请求 AWS PCI Compliance Package 的副本,请参阅 PCI DSS 第 1 级。 |
|
AWS Secrets Manager 已成功完成 ISO/IEC 27001、ISO/IEC 27017、ISO/IEC 27018 和 ISO 9001 的合规性认证。有关更多信息,请参阅 ISO 27001、ISO 27017、ISO 27018、ISO 9001。 |
|
系统和组织控制 (SOC) 报告是独立的第三方检查报告,用于说明 Secrets Manager 如何实现关键合规性控制和目标。这些报告的目的是帮助您和您的审计员理解旨在支持运营和合规性的 AWS 控制措施。有关更多信息,请参阅 SOC 合规性。 |