哈喽各位同学们大家好呀,今天是开发者学院中课程“Spring Cloud微服务架构设计与开发实战”的章节二的“Java Spring Cloud令牌身份验证与安全机制”干货总结~是一起学习新课程吧!
课程链接以及图谱地址小编已经为大家指路了,搭配学习效果更佳👇
课程名称:Java Spring Cloud令牌身份验证与安全机制
课程地址:https://developer.aliyun.com/learning/course/60/detail/1092
图谱名称:Alibaba Java 技术图谱
图谱地址:https://developer.aliyun.com/graph/java
Java Spring Cloud令牌身份验证与安全机制
- Java Spring Cloud身份验证与安全机制
- 面试题:ZuulFilter过滤器
- Zuul自定义过滤器处理请求
- filterType:zuul中定义了四种不同生命周期的过滤器类型:
- pre:可以在请求被路由之前调用
- routing:在路由请求时候被调用
- post:在routing和error过滤器之后被调用
- error:处理请求时发生错误时被调用
网关底层比较有用的一点除了请求转发以外另外一个就是咱们有可能会做日志或者做身份验证因为它是统一的入口。就像高速公路一样,城市只有几个高速路口,入口是包括飞机场,火车站那边都是人流量入口的地方,他来做防疫检查是安全检查最可靠的一个地点,这里面也是要在这里来分析一下它底层的一个原理,然后通过实战看这个结果。这有一个面试题ZuulFilter本身是有过滤器的概念,过滤器的概念,分四种,主要用的是第一种,提前拦截请求来做请求的合法性校验然后如果用户是登录请求咱们得给它生成一个令牌返给他。如果不是登录请求的话就要检查它的合法身份证的有效性一般的话是通过令牌机制来做。
- Zuul核心模块
这里面当中最重要的是 Filter机制,Filter机制过滤器机制我们用它主要是做设备验证一个是登录的时候让他去生成令牌合法调研如果登陆成功来完成一个令牌生成如果登陆失败的话就不放行了。
- 微服务身份验证
• 1、/authentication 访问这个地址验证
• 2、验证用户名密码,生成Token,返回
• 3、后续客户端调用Zuul,拦截器拦截Token
• 4、比对,时间周期2小时,Token Server
• 5、过滤器Filter,拦截请求,
如果用户现在携带着令牌过来,然后我们验证它有效期或者验证这个令牌是不是正确。当用户登录的时候,校验盘用户密码的时候可以生成令牌,比如放在一个公共的人事缓存里面。当下一次效验那些请求的时候如果他访问的不是登录页面我们拦截他然后拿他的令牌做身份的校验。验证令牌服务器里面是不是有这个令牌是不是合法,是不是过期了。
- Java Spring Cloud实战令牌身份验证SSO
- Zuul启用验证
•@SpringBootApplication
•@EnableOAuth2Sso
•@EnableZuulProxy
• class Application {
•}
- Spring Cloud微服务集成令牌
1. 客户申请令牌
2. 令牌服务器令牌签发
3. 客户端调用API,附带Token值,
4. Zuul代理拦截请求,
5. 验证Token验证
注意事项:
发送请求当访问地址出现无效时,添加accunt/login,Request加两个参数,username,password。
返回Request添加token,以及后台反馈jwt数值,放入到HEADER里加入令牌词。
通过令牌方式成功的完成了一个令牌客户端的登录令牌的校验用的是主网关里面很重要的一个过滤器,而且过滤器选择了优先级要高的在请求处理之前就开始拦截,就开始进行身份证校验,并且主要校验是基于token。