您使用什么策略来避免在版本控制中存储密码?
目前,我将开发/测试/生产密码保存在三个不同的文件中,并在部署期间使用相应的文件。所有这一切都致力于版本控制,但我对此不太满意,因为并非所有开发人员都需要知道这些密码(尤其是外包的,他们只有在项目持续时才可以访问,可能只有一个月)。
在数据库中存储密码不是一个好的选择:
- 在 Spring 上下文(Java 应用程序)初始化期间我需要大部分数据,并且我不想构建用于连接单个数据库的脚手架,然后连接到其余数据库并初始化应用程序的其余部分
- 一些密码仅与部署相关;访问不同服务器、密钥库等的密码;这些是应用程序启动后无法加载的东西,因为它根本不加载它
我正在考虑将部署配置从开发人员机器转移到专用计算机,该计算机从版本控制中检查代码并运行构建/部署脚本,但我不确定什么是最好的方法。
我还需要说,我不想要最终的安全性:我只想避免在每个开发人员的磁盘上都设置密码并使其过于简单。
所以我在问你的经验/最佳实践。你怎么做呢?