Amazon web services 在ECS服务中将AWS凭据存储在何处
我有一个ECS服务,需要AWS凭据。我使用ECR存储docker映像和jenkins映像,这些映像仅在VPN连接构建映像时可见 我认为有两种可能向该服务提供AWS凭据Amazon web services 在ECS服务中将AWS凭据存储在何处,amazon-web-services,amazon-ecs,Amazon Web Services,Amazon Ecs,我有一个ECS服务,需要AWS凭据。我使用ECR存储docker映像和jenkins映像,这些映像仅在VPN连接构建映像时可见 我认为有两种可能向该服务提供AWS凭据 将它们存储为Jenkins secret,并在构建期间插入docker映像 在创建ECS任务定义时,使其成为环境的一部分 什么更安全?还有其他的可能性吗 首先,在AWS内部工作时不应使用AWS凭据,应分配或服务,而不是将凭据传递给docker build或task definition 使用Amazon ECS任务的IAM角色,您
什么更安全?还有其他的可能性吗 首先,在AWS内部工作时不应使用AWS凭据,应分配或服务,而不是将凭据传递给docker build或task definition 使用Amazon ECS任务的IAM角色,您可以指定 可以由任务中的容器使用。申请书必须签署 AWS API请求具有AWS凭据,此功能提供 管理应用程序要使用的凭据的策略, 类似于AmazonEC2实例概要文件提供的方式 EC2实例的凭据 因此,有时底层应用程序的设计方式不能使用角色,因此在本文中,我建议将ENV存储在任务定义中,但从何处获取ENV的值 任务定义支持两种处理ENV的方法
- 纯文本作为直接值
- 使用“valueFrom”属性定义ECS任务
但要使用这些,您必须提供任务定义权限才能访问systems manager参数存储。是否有某些原因导致您不能使用IAM角色而不是硬编码凭据?
{
"containerDefinitions": [{
"secrets": [{
"name": "environment_variable_name",
"valueFrom": "arn:aws:ssm:region:aws_account_id:parameter/parameter_name"
}]
}]
}