我有一个连接到一些API服务的ReactJs前端应用程序。其中一些API服务要求我在初次登录时通过appId
和appSecret
。
我目前将它们放在js
文件中,该文件被缩小并捆绑,但我觉得我仍然会将我的应用凭据暴露给精明的入侵者。
保护他们的正确方法是什么?
答案 0 :(得分:1)
我阅读了评论并看到你仍然感到困惑,但更详细的解释是在评论中占用了更多的空间,因此发布了更详细的解释作为答案。
这个想法是您使用服务器作为所有请求和响应的代理。
这些不是处理这类交互的唯一方法,但它们是一些更常见的方式。情况1和2是不同的,因为在情况1中,有一个客户端(前端)需要从API获取数据。 API的凭据通过仅由您的服务器存储和使用来保护。在这种情况下,您可以选择限制使用您的应用程序的每个人,对您在应用程序上进行身份验证的所有人(您必须实施登录系统)的访问权限,仅限于已登录并具有特定权限级别的人员(您必须实施角色)。在案例2中,没有客户端应用程序,有人直接访问您的API。您仍然需要对它们进行身份验证,因此您只需向其发送一次密钥,并且每次发出请求时都会传递该密钥。