OAuth2暗码模式已死,开始进的Spring Cloud认证授权方案在这里

手机游戏开发者 2024-9-15 08:35:55 42 0 来自 中国
旧的Spring Security OAuth2停止维护已经有一段时间了,99%Spring Cloud微服务项目还在使用这些旧的体系,严厉青黄不接。许多同砚都在探求新的办理方案,乃至尚有念念不忘暗码模式的。胖哥也在前面写了一篇办理思绪的文章。好像照旧不外瘾,本日看到这篇文章的同砚有福了,标题将在这里得到办理。
方案

现在这应该是Spring生态中最新的办理方案,没有之一。先看下游程,微服务无关的别的的组件这里先屏蔽了,剩下图的几个组件:
1.png 具体流程为

  • ①用户向网关哀求登录大概通过网关哀求资源服务器的资源。
  • ②网关发现用户没有授权发起基于OAuth2授权码的OIDC流程,向授权服务器Id Server发起授权哀求。
  • ③授权服务器Id Server收到授权哀求重定向到用户登录页面要求用户登录认证,以发起授权。
  • ④用户输入用户名暗码进行登录认证。
  • ⑤Id Server授权服务器处理用户认证并重定向到网关约定的OAuth2 Redirect URI,这个过程属于标准的OIDC授权码流程。
  • ⑥网关获得AccessTokenIdToken

    • 如果最初发起的是登录就重定向到/。
    • 如果最初发起的是哀求资源服务器资源就令牌中继重定向到对应的资源。

  • 资源服务器通过⑦⑧两个链路相应用户的哀求。
请注意,上述流程中天生的AccessTokenIdToken不允许提供给用户侧,否则会引起中心人攻击,默认提供的是一个cookie计谋,大部分环境下这种计谋是够用的,如果你必要自界说必须深刻相识其机制,你可以通过我的Spring Security OAuth2专栏进行学习。
具体实现

根据上面的方案,我们必要三个应用,分别是网关Spring Cloud Gateway应用、资源服务器应用Resource ServerOAuth2授权服务器Id Server
Spring Cloud Gateway

Spring Cloud Gateway 应用,端口8080,它不光仅是一个网关照旧一个在授权服务器Id Server注册的OAuth2客户端,通过Id Server你可以在一分钟内完成设置。它必要设置到资源服务器的路由规则和令牌中继功能。核心设置为:
您需要登录后才可以回帖 登录 | 立即注册

Powered by CangBaoKu v1.0 小黑屋藏宝库It社区( 冀ICP备14008649号 )

GMT+8, 2024-11-22 16:55, Processed in 0.208947 second(s), 35 queries.© 2003-2025 cbk Team.

快速回复 返回顶部 返回列表