Shiro笔记(二)Shiro集成SpringMVC的环境配置
0.pom文件引入
1.在web.xml中配置Shiro的过滤器
DelegatingFilterProxy作用是自动到spring容器查找 名字为shiroFilter(filter-name)的bean并把所有Filter的操作委托给它。 然后将ShiroFilter配置到spring容器即可.
DelegatingFilterProxy实际上是一个filter的代理对象,默认情况下,Spring会到IOC容器中查找和对应的bean.也可以通过targetBeanName的初始化参数来配置filter bean的id.
2.在Spring-shiro.xml中配置
1.配置SecurityManager.
Realm实现 域 安全数据源 我们认证和权限信息都是从Realm获取的(继承自org.apache.shiro.realm)
一个自定义的Redis缓存管理器(自定义类继承自org.apache.shiro.cache.CacheManager)
Shiro提供了完整的企业级会话管理功能,不依赖于底层容器(如web容器tomcat), 不管JavaSE还是JavaEE环境都可以使用,提供了会话管理、会话事件监听、会话存储/持久化、容器无关的集群、失效/过期支持、对Web的透明支持、SSO单点登录的支持等特性。即直接使用Shiro的会话管理可以直接替换如Web容器的会话管理 Shiro提供了三个默认实现: DefaultSessionManager:DefaultSecurityManager使用的默认实现,用于JavaSE环境; ServletContainerSessionManager:DefaultWebSecurityManager使用的默认实现,用于Web环境,其直接使用Servlet容器的会话; DefaultWebSessionManager:用于Web环境的实现,可以替代ServletContainerSessionManager,自己维护着会话,直接废弃了Servlet容器的会话管理。
2.配置lifecycleBeanPostProcessor 可以自动的来调用配置在Spring IOC 容器中 shiro bean的生命周期方法.
3.启动IOC容器中使用Shiro的注解.但必须配置了lifecycleBeanPostProcessor后才可以调用.
4.MethodInvokingFactoryBean (???)
5 加密
6.Shiro的Web过滤器
6.1 bean的id必须和web.xml文件中配置的DelegatingFilterProxy的一致.
/static/** = anon
/admin/addSysUser.action=anon
/admin/logout.action =logout
/admin/** = user

浙公网安备 33010602011771号