spring security oauth2 implicit模式

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

implicit模式

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

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

步骤跟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

相关文章
相关标签/搜索