【发布时间】:2018-11-12 21:26:54
【问题描述】:
我正在开发一个使用 React 的 Web 应用程序和一个使用 Node.js / Express 的 GraphQL API。我想让 API 更安全,以便不是来自浏览器上的 Web 应用程序的 API 请求更难获取数据。我知道如何与注册用户一起做。但是如何让非注册用户仍然可以访问应用所需的一些基础数据呢?
是否可以在网络应用程序中放置某种密钥 - 因此无法通过在浏览器中嗅探网络开发工具并在 Postman 中复制来为其他人复制 API 调用? SSL/TLS 是否也保护该浏览器工具中的请求?还是像“标准”用户一样为非注册访问者使用?
它是一个带有 next.js 的服务器端 Web 应用
我知道没有 100% 安全的 api,但它可能会使未经授权的访问变得更加困难。
编辑: 我不确定这是否是关于 CSRF 的问题,因为它不是关于访问用户数据或通过恶意网站更改数据等。而是关于其他人试图使用网站数据(对 API 的所有 GET 请求)并且可以轻松地在那里构建在我的 api 之上拥有自己的网络应用程序。所以没有人可以通过简单的 Postman 请求轻松查询我的 api。
【问题讨论】:
-
使用 CSRF 令牌:stackoverflow.com/questions/5207160/…
标签: node.js reactjs security express graphql