spring security oauth2 implicit模式

内核开发者
• 阅读 6377

前面三篇文章讲了client credentials、password以及authorization code授权模式,本文就来讲一下implicit模式。

implicit模式

spring security oauth2 implicit模式

该模式直接在浏览器中向认证服务器申请令牌,无需经过client端的服务器,跳过了"授权码"这个步骤,所有步骤在浏览器中完成,直接在回调url中传递令牌。

适合直接在前端应用获取token的应用

步骤跟authorization code类似,只不过少了授权码:

  • 在浏览器向认证服务器请求token
  • 用户登录(如果之前没有登陆的话)
  • 用户授权
  • 授权完直接跳转到redirectUri并在url中携带token

实例

请求token

http://localhost:8080/oauth/authorize?response_type=token&client_id=demoApp&redirect_uri=https://baidu.com
  • 注意,这里response_type=token
  • 无需传递client secret,传递client_id只是为了验证在auth server配置的redirect_uri是否一致
  • redirect_uri中如果携带参数,则最好对url编码再作为参数传递过去

回调成功

http://localhost:8081/callback#access_token=41f78007-e2ec-4978-9beb-a830b638d4d8&token_type=bearer&expires_in=1199&scope=all

可以发现直接在url中携带了access_token等信息

当然了,使用了implicit模式,其实就没必要使用spring security oauth2的client模块了,因为直接走浏览器模式。

doc

点赞
收藏
评论区
推荐文章
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
责任链和策略设计模式-基于Java编程语言
责任链和策略设计模式这两种设计模式非常实用,下面简单介绍一下我对这两种设计模式的理解和它们在Spring框架源码中的应用。
Stella981 Stella981
4年前
OAuth2.0 授权码理解
OAuth2.0授权模式本篇文章介绍OAuth的经典授权模式,授权码模式所谓授权无非就是授权与被授权,被授权方通过请求得到授权方的同意,并赋予某用权力,这个过程就是授权。那作为授权码就更加简单,第三方直接发起授权请求并希望能够得到某种我需要的权力。授权方根据第三方的需求提供相应的授权权限,最后生成一串付有权限的码来实现授权,这个
Stella981 Stella981
4年前
Intel Pin
这篇文章主要介绍一下IntelPin在JIT模式和Probe模式下对库换数的替换,以及实现中有哪写需要注意的地方。JIT模式就是对插桩的代码进行即时编译,然后缓存起来使用Probe模式就是在要插桩的函数入口前面插入一条跳转指令,跳转到新的替换函数处执行,不在原来执行代码上进行修改具体的大家可以参考Pin官方手册https://softwa
Wesley13 Wesley13
4年前
5 分钟部署一个 OAuth2 服务并对接 Shibboleth
前言这还是一个标题党。OAuth2现在已经是开放授权协议的事实标准,你可以看到几乎所有的xxx开放平台均采取的OAuth2协议来进行授权。而在AuthorizationCode模式的基础上结合JWT,标准化的userinfoendpoint和服务发现,就成了OpenIDConnect。当然即便不加上这些限定,OA
Stella981 Stella981
4年前
RabbitMQ学习:RabbitMQ的六种工作模式终结篇(四)
前言,在前面我讲到了RabbitMQ的六种工作模式中简单模式和工作模式https://my.oschina.net/u/4115134/blog/3228182(https://my.oschina.net/u/4115134/blog/3228182),这里呢,我就一次性将剩下的四种发布订阅模式/路由模式/主题模式及Rpc异步调用模式,给
Wesley13 Wesley13
4年前
23种设计模式(1):单例模式
定义:确保一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。类型:创建类模式类图:!23种设计模式(1):单例模式第1张|快课网(http://static.oschina.net/uploads/img/201407/05200605_0dij.gif"23种设计模式(1):单例模式
Wesley13 Wesley13
4年前
00_设计模式之语言选择
设计模式之语言选择设计模式简介背景设计模式是一套被反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总结。设计模式(Designpattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的
Easter79 Easter79
4年前
SpringCloud Alibaba微服务实战十八
!(https://oscimg.oschina.net/oscnet/2f4a69393b334d78bb0a4efeddf8e21f.png)概述大家都知道在oauth2认证体系中有四种授权模式:授权码模式(authorizationcode)简化模式(implicit)客户
玩转Spring状态机
说起Spring状态机,大家很容易联想到这个状态机和设计模式中状态模式的区别是啥呢?没错,Spring状态机就是状态模式的一种实现,在介绍Spring状态机之前,让我们来看看设计模式中的状态模式。1.状态模式状态模式的定义如下:状态模式(StatePatt
玩转Spring状态机 | 京东云技术团队
说起Spring状态机,大家很容易联想到这个状态机和设计模式中状态模式的区别是啥呢?没错,Spring状态机就是状态模式的一种实现,在介绍Spring状态机之前,让我们来看看设计模式中的状态模式。1\.状态模式状态模式的定义如下:状态模式(StatePat
内核开发者
内核开发者
Lv1
与其做个无途的归人不如去做个有梦的乘客.
文章
4
粉丝
0
获赞
0