Class ShiroConfig

java.lang.Object
net.mingsoft.config.ShiroConfig

@Configuration public class ShiroConfig extends Object
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator
    开启Shiro的注解(如@RequiresRoles , @RequiresPermissions),需借助SspringAOP扫描使用Sshiro注解的类,并在必要时进行安全逻辑验证 配置以下两个bean(Defaul tAdvisorAutoProxyCreator和uthorizat ionAttributeSourceAdvisor)即可实现此功能
    org.apache.shiro.spring.security.interceptor.AuthorizationAttributeSourceAdvisor
    authorizationAttributeSourceAdvisor(org.apache.shiro.mgt.SecurityManager securityManager)
    开启shiro aop注解支持 使用代理方式;所以需要开启代码支持
    自定义身份认证 realm;
    org.apache.shiro.web.session.mgt.DefaultWebSessionManager
    重写defaultWebSessionManager,防止url拼接jsessionid
    org.apache.shiro.spring.security.interceptor.AuthorizationAttributeSourceAdvisor
    getAuthorizationAttributeSourceAdvisor(org.apache.shiro.web.mgt.DefaultWebSecurityManager securityManager)
     
    org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator
     
    org.apache.shiro.session.mgt.eis.MemorySessionDAO
     
    org.apache.shiro.web.servlet.SimpleCookie
     
    管理登录策略
    管理员菜单策略
    org.apache.shiro.web.servlet.SimpleCookie
    cookie对象
    org.apache.shiro.web.mgt.CookieRememberMeManager
    cookie管理对象
    org.apache.shiro.web.mgt.DefaultWebSecurityManager
    securityManager(org.apache.shiro.web.session.mgt.DefaultWebSessionManager sessionManager)
    注入 securityManager
    org.apache.shiro.spring.web.ShiroFilterFactoryBean
    shirFilter(org.apache.shiro.mgt.SecurityManager securityManager)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • ShiroConfig

      public ShiroConfig()
  • Method Details

    • advisorAutoProxyCreator

      @Bean public org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator advisorAutoProxyCreator()
      开启Shiro的注解(如@RequiresRoles , @RequiresPermissions),需借助SspringAOP扫描使用Sshiro注解的类,并在必要时进行安全逻辑验证 配置以下两个bean(Defaul tAdvisorAutoProxyCreator和uthorizat ionAttributeSourceAdvisor)即可实现此功能
    • authorizationAttributeSourceAdvisor

      @Bean public org.apache.shiro.spring.security.interceptor.AuthorizationAttributeSourceAdvisor authorizationAttributeSourceAdvisor(org.apache.shiro.mgt.SecurityManager securityManager)
      开启shiro aop注解支持 使用代理方式;所以需要开启代码支持
      Parameters:
      securityManager -
    • getAuthorizationAttributeSourceAdvisor

      @Bean public org.apache.shiro.spring.security.interceptor.AuthorizationAttributeSourceAdvisor getAuthorizationAttributeSourceAdvisor(@Autowired(required=false) org.apache.shiro.web.mgt.DefaultWebSecurityManager securityManager)
    • getDefaultAdvisorAutoProxyCreator

      @Bean public org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator getDefaultAdvisorAutoProxyCreator()
    • shirFilter

      @Bean(name="shiroFilterFactoryBean") public org.apache.shiro.spring.web.ShiroFilterFactoryBean shirFilter(org.apache.shiro.mgt.SecurityManager securityManager)
    • securityManager

      @Bean("securityManager") public org.apache.shiro.web.mgt.DefaultWebSecurityManager securityManager(org.apache.shiro.web.session.mgt.DefaultWebSessionManager sessionManager)
      注入 securityManager
    • defaultWebSessionManager

      @Bean public org.apache.shiro.web.session.mgt.DefaultWebSessionManager defaultWebSessionManager()
      重写defaultWebSessionManager,防止url拼接jsessionid
      Returns:
    • rememberMeCookie

      public org.apache.shiro.web.servlet.SimpleCookie rememberMeCookie()
      cookie对象
      Returns:
    • rememberMeManager

      public org.apache.shiro.web.mgt.CookieRememberMeManager rememberMeManager()
      cookie管理对象
      Returns:
    • getMemorySessionDAO

      @Bean public org.apache.shiro.session.mgt.eis.MemorySessionDAO getMemorySessionDAO()
    • getSimpleCookie

      @Bean public org.apache.shiro.web.servlet.SimpleCookie getSimpleCookie()
    • customRealm

      @Bean public ManagerAuthRealm customRealm()
      自定义身份认证 realm;

      必须写这个类,并加上 @Bean 注解,目的是注入 CustomRealm, 否则会影响 CustomRealm类 中其他类的依赖注入

    • modelStrategy

      @Bean public IModelStrategy modelStrategy()
      管理员菜单策略
      Returns:
    • loginStrategy

      @Bean public ILoginStrategy loginStrategy()
      管理登录策略
      Returns: