一、介绍
主要组件二、身份认证
身份认证的流程三、授权:访问控制,在应用中谁能访问哪些数据,比如访问页面、编辑数据、页面操作等。授权中主要包含以下对象:
3.1 主体(Subject):访问应用的用户。用户只有授权后才能访问相应的资源。
3.2 资源(Resource):在应用中用户可以访问的资源
3.3 权限:在应用程序中明确的申明了被允许的行为和表现。清晰的表现用户对该资源拥有的权限。通常的做法是将权限分配给某个角色,然后角色关联一个或多个用户
3.4 角色:一个角色拥有一个权限的集合,授权验证时需要判断当前角色是否拥有该权限
授权的流程图四、权限拦截
权限拦截五、会话管理
会话管理的类图 权限缓存的类图六、Shiro Case
6.1 新建spring boot项目,并引入依赖包。这里主要是如下两个依赖包
org.apache.shiro
shiro-core
1.2.3
org.apache.shiro
shiro-spring
1.2.3
6.2 新建User类、Permission类、Role类,如下:
6.3 实现认证和授权相关的类:自定义AuthRealm,继承AuthorizingRealm。
6.4 实现密码验证功能的重写
6.5 加载以上的配置文件
6.6 在授权的类里我们在SimpleAuthorizationInfo里注入了RoleList。然后在ShiroFilter里做如下配置,即可完成不同角色访问不同接口的Case。
网友评论