我正在运行nodejs apps访问不同服务器上的资源,我需要将密钥存储在某处。现在,在代码存储库中签入用户凭据或加密密钥被认为是一个坏主意。以安全的方式管理这些密钥的最佳方法是什么?
我找到的一个选项是将它们保存在环境变量中,然后在脚本需要时读取它们的值。我知道填充env变量的两种方法是:在命令行上运行脚本时设置它们(例如USER_KEY=12345 node script.js
),或者从硬盘驱动器上的本地文件中读取它们。但我想在随机CI管道机器上访问这些密钥,因此无法将文件存储在磁盘上,并且无法从命令行加载它们。
第二个选项是从远程计算机读取这些键。是否有已知的加密/密钥管理服务或其他流行的NodeJS方法来保存密钥库中的凭据,然后让脚本在运行时从那里读取它。还有另一种方式吗?