我正在尝试将SSL证书传递给AWS SSM参数存储 SSL证书也受密码保护
我的问题是如何在ECS的容器内将其作为证书文件检索?我确实知道如何使用SSM参数存储来存储秘密环境变量,但是如何使用它来将秘密文件创建到容器上的某个位置?这里有一个字符串和一个文件,SSM如何管理文件?
谢谢
答案 0 :(得分:1)
我不知道从SSM创建文件的方法,但是我希望Docker容器中的ENTRYPOINT可以处理这种逻辑
任务定义代码段
{
"containerDefinitions": [{
"secrets": [{
"name": "MY_SSM_CERT_FILE",
"valueFrom": "arn:aws:secretsmanager:region:aws_account_id:secret:MY_SSM_CERT_FILE"
},
{
"name": "MY_SSM_CERT_FILE_LOCATION",
"valueFrom": "arn:aws:secretsmanager:region:aws_account_id:secret:MY_SSM_CERT_FILE_LOCATION"
}]
}]
}
entrypoint.sh
echo "$MY_SSM_CERT_FILE" >> $MY_SSM_CERT_FILE_LOCATION
// Run rest of the logic for application
Dockerfile
FROM ubuntu:16.04
COPY ./entrypoint.sh .entrypoint.sh
ENTRYPOINT ["./entrypoint.sh"]
答案 1 :(得分:0)
您为什么不使用可以补充AWS SSM的AWS Secret Manager?我认为机密管理器支持机密文件:
$ aws secretsmanager create-secret --name TestSecret --secret-string file://secret.txt # The Secrets Manager command takes the --secret-string parameter from the contents of the file
请参阅此链接以获取更多信息: https://docs.aws.amazon.com/secretsmanager/latest/userguide/best-practices.html
下面的链接显示了如何将Secrets Manager与SSM集成 https://docs.aws.amazon.com/systems-manager/latest/userguide/integration-ps-secretsmanager.html
希望这会有所帮助