登录
首页 >  Golang >  Go问答

React JS Rest API 安全性与 GoLang 后端

来源:stackoverflow

时间:2024-04-17 14:39:34 357浏览 收藏

来到golang学习网的大家,相信都是编程学习爱好者,希望在这里学习Golang相关编程知识。下面本篇文章就来带大家聊聊《React JS Rest API 安全性与 GoLang 后端》,介绍一下,希望对大家的知识积累有所帮助,助力实战开发!

问题内容

我用 GoLang 后端构建了一个 ReactJS 前端。所有数据均由 ReactJS 使用 Rest API 从 Golang 后端请求/发送。

我很困惑什么是保护我的 API 请求的最佳方法,这样就不会以编程方式访问我的后端服务器并进行不需要的更改。任何建议将不胜感激。

我一直在探索 JWT 令牌和 CSRF 令牌,但由于我缺乏 API 安全领域的专业知识,所以对于如何在我的应用程序中准确实现它没有任何进展。

有关我的申请的一些进一步详细信息是:

  1. 前端和后端服务器是分开的。
  2. 前端服务器使用 Nginx 来提供静态文件。
  3. 每次打开页面时都应生成一个新令牌,并且有效期不应超过 8 分钟。

根据我的应用程序的结构,请向我建议保护其余 API 安全的最佳方法是什么。

附注:此页面没有登录或任何其他机制来确定用户的真实性。


解决方案


我建议使用 JWT 来保证 API 安全,因为您的令牌到期时间足够短。

  • https://github.com/dgrijalva/jwt-go --> 使用此包在后端生成令牌,并根据您的需要设置到期时间和声明。您的声明也可以根据角色进行精细控制(身份验证层)。
  • 通过登录或作为 API 网关的任何端点将此令牌发送到您的前端。
  • 根据您的意愿在前端将令牌存储在本地存储/https cookie 中。
  • 对于需要保护的每个 API 调用,请在标头中发送此令牌,并使用上述库在后端验证此令牌。
  • 挑战是在忘记或重置密码/注销时使这些令牌失效。您可以使用黑名单令牌技术,将它们保存在 redis/db 中并使用 cron 定期刷新它们。

以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持golang学习网!更多关于Golang的相关知识,也可关注golang学习网公众号。

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>