为了账号安全,请及时绑定邮箱和手机立即绑定

Java web 登录 使用shiro和基于session的方式有何不同?

Java web 登录 使用shiro和基于session的方式有何不同?

绝地无双 2019-03-21 18:19:29
以前做小网站把用户对象set 到session中来标识登录状态;最近学shiro 发现他的登录方式好像不太一样。请问具体区别是什么?两者的优缺点有哪些?
查看完整描述

2 回答

?
红颜莎娜

TA贡献1842条经验 获得超13个赞

session的确是一种很正确的登录方式,题主肯定是觉得为什么session这么简单的方式不用,要用Shiro这种框架来做登录?

首先,你的系统需要用户登录的目的一定是某些页面需要登录才能查看,那么在这些页面中是否都需要加上一个判断if(session.get(xxx) != null)判断,这样比较繁琐,简单一点应该加上一个Filter,根据URL来过滤用户,这样你需要写一个Filter。---- 这些Shiro已经帮你做好了

然后,你可能需要不同的用户有不同的权限,例如A用户可以修改数据,B用户只有权限查看数据。那么你需要设计一个用户组、权限,给每个方法或者URL加上判断,是否当前登录的用户满足条件。 ---- 这些Shiro已经帮你做好了

用户密码明文保存是不是安全,应不应该MD5加密,是不是应该加盐,你又要写密码加密的代码。 ---- 这些Shiro已经帮你做好了

很多网站带有“记住我”或者“下次自动登录”这样的功能,如果你去自己开发,估计又要花不少时间,还做得不一定安全。 ---- 这些Shiro已经帮你做好了


查看完整回答
1 反对 回复 2019-04-21
  • 2 回答
  • 0 关注
  • 1389 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号