【发布时间】:2019-04-19 08:33:20
【问题描述】:
我是 JAM 堆栈的新手。 JAM 堆栈中的 Web 应用程序(我在 Netlify 中托管我的应用程序)将完全依赖 API 来存储信息和身份验证,对吗?
所以我担心我必须在我的 JavaScript 代码中公开我的所有 API 密钥。任何知道如何打开站点源代码的人都可以看到我的 API 机密并且很容易被滥用。
我正在阅读 Github 上 JAM 堆栈 repo here 中的一个未解决问题
如何保护我的 API 密钥免遭窃听和滥用?
在这种情况下,“最佳实践”是什么?
提前致谢
【问题讨论】:
-
不太清楚你为什么要问这个问题,因为 ypu 提供的链接有很多关于如何解决这个问题的解决方案,甚至是使用 Netlify 时的一个例子netlify.com/blog/2016/10/04/…
-
我也上过那个链接。用户可以查看Webpack变量吗?所以这不是一种安全的方式吗?对不起,如果我错了。
-
好点和正确。您是否尝试过运行 api 调用服务器端。例如。调用您的服务器获取数据,确保用户会话有效。让服务器使用 API 密钥请求并返回数据
-
我想这也是不可能的。由于我使用的是 JAM 方法并且没有运行服务器端代码
-
我为 Netlify 工作,我同意你不希望你的环境变量直接出现在你的静态内容中,除非它们是公钥或类似的预期可见变量。
标签: javascript netlify jamstack