AWS Secrets Manager 是一种密钥管理服务,可帮助保护对应用程序、服务和 IT 资源的访问。通过该项服务,您可以在数据库凭证、API 密钥和其他密钥的整个生命周期内轻松地对其进行轮换、管理和检索。使用 Secrets Manager,您可以保护和管理用于访问 AWS 云、第三方服务和本地的资源的密钥。
AWS Secrets Manager 保护对应用程序、服务和 IT 资源的访问,而无需运营您自己的基础设施的前期投资和持续维护成本。
Secrets Manager 适用于正在寻找一种安全且可扩展的方法来存储和管理密钥的 IT 管理员。负责满足法规和合规性要求的安全管理员可以使用 Secrets Manager 监控密钥并轮换密钥,而不会有影响应用程序的风险。想要替换其应用程序中的硬编码密钥的开发人员可以编程方式从 Secrets Manager 中检索密钥。
AWS Secrets Manager 让您可以集中存储、检索、轮换、审核、监控密钥并控制对密钥的访问。
您可以静态加密密钥以减少未授权用户查看敏感信息的可能性。要检索密钥,您只需使用 Secrets Manager API 将应用程序中的纯文本格式的密钥替换为代码,以编程方式调出这些密钥。您使用 AWS Identity and Access Management (IAM) 策略控制可以访问此类密钥的用户和应用程序。您可以按计划或按需为托管在 AWS 上的受支持数据库类型轮换密码,而不会有影响应用程序的风险。您可以通过修改示例 Lambda 函数扩展此功能以轮换其他密钥,如托管在 Amazon EC2 上的 Oracle 数据库密码或 OAuth 刷新令牌。您还可以审核和监控密钥,因为 Secrets Manager 可与 AWS CloudTrail、Amazon CloudWatch 和 Amazon Simple Notification Service (Amazon SNS) 集成。
您可以管理数据库凭证、本地资源凭证、SaaS 应用程序凭证、第三方 API 密钥和 Secure Shell (SSH) 密钥等密钥。Secrets Manager 让您可以存储 JSON 文档,此文档允许您管理大小不超过 64 KB 的任何文本简介。
您可以本机轮换 Amazon Relational Database Service (RDS)、Amazon DocumentDB 和 Amazon Redshift 的凭证。您可以通过修改 Secrets Manager 文档中提供的示例 AWS Lambda 函数扩展 Secrets Manager 以轮换其他密钥,如托管在 EC2 上的 Oracle 数据库凭证或 OAuth 刷新令牌。
首先,您必须编写 AWS Identity and Access Management (IAM) 策略,允许您的应用程序访问特定密钥。然后,在应用程序源代码中,您可以使用 Secrets Manager API 将纯文本格式的密钥替换为代码,以便以编程方式检索这些密钥。有关完整的详细信息和示例,请参阅 AWS Secrets Manager 用户指南。
开始使用 AWS Secrets Manager:
请访问 AWS 区域表,了解目前提供 AWS 服务的区域。
通过 AWS Secrets Manager,您可以按计划配置数据库凭证轮换。这样您即可按照安全性最佳实践操作并实现数据库凭证的安全轮换。当 Secrets Manager 启动轮换时,它使用您提供的超级数据库凭证创建具有相同权限但使用不同密码的克隆用户。然后,Secrets Manager 向检索数据库凭证的数据库和应用程序传递克隆用户信息。要了解轮换的更多信息,请参阅 AWS Secrets Manager 轮换指南。
不会,建立连接时会进行身份验证。在 AWS Secrets Manager 轮换数据库凭证时,打开的数据库连接不会重新进行身份验证。
您可以在 AWS Secrets Manager 轮换密钥时配置 Amazon CloudWatch Events 以接收通知。您还可以使用 Secrets Manager 控制台或 API 查看 Secrets Manager 最后一次轮换密钥的时间。
AWS Secrets Manager 使用您拥有并存储在 AWS Key Management Service (KMS) 中的加密密钥进行静态加密。您可以使用 AWS Identity and Access Management (IAM) 策略来控制对密钥的访问。检索密钥时,Secrets Manager 将解密密钥并将其通过 TLS 安全传输到本地环境。默认情况下,Secrets Manager 不会将密钥写入或缓存到永久存储。
您可以使用 AWS Identity and Access Management (IAM) 策略控制用户和应用程序的访问权限,以检索或管理特定密钥。例如,您可以创建一个只允许开发人员检索用于开发环境的密钥的策略。要了解更多信息,请访问 AWS Secrets Manager 的身份验证和访问控制。
AWS Secrets Manager 使用信封加密 (AES-256 加密算法) 在 AWS Key Management Service (KMS) 中加密密钥。
首次使用 Secrets Manager 时,您可以指定 AWS KMS 密钥以加密密钥。如果您未提供 KMS 密钥,Secrets Manager 会自动为您的账户创建 AWS KMS 默认密钥。存储密钥时,Secrets Manager 从 KMS 请求纯文本和加密数据密钥。Secrets Manager 使用纯文本数据密钥加密内存中的密钥。AWS Secrets Manager 存储和维护加密密钥和加密数据密钥。检索密钥时,Secrets Manager(使用 AWS KMS 默认密钥)解密数据密钥并使用纯文本数据密钥解密密钥。数据密钥加密存储,且绝不以纯文本形式写入磁盘。此外,Secrets Manager 不会将纯文本密钥写入或缓存到永久存储。
使用 Secrets Manager 时,您仅需按用量付费,而且没有最低费用。开始使用服务时,没有安装费,用户无需对服务的使用签订任何长期使用期限合约。每个月底将自动向您的信用卡收取当月使用费。将根据存储的密钥数量和每月向服务提出的 API 请求向您收费。
有关当前定价信息,请访问 AWS Secrets Manager 定价。
可以,您可以通过 AWS Secrets Manager 30 天免费试用版试用 Secrets Manager,无需额外费用。免费试用版允许您在 30 天内轮换、管理和检索密钥。免费试用期从您存储第一个密钥时开始计算。