Amazon web services 为什么要单独存储ECS任务定义机密

Amazon web services 为什么要单独存储ECS任务定义机密,amazon-web-services,security,amazon-ecs,aws-parameter-store,Amazon Web Services,Security,Amazon Ecs,Aws Parameter Store,我正在为ECS任务设置任务定义。任务中容器上的一个环境变量是一组凭据,当前作为SecureString存储在参数存储中。我想知道为什么不直接将其作为env变量存储在任务的容器中 将其存储在Parameter Store中似乎带来的唯一增加的安全性是,AWS用户和资源可以被分割为不能直接访问它,但还有其他原因吗?您可以使用Parameter Store来避免将凭据放在其他人可以读取的版本控制(如GIT)中。 但不确定您计划如何将变量存储在任务的容器中。也许您可以澄清。参数存储和/或机密管理器将作为

我正在为ECS任务设置任务定义。任务中容器上的一个环境变量是一组凭据,当前作为SecureString存储在参数存储中。我想知道为什么不直接将其作为env变量存储在任务的容器中


将其存储在Parameter Store中似乎带来的唯一增加的安全性是,AWS用户和资源可以被分割为不能直接访问它,但还有其他原因吗?

您可以使用Parameter Store来避免将凭据放在其他人可以读取的版本控制(如GIT)中。
但不确定您计划如何将变量存储在任务的容器中。也许您可以澄清。

参数存储和/或机密管理器将作为所有需要访问您的机密值的服务的唯一真相来源。它为您提供了一个在这些秘密值更改时需要更新的位置。它使用KMS加密安全地存储这些值,并通过IAM提供对您个人秘密值的访问控制


如果您将您的秘密直接嵌入到ECS任务定义中,上述任何一项都不正确。

是的,这绝对是一个好观点!哦,我不会将这些定义存储在源代码管理中。在ECS中创建任务定义时,将容器附加到任务定义上。任务定义可以指定要为每个容器设置的环境变量列表。这些变量可以直接设置,也可以是安全存储(例如参数存储)中某个密钥的引用