实例讲解shiro登录认证和权限控制

怪我咯
怪我咯 原创
2017-06-23 11:59:21 1271浏览

一、实现类继承AuthorizingRealm

1、实现方法doGetAuthenticationInfo,将定义的用户实体类填充map,realmPrincipals;

2、实现方法doGetAuthorizationInfo,填充roles ,Permissions;

二,创建subject

提供SecurityUtils getSubject 方式创建,securityManager.createSubject,SubjectContext中进行确认map中已经存在securityManager,session以及PrincipalCollection,最后DefaultWebSubjectFactory创建webDelegatingSubject,并保存到session中。

三、登录验证

登录创建,DelegatingSubject login方法执行securityManager login,创建同第二步。

四、登出

DelegatingSubject logout方法执行securityManager logout,删除session中的subject,stop session。

五、关于ModularRealmAuthenticator

ModularRealmAuthenticator类在项目启动时setRealms(第一步中定义,不清楚为什么项目启动时注入),doSingleRealmAuthentication方法调用realm的doGetAuthorizationInfo

以上就是实例讲解shiro登录认证和权限控制的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。