我刚刚从 5.1 升级到 5.2,我对这种“更好”的存储秘密的方法感到很困惑......
也许我不明白,但现在开发和生产似乎已经“合并”成一个单一的SECRET_KEY_BASE
也master.key
... 它是否正确?
如果没有,我如何使用单独的主密钥和SECRET_KEY_BASE
开发中?
如果我有开发人员帮助我,但我不想让他们知道我在生产中使用的主密钥(或秘密)怎么办?
Rails 5.2
这改变了很多。对于开发和测试环境,secret_key_base是自动生成的,因此您只需将其从secrets.yml
或任何你设置的地方。
至于生产,有一个凭据文件,您可以通过运行来生成和编辑它rails credentials:edit
。这还将创建主密钥config/master.key
仅用于加密和解密该文件。将其添加到gitignore
因此它不会与其他任何人共享,而其他人应该负责与其他开发人员共享它。
如果所有这些听起来有点乏味,而且确实如此,您可以忽略它并在 ENV 中提供 Secret_key_base。 Rails 将检查它是否存在于ENV["SECRET_KEY_BASE"]
在它抱怨之前。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)