shiro 获取SecurityManager的方法

1.shiro核心对象SecurityManager。
获取该对象的两种方法:

//通过工厂模式获取
//读取ini数据源文件,获取securityManager工厂
        Factory<SecurityManager> factory=new IniSecurityManagerFactory("classpath:jdbc_realm.ini");
        //获取securityManager
        SecurityManager securityManager=factory.getInstance();
        SecurityUtils.setSecurityManager(securityManager);
Realm realm=//instantiate or acquire a Realm instance.  We'll discuss Realms later.
SecurityManager securityManager=new DefaultSecurityManager(realm);
SecurityUtils.setSecurityManager(securityManager);

securityManager实质:实现了嵌套安全组件的模块化对象图;因为它兼容java-bean组件,所以你能调用getter()和setter()方法,来配置securityManager它的内部对象图;例如:如果想要配置securityManager实例用来自定义sessionDAO去进行session会话管理;则可以sessionDAO使用嵌套的SessionManager setSessionDAO()方法直接设置;

SecurityManager securityManager=new DefaultSecurityManager(realm);
SessionDAO sessionDAO=new CustomSessionDAO();
((DefaultSessionManager)securityManager.getSessionManager()).setSessionDao(sessionDAO);

猜你喜欢

转载自blog.csdn.net/qq_36938933/article/details/79062786