有没有办法将我的 MySQL 密码安全地存储在 Node.JS 中?
Posted
技术标签:
【中文标题】有没有办法将我的 MySQL 密码安全地存储在 Node.JS 中?【英文标题】:Is there a way to store my MySQL passwords in Node.JS securely? 【发布时间】:2019-02-10 00:04:26 【问题描述】:我正在将 Node.js 用于 Web 应用程序。该应用程序直接与 mysql 对话,因此,我需要指定用于连接的密码,但是,这要求密码在源代码中以纯文本形式显示。
有没有办法隐藏/散列密码?
【问题讨论】:
这通常在代码之外完成,例如通过环境或文件系统将密码引入运行的服务器。 【参考方案1】:查看http://12factor.net 了解许多最佳实践。
一般来说,永远不要在源代码中存储秘密。根据您的要求,有许多用于存储机密的选项,但最简单的是将它们配置为运行进程的用户的环境变量(您在开发中,在生产中的一些服务帐户)。
虽然这并不完美,但如果您的服务器经过适当的加固,通常就足够安全了。
【讨论】:
【参考方案2】:不,你不能 %100 隐藏数据库密码,你也不需要。包含db密码的配置文件将在服务器上,任何人都无法访问它而不泄露服务器。
【讨论】:
这是真的,但是我担心当我将源代码存储在我的 PC 或组织的网络上时,它会以纯文本形式提供。以上是关于有没有办法将我的 MySQL 密码安全地存储在 Node.JS 中?的主要内容,如果未能解决你的问题,请参考以下文章