Oauth2 + jwt 和 spring boot
Posted
技术标签:
【中文标题】Oauth2 + jwt 和 spring boot【英文标题】:Ouath2 + jwt and spring boot 【发布时间】:2020-06-19 15:55:18 【问题描述】:我想在 oauth2 + jwt 中安全地在后端实现。
我想在 Spring Boot 中实现以下身份验证流程,但我不知道该怎么做: 1. 用户被认证。 2. 收到该请求,并使用该登录名和密码验证凭据的 ws 受到攻击。 3.如果正确,在数据库中搜索一系列数据和权限 4.如果正确则授予访问权限并生成jwt令牌
我对此感到迷茫,尽管我读了这么多书,但我不知道该怎么做。 我可以遵循任何手册或帖子吗?
【问题讨论】:
【参考方案1】:您是在运行自己的(自定义)身份验证服务器,还是计划允许用户通过 Google、Facebook 等提供商进行身份验证?如果是后者,那么您根本无法期望收到用户/密码凭据,因此您可能误解了 OAuth 流程。您通常会收到来自提供商(例如 Google)的“授权码”。
另外,“验证凭据的 ws 被攻击”是什么意思??
这个Google use-case diagram 描述了一个常见的流程。它是this guide 的一部分。
无论哪种方式,Spring Boot 本身并不处理 OAuth/安全性,但它有一个严密的 与 Spring Security 集成,这是一个很好的安全框架,尤其是当您已经在使用 Spring 时。 Spring Security 可以处理 OAuth、JWT 等。
一些可能有助于您入门的指南:
https://www.baeldung.com/spring-security-oauth-jwt https://spring.io/guides/tutorials/spring-boot-oauth2/【讨论】:
以上是关于Oauth2 + jwt 和 spring boot的主要内容,如果未能解决你的问题,请参考以下文章
Spring Boot OAuth2 + JWT 和 UserDetailsService