一般性问题

什么是 Amazon Secrets Manager?

Amazon Secrets Manager 是一种密钥管理服务,可帮助保护对应用程序、服务和 IT 资源的访问。通过此服务,您可以轻松地跨整个生命周期轮换、管理和检索数据库凭证、API 密钥和其他密钥。使用 Secrets Manager,您可以保护和管理用于访问 亚马逊云科技云、第三方服务和本地资源的密钥。

为什么要使用 Amazon Secrets Manager?

Amazon Secrets Manager 可保护您对应用程序、服务和 IT 资源的访问,无需进行前期投资,也不存在运营基础设施的持续维护成本。

Secrets Manager 适用于寻求安全且可扩展的方法来存储和管理密钥的 IT 管理员。负责满足法规和合规性要求的安全管理员可以使用 Secrets Manager 来监控和轮换密钥,而不会影响应用程序。希望在其应用程序中替换硬编码密钥的开发人员可以通过编程方式从 Secrets Manager 检索密钥。

Amazon Secrets Manager 有什么用途?

您可以使用 Amazon Secrets Manager 集中存储、检索、控制对密钥的访问、轮换、审核和监控。

您可以加密静态密钥,以降低未经授权的用户查看敏感信息的可能性。要检索密钥,您只需将应用程序中的纯文本密钥替换为代码,以便使用 Secrets Manager API 以编程方式拉取这些密钥。您可以使用 Amazon Identity and Access Management (IAM) 策略来控制哪些用户和应用程序可以访问这些密钥。您可以按计划或按需为 亚马逊云科技上托管的受支持的数据库类型轮换密码,而不会影响应用程序。您可以通过修改 Lambda 示例函数来扩展此功能以轮换其他密钥,例如 Amazon EC2 上托管的 Oracle 数据库的密码或 OAuth 刷新令牌。您还可以审核和监控密钥,因为 Secrets Manager 可与 Amazon CloudTrail、Amazon CloudWatch 和 Amazon Simple Notification Service (Amazon SNS) 集成。

我可以在 Amazon Secrets Manager 中管理哪些密钥?

您可以管理各种密钥,如数据库凭证、本地资源凭证、SaaS 应用程序凭证、第三方 API 密钥和安全外壳协议 (SSH) 密钥等。Secrets Manager 允许您存储 JSON 文档,后者允许您管理任何 10KB 或更小的文本推介。

我可以使用 Amazon Secrets Manager 轮换哪些密钥?

您可以在本地轮换 Amazon Relational Database Service (RDS)、Amazon DocumentDB 和 Amazon Redshift 的凭证。您可以通过修改 Secrets Manager 文档中提供的 Amazon Lambda 示例函数来扩展 Secrets Manager 以轮换其他密钥,例如 EC2 上托管的 Oracle 数据库的凭证或 OAuth 刷新令牌。

我的应用程序如何使用这些密钥?

首先,您必须编写允许应用程序访问特定密钥的 Amazon Identity and Access Management (IAM) 策略。然后,在应用程序源代码中,可以用代码替换纯文本密钥,以便使用 Secrets Manager API 以编程方式检索这些密钥。有关完整的详细信息和示例,请参阅 Amazon Secrets Manager 用户指南。

如何开始使用 Amazon Secrets Manager?

要开始使用 Amazon Secrets Manager,请执行以下操作:

识别您的密钥并找到它们在应用程序中的使用位置。

使用您的 亚马逊云科技凭证登录 亚马逊云科技管理控制台,并导航至 Secrets Manager 控制台。

使用 Secrets Manager 控制台上传您识别的密钥。或者,您可以使用 Amazon 开发工具包或 Amazon CLI 上传密钥(每个密钥上传一次)。您还可以编写脚本以上传多个密钥。

如果您的密钥尚未使用,请按照控制台中的说明配置自动轮换。如果应用程序正在使用您的密钥,请在配置自动轮换之前完成步骤 (5) 和 (6)。

如果其他用户或应用程序需要检索该密钥,请编写 IAM 策略以授予该密钥的权限。

更新您的应用程序,从 Secrets Manager 检索密钥。

Amazon Secrets Manager 在哪些区域可用?

请访问 亚马逊云科技区域表以查看  亚马逊云科技服务的当前区域可用性

轮换

Amazon Secrets Manager 如何在不影响应用程序的情况下实施数据库凭证轮换?

Amazon Secrets Manager 使您能够按计划配置数据库凭证轮换。这使您能够遵循安全最佳实践并安全地轮换数据库凭证。当 Secrets Manager 启动轮换时,它使用您提供的超级数据库凭证创建具有相同权限但不同密码的克隆用户。然后,Secrets Manager 将克隆用户信息传递给检索数据库凭证的数据库和应用程序。如需详细了解轮换,请参阅 Amazon Secrets Manager 轮换指南。

轮换数据库凭证会影响当前连接吗?

不会。在建立连接时会进行身份验证。当 Amazon Secrets Manager 轮换数据库凭证时,当前数据库连接不会重新验证。

如何知道 Amazon Secrets Manager 何时轮换数据库凭证?

您可以配置 Amazon CloudWatch Events,以便在 Amazon Secrets Manager 轮换密钥时接收通知。您还可以查看 Secrets Manager 上次使用 Secrets Manager 控制台或 API 轮换密钥的时间。

安全性

Amazon Secrets Manager 如何保证我的密钥的安全?
Amazon Secrets Manager 使用您拥有并存储在 Amazon Key Management Service (KMS) 中的加密密钥进行静态加密。您可以使用 Amazon Identity and Access Management (IAM) 策略控制对密钥的访问。当您检索密钥时,Secrets Manager 会解密密钥,并通过 TLS 将其安全地传输到您的本地环境。默认情况下,Secrets Manager 不会将密钥写入或缓存到持久性存储中。

谁可以使用和管理 Amazon Secrets Manager 中的密钥?

您可以使用 Amazon Identity and Access Management (IAM) 策略来控制用户和应用程序检索或管理特定密钥的访问权限。例如,您可以创建一个策略,以仅允许开发人员检索用于开发环境的密钥。详情请访问“Amazon Secrets Manager 的身份验证和访问控制”。

Amazon Secrets Manager 如何加密密钥?

Amazon Secrets Manager 使用信封加密(AES-256 加密算法)来加密 Amazon Key Management Service (KMS) 中的密钥。

首次使用 Secrets Manager 时,可以指定客户主密钥 (CMK) 来加密密钥。如果您不提供 CMK,Secrets Manager 会自动为您的账户创建 Amazon KMS 默认密钥。当存储密钥时,Secrets Manager 会从 KMS 请求纯文本密钥和加密的数据密钥。Secrets Manager 使用纯文本数据密钥加密内存中的密钥。Amazon Secrets Manager 存储和维护加密的密钥和加密的数据密钥。检索密钥时,Secrets Manager 将解密数据密钥(使用 Amazon KMS 默认密钥),并使用纯文本数据密钥解密密钥。数据密钥已加密并存储,并且不会以纯文本形式写入磁盘。此外,Secrets Manager 不会将纯文本密钥写入或缓存到持久性存储中。

计费

使用 Amazon Secrets Manager 如何收费和计费?

使用 Secrets Manager,您只需按实际用量付费,而且没有最低费用。开始使用服务时,没有安装费,也无需签订长期使用合约。在月底,系统会自动从您的信用卡中扣除该月的使用费。您需要为您存储的密钥数量以及每月向服务提出的 API 请求付费。

有关当前定价信息,请访问 Amazon Secrets Manager 定价

有免费试用吗?

有的,您可以通过 Amazon Secrets Manager 30 天免费试用以免费试用 Secrets Manager。通过免费试用,您可在 30 天内轮换、管理和检索密钥。当您存储第一个密钥时,即表示免费试用开始。