以前做小网站把用户对象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已经帮你做好了
添加回答
举报
0/150
提交
取消