我爱编程

三、Apache Shiro

2018-03-26  本文已影响0人  薛定谔的猫_1406

一、介绍

主要组件

二、身份认证

身份认证的流程

三、授权:访问控制,在应用中谁能访问哪些数据,比如访问页面、编辑数据、页面操作等。授权中主要包含以下对象:

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。

上一篇下一篇

猜你喜欢

热点阅读