我如何避免在运行Docker Container的PHP应用程序中的配置上进行硬编码的数据库凭据

时间:2018-07-12 09:56:19

标签: php amazon-web-services docker aws-sdk configuration-files

背景

  • 我有一个运行在PHP Docker容器中的Web应用程序
  • 我需要在Jenkin(容器-测试环境),暂存(aws-beanstalk)和生产环境中本地运行(在容器中) (aws-beanstalk)
  • 每个环境都需要指向不同的数据库
  • 我一直在尝试使用AWS-KMS,AWS-STS,AWS-AMS解决它,但是无法正确解决它。

要求

  • 我不想对数据库凭据进行硬编码-安全原因
  

有专家建议吗?

2 个答案:

答案 0 :(得分:2)

AWS的最佳实践是使用AWS Secrets Manager AWS Secrets Manager

将数据库凭据存储在Secrets Manager中。互联网上有很多编码示例。

然后创建具有访问Secrets Manager权限的服务角色。启动时,从Secrets Manager获取您的凭据。

答案 1 :(得分:0)

您可以使用docker secret!它将管理容器所需的所有秘密信息