1.配置Spring Security<br/>
2.配置Authorization Server<br/>
2.1 配置TokenStore<br/>
2.1.1 memory
~~~
@Bean
public TokenStore tokenStore() {
return new InMemoryTokenStore();
}
~~~
2.2.2 mysql
~~~
配置:
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/springsecurity?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC
username: root
password: 123456
jpa:
hibernate:
ddl-auto: update
show-sql: true
使用:
@Autowired
private DataSource dataSource;
@Bean
public TokenStore tokenStore() {
return new JdbcTokenStore(dataSource);
}
~~~
2.2.3 redis
~~~
配置:
spring:
redis:
host: localhost
database: 5
password: 123456
port: 7968
pool:
max-active: 1000
max-idle: 1
max-wait: -1
使用:
@Autowired
private RedisConnectionFactory redisConnectionFactory;
@Bean
public TokenStore tokenStore() {
return new RedisTokenStore(redisConnectionFactory);
}
~~~
3.配置Resource Service<br/>
3.1 依赖
~~~
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-oauth2</artifactId>
</dependency>
~~~
3.2 配置
~~~
开启ResourceServer:
@Configuration 加上 @EnableResourceServer
验证token服务的节点:
security:
oauth2:
resource:
user-info-uri: http://localhost:8762/uaa/users/current
~~~
4.配置OAuth Client<br/>
5.存在有问题点<br/>
5.1 每次请求资源服务器的接口时,资源服务器都要内部远程调用auth-servvice服务来验证token的正确性和token对应的用户的权限,这样就额外多了一次内部请求。
6.将access_token存储到中控服务器,所有需要用到该参数的程序都应访问中控服务器获取access_token,中控服务器判断当前access_token是否有效并刷新即可。
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
读书笔记:spring oauth2 学习例子参考《深入理解Spring Cloud与微服务构建》.zip (50个子文件)
读书笔记:spring oauth2 学习例子参考《深入理解Spring Cloud与微服务构建》
spring-oauth2
authorization-server
mvnw.cmd 6KB
pom.xml 2KB
src
test
java
com
booyue
tlh
authorizationserver
AuthorizationServerApplicationTests.java 406B
main
resources
application.yml 900B
java
com
booyue
tlh
authorizationserver
controller
UserController.java 675B
AuthorizationServerApplication.java 1KB
config
WebSecurityConfig.java 1KB
OAuth2AuthorizationConfig.java 6KB
.mvn
wrapper
maven-wrapper.properties 116B
maven-wrapper.jar 47KB
MavenWrapperDownloader.java 5KB
mvnw 9KB
.gitignore 303B
pom.xml 2KB
获取token.png 50KB
.git
index 4KB
HEAD 23B
refs
heads
master 41B
tags
remotes
origin
master 41B
objects
pack
pack-3ce231b11ee079cf7f1fe0c664dcf3bff9023aa6.pack 284KB
pack-3ce231b11ee079cf7f1fe0c664dcf3bff9023aa6.idx 13KB
info
FETCH_HEAD 121B
logs
HEAD 130B
refs
heads
master 130B
remotes
origin
master 144B
hooks
config 258B
branches
没有ADMIN权限生成的token访问需要ADMIN权限的api接口.png 47KB
.idea
vcs.xml 180B
workspace.xml 57KB
misc.xml 1KB
compiler.xml 826B
httpRequests
http-requests-log.http 118B
encodings.xml 416B
service-hi
mvnw.cmd 6KB
pom.xml 1023B
src
test
java
com
booyue
tlh
servicehi
ServiceHiApplicationTests.java 386B
main
resources
application.yml 162B
java
com
booyue
tlh
servicehi
ServiceHiApplication.java 335B
controller
HiController.java 1KB
config
ResourceServerConfigurer.java 986B
.mvn
wrapper
maven-wrapper.properties 116B
maven-wrapper.jar 47KB
MavenWrapperDownloader.java 5KB
mvnw 9KB
.gitignore 303B
携带token参数访问api接口.png 44KB
没有ADMIN权限生成的token.png 50KB
spring-oauthorizetion-demo.iml 80B
oauth_client_details.sql 2KB
README.md 2KB
共 50 条
- 1
资源评论
九转成圣
- 粉丝: 5180
- 资源: 2962
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功