大家都有共识吧,比如 mysql 的连接 user/password,肯定不能写在代码里。所以 git 仓库中就肯定不包含这些信息。 然后我要持续集成,把代码发布到测试环境、生产环境中运行。但持续集成就是基于 git 仓库的代码的,所以必定还要有额外的什么地方来保存 user/password。 我看有文章写,可以使用环境变量,在测试环境和生产环境预先设置好这些参数,让程序运行在配置好的环境中。 但这个挺隐式的,也不好管理。
我就想问问,正规的,无论大厂小厂,对这个事情都是怎么做的?有什么最佳实践?
1
sigup 2019-03-11 18:37:54 +08:00 1
|
2
hadesy 2019-03-11 18:40:20 +08:00
|
5
tiedan 2019-03-11 18:52:06 +08:00
AWS Secrets Manager
|
6
raysonx 2019-03-11 18:58:49 +08:00 via Android
Jenkins credentials, Ansible Vault
|
7
Foxkeh 2019-03-12 07:53:11 +08:00 via Android
我做 Java 的,用 spring 配置中心加密和统一管理
|
8
Foxkeh 2019-03-12 07:53:49 +08:00 via Android
不好意思我没看到这是 py 区
|
9
cs8814336 2019-03-12 09:44:46 +08:00
我之前做过一个项目是把是数据库切分了好多个,然后账号密码很多, 配置在了 consul 里面, 应该跟 1 楼差不多一样的服务发现
|
10
37Y37 2019-03-12 09:48:45 +08:00 1
账号秘密加密写到代码里,这里有介绍
https://mp.weixin.qq.com/s/dpGqieL4WCmGdQh1AEG4Gw |