有没有办法将我的MySQL密码安全地存储在Node.JS中?

最后发布: 2018-09-04 23:03:04


问题

我正在将Node.js用于Web应用程序。 该应用程序直接与MySQL通讯,因此,我需要指定用于连接的密码,但是,这要求该密码在源代码中以纯文本形式可见。

有隐藏/散列密码的方法吗?

node.js security
回答

不,您不能%100隐藏数据库密码,也不需要。 包含db密码的配置文件将位于服务器上,并且在不泄漏服务器的情况下没有人可以访问它。


回答

请访问http://12factor.net以获得许多最佳实践。

通常,永远不要在源代码中存储机密信息。 根据您的要求,可以使用许多选项来存储机密,但是最简单的方法是将它们配置为运行流程的用户(开发中的用户,生产中的某些服务帐户)的环境变量。

虽然这并不完美,但是如果对服务器进行适当的加固,通常它就足够安全了。