在 Amazon ECS 中以编程方式传递 Systems Manager Parameter Store 密钥 - Amazon Elastic Container Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

在 Amazon ECS 中以编程方式传递 Systems Manager Parameter Store 密钥

Systems Manager Parameter Store 提供了密钥的安全存储和管理。您可以将密码、数据库字符串、EC2 实例 ID 和 AMI ID 以及许可证代码等数据存储为参数值,而不是在应用程序中将这些信息硬编码。可以将值存储为纯文本或加密数据。

建议使用这种方法来检索敏感数据,因为如果随后更新 Systems Manager Parameter Store 参数,应用程序会自动检索最新版本。

在 Systems Manager Parameter Store 中保护敏感数据之前,请查看以下注意事项。

  • 仅支持存储文本数据的密钥。不支持存储二进制数据的密钥。

  • 使用接口 VPC 端点增强安全控制。

  • 您的任务使用的 VPC 必须使用 DNS 解析。

  • 对于使用 EC2 启动类型的任务,必须使用 Amazon ECS 代理配置变量 ECS_ENABLE_AWSLOGS_EXECUTIONROLE_OVERRIDE=true 才能使用此功能。您可以在创建容器实例的过程中将其添加到 /etc/ecs/ecs.config 文件中,也可以将其添加到现有实例中,然后重新启动 ECS 代理。有关更多信息,请参阅 Amazon ECS 容器代理配置

  • 任务定义必须使用具有额外 Systems Manager Parameter Store 权限的任务角色。有关更多信息,请参阅 Amazon ECS 任务 IAM 角色

创建 参数

您可以使用 Systems Manager 控制台为您的敏感数据创建 Systems Manager Parameter Store 参数。有关更多信息,请参阅《Amazon Systems Manager 用户指南》中的创建 Systems Manager 参数(控制台)创建 Systems Manager 参数 (Amazon CLI)

更新应用程序以通过编程方式检索 Systems Manager Parameter Store 密钥

要检索存储在 Systems Manager Parameter Store 参数中存储的敏感数据,请参阅 Amazon SDK 代码示例代码库中的使用 Amazon SDK 的 Systems Manager 的代码示例