带有AWS SSM参数存储的SSL证书

时间:2019-12-05 17:18:31

标签: amazon-web-services amazon-ecs ssm aws-parameter-store

我正在尝试将SSL证书传递给AWS SSM参数存储 SSL证书也受密码保护

我的问题是如何在ECS的容器内将其作为证书文件检索?我确实知道如何使用SSM参数存储来存储秘密环境变量,但是如何使用它来将秘密文件创建到容器上的某个位置?这里有一个字符串和一个文件,SSM如何管理文件?

谢谢

2 个答案:

答案 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

希望这会有所帮助