(十一)Java B2B2C o2o多用户商城 springcloud架构- SSO单点登陆之OAuth2.0登陆流程(2)

上一篇是站在巨人的肩膀上去研究OAuth2.0,也是为了快速帮助你们认识OAuth2.0,闲话少说,我根据框架中OAuth2.0的使用总结,画了一个简单的流程图(根据用户名+密码实现OAuth2.0的登陆认证):web

clipboard.png

上面的图很清楚的描述了当前登陆login的流程,如今咱们针对于login作成相关的微服务,解析以下:spring

请求方式:POST
服务URL: http://localhost:8080/user/login
参数类型:application/jsonjson

Headers: Content-Type: application/json
             Authorization: Basic QXkjkdkYkhfeyKOKKHUM67ejfjeSfnrRdk5nPT0=    
Body:{
       "userName":"admin",  ---也能够是手机号码等
 
      "password": "e10adc3949ba59abbe56e057f20f883e"  
 
} 
 
返回值类型: application/json
返回的结果集: {
 
 "code": "200",
 
 "message": "Success",
 
 "version": "v1.0",
 
 "data": {
 
   "userInfo": {
 
     "userId": "00001",
 
     "pwd": "e10adc3949ba59abbe56e057f20f883e",
 
     "userName": "admin",
 
     "mobile": "15875500000",
 
     "telephone": "",
 
     "wechat": "",
 
     "email": "xxx@qq.com",
 
     "status": "1",
 
     "createTime": "2017-06-26"
 
    },
 
   "roleIds": "100",
 
   "tokenInfo": {
 
     "accessToken":"4de55a69-e372-4766-acd3-1c419d6f2fda",
 
     "tokenType": "bearer",
 
     "webTokent":"uHSLjfJoQwU4t4PAqCzH1SN0fp7PUWKluPNS+x1dZ8R9Gx+NJkBI7w==",
 
     "refreshToken":"d3d71594-5c3f-4a68-a7e5-b8d21c4fa73b",
 
     "expiresIn": 34644,
 
     "scope": "read write"
 
    }
 
  }
 
}

备注: 能够使用Postman工具进行测试
框架设计思想: 提供独立的commonservice-sso的微服务、提供component-sso的依赖组件、提供针对于用户登陆的微服务客户端user-service微服务接口。
整个执行的流程以下:user-service ---> commonservice-sso ---> component-sso
这里尚未讲解到服务网关,后面会涉及到服务网关和sso单点登陆之间如何实现服务认证和鉴权。架构

从如今开始,我这边会将近期研发的spring cloud微服务云架构的搭建过程和精髓记录下来,帮助更多有兴趣研发spring cloud框架的朋友,你们来一块儿探讨spring cloud架构的搭建过程及如何运用于企业项目。
Spring Cloud大型企业分布式微服务云构建的B2B2C电子商务平台源码请加企鹅求求: 一零叁八七七四六贰六app

相关文章
相关标签/搜索