我创建了一个config.js文件,用于存储我的所有数据库连接信息。我在db-connect.js中要求这个。配置文件是gitignored,因此不会提交。但是,我想知道这是否安全,或者是否可以采取更多措施来保护这些信息?
Config.js目前看起来像这样:
var dbconfig = {
database: 'dbname',
username: 'dbusername',
password: 'dbpassword'
};
module.exports = dbconfig;
这里有类似的问题,但只是说不提交文件 - 但是,对我而言,这似乎仍然没有那么安全吗?
答案 0 :(得分:1)
我想补充一个建议,因为在配置文件中保留配置机密绝对是一个安全(和可管理性)问题。您可以使用https://www.npmjs.com/package/masterkey将密钥存储在Azure Key-Vault等安全位置!
答案 1 :(得分:0)
可能没有正确答案,以下是您的选择
环境变量: 我见过人们更喜欢将他们的配置保存在他们的〜/ .bashrc文件的临时环境变量中,例如:
〜/ .bashrc
export DB_USER=username
export DB_PASS=password
<强>临时强> DB_USER =用户名DB_PASS =密码节点./app.js
将您的配置文件与项目分开,并从绝对路径中请求它,例如:
var config = require('/<path>/<to>/config.js');
所以这样你就可以确保你的应用程序永远不会提供你的配置文件,因为它不是web根目录的一部分。
加密您的配置文件,并在每次应用程序重新启动并读取时对其进行解密。
在大多数应用程序中,我更喜欢1和2。