springcloud

Spring Cloud云架构 - SSO单点登录之OAuth

2017-12-18  本文已影响125人  万万558

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

上面的图很清楚的描述了当前登录login的流程,现在我们针对于login做成相关的微服务,解析如下:

请求方式:POST

服务URL

参数类型:application/json

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架构的搭建过程及如何运用于企业项目。源码来源

上一篇下一篇

猜你喜欢

热点阅读