提交Rails项目的credentials.yml.enc文件至公开仓库是否安全?
关于Rails credentials.yml.enc公开提交的安全性
嘿,这个问题问得很关键!我来给你把这事说透:
完全可以放心把credentials.yml.enc提交到公开仓库,它是安全的!
原因很简单:
- 这个文件是经过加密处理的,只有持有对应的
config/master.key文件(或者设置了正确的RAILS_MASTER_KEY环境变量)的人才能解密读取里面的内容。没有这个密钥,就算有人拿到这个加密文件,也只能看到一堆毫无意义的乱码。 - 真正需要严格保密的是
config/master.key,Rails默认已经把这个文件加入到.gitignore里了,目的就是防止它被提交到仓库泄露出去。 - 其实从Rails 5.2引入这个凭据系统开始,
credentials.yml.enc就是设计用来提交到版本控制的——这样团队成员可以共享统一的加密配置,只要各自有合法的master key就能正常使用。
所以别担心,大胆提交这个加密文件就好,重点是把master key藏好!
内容的提问来源于stack exchange,提问作者justapilgrim
相关产品推荐
相关产品推荐

