NodeJS 在生产环境中存储密钥/API密钥的最佳做法是什么?

vyswwuz2  于 2022-11-03  发布在  Node.js
关注(0)|答案(3)|浏览(299)

对于Node应用程序,通常不鼓励在生产中使用.env库来存储API密钥。在生产中存储密钥的最佳方式是什么?
.env库不建议在生产中用于节点应用程序。

wvt8vs2t

wvt8vs2t1#

管理生产环境的计算机权限甚至更为重要。
如果只有您有权访问生产环境,则将密钥写入.env应该没有问题
但是,您应该注意不要将生产配置提交给git。因此,您应该在本地为调试环境或生产环境准备多个配置文件

oxf4rvwz

oxf4rvwz2#

一般来说,对于production,你会将env变量存储在应用程序的托管位置。

Github操作

您可以使用Encrypted secrets
加密的机密允许您在组织、存储库或存储库环境中存储敏感信息。

网络化

刚刚在一个站点的部署侧导航栏的根目录下发布了Environment Variables
AWS
您可以将您的environment variables存储在Amplify,AWS主机下。
希六
有一段时间没有在项目中使用它了,但是根据文档,您会引用Configuration and Config Vars,并且有一个很好的问题,“How to set environment variables on Heroku for Node app and connect to the PostgreSQL database?

商店示例

另一件需要记住的事情是,确保区分proddev env变量,因为有些变量在开发中使用不同的变量。我发现,如果让某人进入现有项目来存储采样器文件,这是一个很好的做法:

  • sample.env.md *

## For Foo

FOO=

## For Bar

BAR=

.gitignore(忽略不计)

请确保包含以下内容以防止意外提交:

.env
.development.env
.test.env
.production.env
tktrz96b

tktrz96b3#

使用.env文件在某种程度上是有用的,但是有限的。我建议使用适当的应用程序来实现这一点。
Hashi Corp's Vault是非常强大的工具来管理秘密。如果你寻找开源替代Key Whiz可以是解决方案。但我没有生产经验与它。我想使用保险库超过关键高手。

相关问题