最近在搭建项目,研究了jwt与shiro,参考了一些开源的项目,总结出了以下几点:

1.在基于token的验证前提下,jwt与shiro基本上是一样的

2.shiro的优势在于基于session的单点登录权限管理,在前后端不分离的情况下是具有优势的,但是在前后端完全分离的情况下会因为session的缺点产生相应的缺点

3.在使用token的情况下,都会出现允许同一用户的多端登录情况,因为服务器的token是不会主动过期的,除非用户登陆之后直接重置token,废弃原有的token

基于以上总结想法基本如下:

如果项目完全前后分离的设计,jwt与shiro区别不大,都可以满足需求;

如果是完全不分离,纯cms或后台管理类,基于shiro强大的权限管理,最好是使用shiro;

如果项目前后不分离,又要提供对外的api,可以选择两种同时使用,或者只使用shiro,将shiro设计为支持session与token两种行为的模式

posted on 2020-07-31 14:56  lsz0210  阅读(5937)  评论(0编辑  收藏  举报