8.redis存储token以及springboot整合Jwt
1.总结:
- 昨天主要是下载安装和使用redis去存储token,但在创建redis的新建的时候出现了host异常,原因是没有将服务中的进程关掉,再重新打开redis的server,再打开cli;
- 回顾了Jwt的使用(无状态,不需要存储),之后了自定义自己的claims
- redis存储token,首先需要定义一个RedisConfig类,创建一个RedisTokenStore的bean,返回RedisTokenStore实例,里面需要添加RedisConnectionFactory来连接redis,然后去授权服务类中配置RedisTokenStore就行
- 同样的Jwt无状态存储token ,也需要先定义一个JwtTokenConfig类,在里面bean一个JwtTokenStore,再添加一个JwtAccessTokenConverter的bean里面new一个JwtAccessTokenConverter来设置密钥来防止token截取,之后添加到JwtTokenStore里面,最后去授权服务器里面注入,并添加configure里面的TokenStore和JwtAccessTokenConverter
2.反思:
- 其实Jwt的创建token以及解析token,如之前所说都是固定的创建方式,但要根据项目的不同选择合适的加密算法以及加密方式来完成token的加密,加密算法与加密方式是分不开的,不是随意搭配的;
- 在之前的jwt中也有自定义的claims(Jwt的一部分)是JSON对象的一部分,这个可以自己设置
3.复盘:当学过一遍,再去过一遍的话,自己其实也慢慢懂了一些道理,java是要先学广泛的,学的多咯其实很多是异曲同工之妙,慢慢地以前的也是有所领悟,昨天听到说咯项目驱动,通过项目来学习信息的知识是很重要的