<分区>
我有一个与数据库对话的应用程序,我必须从我的 application.conf
加载数据库连接的凭据。我想要我的凭据,至少是在 application.conf
文件中加密的密码。我没能找到一些很好的文档来说明它如何与 Play 结合在一起。
我的意思是我可以使用任何加密库,加密密码,将其存储到 application.conf
并在连接到数据库时解密。我想知道的是关于它如何与 Play 框架相适应的一些建议。是否有一些内置插件或可用于加密的东西?
<分区>
我有一个与数据库对话的应用程序,我必须从我的 application.conf
加载数据库连接的凭据。我想要我的凭据,至少是在 application.conf
文件中加密的密码。我没能找到一些很好的文档来说明它如何与 Play 结合在一起。
我的意思是我可以使用任何加密库,加密密码,将其存储到 application.conf
并在连接到数据库时解密。我想知道的是关于它如何与 Play 框架相适应的一些建议。是否有一些内置插件或可用于加密的东西?
最佳答案
您不需要在自己的系统中加密任何内容。只需确保您的服务器是安全的。
由于您需要让您的应用程序访问密码,因此有权访问您系统的攻击者无论如何都能够获取您的密码。
但是永远不要将您的密码检查到 git(或 subversion 或其他)中!
相反,您应该这样做:
将此行添加到您的 application.conf
:
include "secret.conf"
在您的 conf
文件夹中创建 secret.conf
并将您的所有凭据保存在此文件中。
secret.conf
添加到您的 .gitignore
,这样它就不会进入您的 Git。secret.conf
文件。如果您使用的是 Linux 系统,控制对 secret.conf
文件的读取权限也很明智,就像@Roman 所说:
Make sure only the user running play has rights to read that file.
关于database - Play Framework 2.1密码加密,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30628237/
相关文章:
javascript - 是否可以在 Php 中加密 JWT token 并在 Javascript 中解密?
powershell - 使用公钥对密码字符串进行加密和编码
encryption - 大 O 符号 : Encryption Algorithms
scala - Play 2.3.8 的多个 SLF4J 绑定(bind)
node.js - 从 NodeJS 或 Play 安排 Spark 作业!服务器
javascript - 将本地数据与 Angular 资源一起使用
cassandra - CQL 在输入 '(' 错误处没有可行的选择