首页 > 解决方案 > 当我需要我的 React 应用程序的 API 密钥时,直接从 AWS amplify 访问环境变量是否被认为是一种安全的做法?

问题描述

当我部署我的应用程序时,我不想在我的源代码中显示几个 API 密钥。

文档警告以下内容:

WARNING: Do not store any secrets (such as private API keys) in your React app!

Environment variables are embedded into the build, meaning anyone can view them by inspecting your app's files.

我通过从本地.env文件中获取密钥来访问我的变量。我假设 AWS Amplify 的过程类似:

  accessKeyId: process.env.REACT_APP_ACCESS_KEY_ID,
  secretAccessKey: process.env.REACT_APP_SECRET_ACCESS_KEY

我经常读到有人能找到我的钥匙,只要他们“知道去哪里找”。我是否采取了适当的措施来防止这种情况发生?我在 Firefox 的调试器中浏览了我的文件,但在那里找不到我的.env文件。

.env文件已添加到我的.gitignore文件中,因此它在我的远程存储库中不存在。

标签: reactjsamazon-web-servicesaws-amplify

解决方案


这是一个非常常见的用例。许多客户使用AWS Systems Manager Parameter Store在运行时存储和检索凭证。这是描述该过程的博客文章。


推荐阅读