如何解决SpringSecurityOAuth2 redis反序列失败问题

技术如何解决SpringSecurityOAuth2 redis反序列失败问题这期内容当中小编将会给大家带来有关如何解决SpringSecurityOAuth2 redis反序列失败问题,文章内容丰富且以专业的角度为大家

本期,边肖将为您带来如何解决Springsecurityauth2Redis逆序的失败。文章内容丰富,从专业角度进行分析和叙述。看完这篇文章,希望你能有所收获。

当令牌被获取并且令牌资源认证可以在认证服务中同时使用时。然后,资源服务被集成到其他资源中。同时,定制了UserDetails,重写了接口方法。自定义用户详细信息服务,重写接口方法,并返回用户详细信息。当资源服务器对令牌进行身份验证时,会出现redis序列化失败的问题。示例:

/**

* @描述自定义实现用户详细信息。

* @ Authorwwz

* @日期2019/07/28

*@Param

* @返回

*/

@数据

public class myuserdailsimplementuserdails {

privateAuthUseruser

私人收藏?extendsgranteauthorityauthorities;

publicmyuser details(authuser user,Collection?extendsgranteauthorityauthorities){ 0

this.user=用户;

权威=权威;

}

publimyuser details(){ 0

}

@覆盖

publicCollection?extendsgranteauthoritytheauthorities(){ 0

返回权限;

}

其他遗漏./* *.

* @描述自定义用户身份验证数据。

* @ Authorwwz

* @日期2019/07/28

*@Param

* @返回

*/

@服务

public classmyuserdailsserviceimplesuserdetailsservice {

@自动连线

privateAuthUserMapper AuthUserMapper;

@覆盖

public user detailsloaduserbyusername(Stringusername)throwsUsernameNotFoundException {

//自定义用户权限数据。

authuser authuser=authuser mapper . selectbyusername(用户名);

if(AuthUSer==null){ 0

thrownewusernamenotfoundexception('用户名不存在');

}

if(!authuser . getvalid()){ 0

thrownewusernamenotfoundexception('用户不可用');

}

setgranted authorityranteauthorities=new hashset();

//中间逻辑省略。

myuser detailsuserdetails=new myuser details(authUser,granted authorities);

returnuserDetails

}

} org . spring framework . data . redis . serializer . serialization exception导致了此问题,因为令牌在生成时使用用户定义的UserDetails进行了序列化,反序列化时,在新项目中找不到用户定义的实现,只能使用默认实现。解决方案是将自定义实现的用户细节复制到资源项目中。

这就是如何解决上述小编共享的Springsecurityauth2Redis逆序失败的问题。如有类似疑惑,请参考以上分析了解。想了解更多,请关注行业信息渠道。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/39228.html

(0)

相关推荐

  • 一句,你最喜欢的句子是哪一句

    技术一句,你最喜欢的句子是哪一句打开巜毛选》一句,翻开毛主席语录,句句都是美句、金句,都闪耀着万丈光芒。只要你带着问题带着感情去读,并认真领会,将越读越想读,越读越有劲,总觉得心中有一股暖流在全身流动,你将会被那崇尚的思

    生活 2021年10月20日
  • Hibernate如何实现批量处理

    技术Hibernate如何实现批量处理这篇文章给大家分享的是有关Hibernate如何实现批量处理的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Hibernate批量处理其实从性能上考虑,它是

    攻略 2021年12月8日
  • 闯红灯12123多久能显示,闯红灯多久能查到具体车辆

    技术闯红灯12123多久能显示,闯红灯多久能查到具体车辆随着互联网飞速发展,车辆在违章之后,既可到车管所进行违章处理,也可在网上进行处理闯红灯12123多久能显示。那么2018年闯红灯后几天后才能知晓呢?怎么查询呢?接下

    生活 2021年10月31日
  • c++培训(c++教程)

    技术怎么用C++做一颗会跳动的爱心这篇文章主要介绍怎么用C++做一颗会跳动的爱心,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!开始先来看看效果:程序描述:程序先以较慢的速度画一个大爱心,之后跳动的

    攻略 2021年12月20日
  • zookeeper基础知识点有哪些

    技术zookeeper基础知识点有哪些本篇内容主要讲解“zookeeper基础知识点有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“zookeeper基础知识点有哪些”吧

    攻略 2021年11月15日
  • ac是直流还是交流,电流里AC和DC分别代表什么

    技术ac是直流还是交流,电流里AC和DC分别代表什么AC 是英文Alternating Current 的首字母缩写,意为:交流电流,简称交流电 或交流; DC 是英文Direct Current 的首字母缩写,意为:直

    生活 2021年10月22日