博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
权限控制框架---shiro入门
阅读量:4886 次
发布时间:2019-06-11

本文共 747 字,大约阅读时间需要 2 分钟。

1、shiro控制权限的两种思想:粗粒度url级别,细粒度方法级别

2、shiro执行流程简介

 

 3、案例

3.1shiro控制用户登录实现,登录其实就是shiro中的认证。

(1)配置web.xml(shiro的filterFactory会去spring中找shiroFilter),配置spring分配置文件applicationContext-shiro.xml(shiroFilter,securityManager),在spring主配置文件中引入分配置文件。

(2)action中获取subject对象,创建认证token对象,调用subject.login(token),shiro底层会调用securityManger。

(3)编写Realm实现类,可以根据需要选择是实现Realm接口或继承某个实现类如AuthorizingRealm,实现某些方法如认证和授权的方法(登录只需要编写认证的代码,将授权空实现即可)

(4)调用业务层查询user,token中就可以获取到username,下面这句代码比较关键,shiro中的securityManger是查询出的用户密码直接比较的。当密码不一致就会抛出异常,所以在action中的subject.login代码处捕获异常即可,无异常就表示认证成功,登录成功,可以跳转主页;有异常就表示认证失败,可以直接让返回登录页面即可。

  return new SimpleAuthenticationInfo(user, user.getPassword(), getName());

3.2授权功能实现待续。。。

转载于:https://www.cnblogs.com/gongchengshixiaobai/p/8019442.html

你可能感兴趣的文章
第三章程序的机器级表示 学习报告
查看>>
在iOS应用中直接打开系统的“设置”
查看>>
hdu3306:Another kind of Fibonacci
查看>>
BZOJ1777: [Usaco2010 Hol]rocks 石头木头
查看>>
linux nginx 配置php
查看>>
vscode Gitlens插件 查看代码提交
查看>>
常用工具函数封装
查看>>
spring事务回滚异常问题总结
查看>>
leetcode子集和问题
查看>>
C# 值类型 VS 引用类型
查看>>
bootstrap中列的内容过多,使用省略号(.....)
查看>>
JS操作JSON总结
查看>>
SQL语句中&、单引号等特殊符号的处理
查看>>
VC项目配置基础[转]
查看>>
《大道至简》读后感
查看>>
C# 自定义控件制作和使用实例(winform)
查看>>
css3 filter属性在项目中的应用
查看>>
【LOJ】#2041. 「SHOI2015」聚变反应炉
查看>>
【BZOJ】3640: JC的小苹果
查看>>
【LOJ】#3031. 「JOISC 2019 Day1」聚会
查看>>