【发布时间】:2018-01-15 02:35:34
【问题描述】:
如何继续保护我的 react 应用程序中的 api 密钥?我是否使用 express 进行设置?我正在尽力避免自己在服务器上构建任何东西来从那里进行 API 调用。我只使用 firebase 作为我的后端,但我正在使用某些服务,例如 emailjs。无论如何都可以在不将其暴露在我的客户端代码中,而不在我自己的服务器上执行任何操作的情况下对 emailjs 进行此调用? Emailjs 不提供任何加密或白名单。
emailjs.init("API_KEY");
【问题讨论】:
-
唯一的方法是将它们保存在服务器上并从那里发出请求。发送给客户的任何内容都不是安全的
-
因此,即使我尝试仅使用 firebase 作为后端,我仍然需要使用 php 创建一些东西来为我进行这些 API 调用?
-
只做一个中间件,不是很难。您告诉应用程序使用它,当请求进入时,它会添加
API_KEY并且数据会保留在您的服务器上。该值不应该出现在用户浏览器中,如果出现,您将无法保护它。用户是否经过身份验证?无论如何,您可能应该对此请求进行 CSRF 保护,这将需要您执行快速中间件。 -
我认为您根本不应该在客户端代码中执行此操作。如果您需要在客户端代码中获得读取权限,请尝试查看它们是否提供可发布密钥。
标签: javascript node.js api reactjs security