node.js - 在 Docker node.JS 项目中安全存储 SMTP 密码

标签 node.js linux docker security encryption

我需要存储运行时需要的加密密码(SMTP 密码)。

我面临的问题是我还需要存储一个 key 来再次解密密码,有什么办法可以解决这个问题?因为如果 key 与加密密码一起存储,则与以纯文本形式存储相同。

这是客户的需求,因此如果他们的服务器遭到黑客攻击,黑客将无法直接访问他们的所有密码。

制作中的软件使用 NodeJS 编码,并在 Docker 容器中运行。

我想到的一个解决方案是将加密 key 存储在另一个文件中,在 Docker 实例的另一个位置,但这似乎也不是很安全。

提前致谢

编辑,不确定我的问题是否没有被理解。但我想问的是,是否有一种安全的方法可以做到这一点,如果有,我应该在哪里寻找更多相关信息。

最佳答案

如果您应该在运行时使用纯文本密码,则无法保护您的密码免遭服务器黑客攻击。数据库凭证也存在同样的问题。如果您将加密 key 存储在任何地方,您的代码中的一个函数会解密加密的密码以供在运行时使用,因此黑客可以使用该函数找到纯文本密码

关于node.js - 在 Docker node.JS 项目中安全存储 SMTP 密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53222369/

相关文章:

node.js - Dockerfile 中的“npm install”不安装任何依赖项

docker - K6 InfluxDB + Grafana Docker:如何预加载仪表板

Ubuntu timedatectl 在 Docker 容器中失败

node.js - 如果用户未经过身份验证,则显示公共(public)逻辑 React JS 和 Node API

javascript - 在 Header 中传递 JWT

javascript - 仅在 Nodejs 中需要时才从主进程启动和停止子进程

python - 需要创建一个从 CSV 创建目录结构的脚本

c - 使用 execvp() 调用 Linux ps 命令

javascript - Firebase 云功能总是超时

regex - 如何找到开头单词与结尾单词相同的句子?