基于spring-security-oauth2实现资源服务器和认证服务器对接(持续更新)

Posted by wotrd on 06-22,2019

##基于spring-security-oauth2实现资源服务器##

文章代码地址:[链接描述][1]可以下载直接运行,基于springboot2.1.5,springcloud Greenwich版本实现。前面两篇写了认证oauth2通过内存
还有jdbc实现认证中心。接下来我们采用oauth2实现管理系统的资源服务器


前面,我们已经使用了@EnableAuthorizationServer ,@EnableOAuth2Sso 注解。现在,我们使用@EnableResourceServer注解实现资源服务器。
资源服务器顾名思义就是提供资源的服务器。对于服务就是给网关提供接口的服务。和认证服务器对接后,将受到资源的保护。
下面开始:
(1)创建auth-resource项目,添加依赖:

s_7_1
这里,我们添加了mysql数据库连接的依赖还有oauth2依赖。

(2)创建数据库表设计:
tb_content_category

s_7_2

s_7_3

(3)创建接口生成数据库mapper文件

s_7_4
s_7_5

s_7_6

(4)创建ResourceServerConfig文件:

s_7_7 这里主要是配置资源的保护
(5)修改配置文件:

s_7_8

这里主要配置资源服务器,对客户端token的检验实现资源保护
好了,启动认证服务和资源服务器:

(6)我们在浏览器中访问地址: http://localhost:9001/oauth/authorize?client_id=client&response_type=code 获得code

s_7_9

(7)我们携带token请求资源服务器:

s_7_10

成功!

s_7_11
失败,token错误。


基于oauth2的资源服务器实现完成, 未完待续,下一篇将实现单点登录和网关的对接。 有问题,请留言。