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

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

背景

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

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

  • Any expert suggestion ?

    最佳答案

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

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

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

    关于php - 如何避免在运行到Docker Container的PHP应用程序中的配置上进行硬编码的数据库凭据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51302559/

    相关文章:

    sql-server - 将数据库部署到 Docker 容器 microsoft/mssql-server-linux

    oracle - Docker中的Logstash没有响应

    php - PHP 文件 : Display the content of a file in a webpage 中的 Shell 命令

    php - 在 PHP、JavaScript 中执行此 Python 3 列表操作的最短方法?

    amazon-web-services - 当我关闭 ec2 串行控制台浏览器窗口时,进程是否仍然存在?

    java - 如何在 Java AWS 无服务器框架设置下确定 Lambda 是在本地运行还是在 AWS 下运行

    javascript - 如果内容超出第一个 div,如何将内容添加到下一个 div

    php - Symfony2 自动加载器找到文件但没有找到类

    amazon-web-services - "start a build under these conditions"的 AWS CodeBuild CloudFormation YAML Webhook 事件

    php - AWS Elastic Beanstalk 更改挂载目录的权限