1

我对将由我的应用程序或服务的数据库密码,服务器名称和其他服务设置组成的配置置之不理。存储配置文件

现在,我把配置文件放在与我的代码(Git)相同的地方。这是有风险的,因为如果有人得到它,他/她可以连接到我的数据库或服务。我也使用Jenkins这样的CI/CD开发工具。当我运行我的管道或自动部署时,我应该在哪里放置我的配置,以便我的配置文件已准备就绪?

  1. 混帐,同一个地方我的代码
  2. 詹金斯,创建文件并把它每次CI内部运行
  3. 隐藏驱动器,当部署运行
  4. 任何其他拉詹金斯命令配置文件想法?

谢谢

回答

1

您是否尝试过任何凭据具体詹金斯插件?如果您的Jenkins工作中使用了证书,这些证书应该足够。

证书插件: https://wiki.jenkins-ci.org/display/JENKINS/Credentials+Plugin

平原凭据:https://wiki.jenkins-ci.org/display/JENKINS/Plain+Credentials+Plugin

您可能还需要寻找到你的服务器配置管理工具处理私有凭证的方式。例如,Chef允许加密的数据包存储凭证,以供连接到Chef服务器的任何节点使用。

1

一个策略是将你的配置文件存储在一个单独的git仓库(限制访问)中,并通过git子模块将仓库导入你的应用仓库。将所有内容存储在git中仍然不错,因为您可以从git托管提供商获得相同的备份优势,并且还可以版本控制您的更改。

如果隐私真的是你最关心的问题,你总是可以在git中加密配置文件,并将密钥存储在Jenkins中解密。