东莞专业做网站,html5网站编写,哪里有做微商网站,东莞专业网络营销公司2019独角兽企业重金招聘Python工程师标准 上一篇答题梳理了jfinal整合shiro的流程#xff0c;jfinal读取shiro注解#xff0c;这一篇将作为补充。 1.JFinalShiroPlugin作者为shiro的RequiresRoles#xff0c;RequiresPermissions#xff0c; RequiresAuthent… 2019独角兽企业重金招聘Python工程师标准 上一篇答题梳理了jfinal整合shiro的流程jfinal读取shiro注解这一篇将作为补充。 1.JFinalShiroPlugin作者为shiro的RequiresRolesRequiresPermissions RequiresAuthenticationRequiresUserRequiresGuest注解分别都写了一个访问控制处理器如AuthenticatedAuthzHandlerGuestAuthzHandlerPermissionAuthzHandlerPermissionAuthzHandlerRoleAuthzHandler,UserAuthzHandler,这些类都继承了AbstractAuthzHandler并实现了AuthzHandler接口。CompositeAuthzHandler可以是以上类的组合。这些类的作用就是处理控制器和方法上的注解通过Subject subject getSubject();获取当前登录用户拥有的权限与注解进行对比如果注解的权限包含在拥有的权限则可以访问该控制器或方法。 2.这些访问控制处理器都在启动JFinalShiroPlugin插件的时候生成了实例和与之对应的actionKey.放在类型为ConcurrentMap的authzMaps变量中。通过调用 ShiroKit.init(authzMaps)方法使得这个变量成为系统全局变量。这里代码可参考上一篇ShiroPlugin插件最主要的start方法。 3.现在有了访问控制处理器实例及其对应的actionkey,可以通过拦截器拦截没有权限的用户操作控制器 转载于:https://my.oschina.net/u/2427561/blog/1524170