Example usage for org.apache.shiro.spring.web ShiroFilterFactoryBean ShiroFilterFactoryBean

List of usage examples for org.apache.shiro.spring.web ShiroFilterFactoryBean ShiroFilterFactoryBean

Introduction

In this page you can find the example usage for org.apache.shiro.spring.web ShiroFilterFactoryBean ShiroFilterFactoryBean.

Prototype

public ShiroFilterFactoryBean() 

Source Link

Usage

From source file:cn.fh.starter.shiro.autoconfigure.ShiroAutoConfiguration.java

License:Apache License

@Bean(name = "shiroFilter")
@DependsOn("securityManager")
@ConditionalOnMissingBean//from w ww  .  jav a2  s  . c o  m
public ShiroFilterFactoryBean getShiroFilterFactoryBean(DefaultSecurityManager securityManager, Realm realm,
        ShiroFilterRegistry registry) {
    securityManager.setRealm(realm);

    Map<String, String> filterDef = swapKeyValue(properties.getFilterChainDefinitions());
    log.info("?: {}", filterDef);
    log.info(": {}", registry.getFilterMap());

    ShiroFilterFactoryBean shiroFilter = new ShiroFilterFactoryBean();
    shiroFilter.setSecurityManager(securityManager);
    shiroFilter.setLoginUrl(properties.getLoginUrl());
    shiroFilter.setSuccessUrl(properties.getSuccessUrl());
    shiroFilter.setUnauthorizedUrl(properties.getUnauthorizedUrl());

    shiroFilter.setFilterChainDefinitionMap(filterDef);
    shiroFilter.getFilters().putAll(registry.getFilterMap());

    return shiroFilter;
}

From source file:com.aegeus.core.AuthenticationConfiguration.java

License:Apache License

@Bean
public ShiroFilterFactoryBean shiroFilterBean() {
    Map<String, String> definition = new HashMap<>();
    definition.put("/", "authc, roles[admin]");
    definition.put("/login", "authc");

    /**/*w ww  .  j a v a2s.  co m*/
     * Create shiro servlet filter
     */
    ShiroFilterFactoryBean filter = new ShiroFilterFactoryBean();
    filter.setFilterChainDefinitionMap(definition);
    filter.setLoginUrl("/login");

    filter.setSecurityManager(securityManager());

    LogoutFilter logout = new LogoutFilter();
    logout.setRedirectUrl("/logout");

    Map<String, Filter> filters = new HashMap<>();
    filters.put("anon", new AnonymousFilter());
    filters.put("authc", new FormAuthenticationFilter());
    filters.put("logout", logout);
    filters.put("roles", new RolesAuthorizationFilter());
    filters.put("user", new UserFilter());

    filter.setFilters(filters);

    return filter;
}

From source file:com.carisok.ireports.config.security.shiro.ShiroAutoConfiguration.java

License:Apache License

@Bean(name = "shiroFilter")
@DependsOn("securityManager")
@ConditionalOnMissingBean//from ww  w  .jav a2 s  . co m
public ShiroFilterFactoryBean getShiroFilterFactoryBean(DefaultSecurityManager securityManager, Realm realm) {
    MyRealm myRealm = (MyRealm) realm;
    securityManager.setRealm(myRealm);

    ShiroFilterFactoryBean shiroFilter = new ShiroFilterFactoryBean();
    shiroFilter.setSecurityManager(securityManager);
    shiroFilter.setLoginUrl(properties.getLoginUrl());
    shiroFilter.setSuccessUrl(properties.getSuccessUrl());
    shiroFilter.setUnauthorizedUrl(properties.getUnauthorizedUrl());
    shiroFilter.setFilterChainDefinitionMap(properties.getFilterChainDefinitions());
    return shiroFilter;
}

From source file:com.cuisongliu.springboot.shiro.autoconfig.ShiroAutoConfig.java

License:Open Source License

@Bean
public ShiroFilterFactoryBean shiroFilterFactoryBean(DefaultWebSecurityManager webSecurityManager,
        UserInfoFilter userInfoFilter) {
    ShiroFilterFactoryBean shiroFilterFactoryBean = new ShiroFilterFactoryBean();
    shiroFilterFactoryBean.setSecurityManager(webSecurityManager);
    Map<String, Filter> filterMap = new HashMap<>();
    if (springShiroProperties.getEnableServer()) {
        filterMap.put("authc", serverAuthenticationFilter());
    } else {/*from w  ww. j  av  a2 s  .  c o  m*/
        filterMap.put("authc", clientAuthenticationFilter());
    }
    filterMap.put("sysUser", userInfoFilter);
    shiroFilterFactoryBean.setFilters(filterMap);

    String urlPrefix = springShiroProperties.getAppSuperLocal();

    shiroFilterFactoryBean.setSuccessUrl(urlPrefix + springShiroProperties.getSuccessUrl());
    shiroFilterFactoryBean.setLoginUrl(urlPrefix + springShiroProperties.getLoginUrl());
    shiroFilterFactoryBean.setUnauthorizedUrl(urlPrefix + springShiroProperties.getUnauthorizedUrl());

    shiroFilterFactoryBean.setFilterChainDefinitionMap(springShiroProperties.getFilterChainDefinitions());
    return shiroFilterFactoryBean;
}

From source file:com.github.boyazuo.spring.boot.autoconfigure.ShiroAutoConfiguration.java

License:Apache License

@Bean(name = "shiroFilter")
@DependsOn("securityManager")
@ConditionalOnMissingBean//from  w w w . ja v  a2  s  .  c om
public ShiroFilterFactoryBean getShiroFilterFactoryBean(DefaultSecurityManager securityManager, Realm realm) {
    securityManager.setRealm(realm);

    ShiroFilterFactoryBean shiroFilter = new ShiroFilterFactoryBean();
    shiroFilter.setSecurityManager(securityManager);
    shiroFilter.setLoginUrl(properties.getLoginUrl());
    shiroFilter.setSuccessUrl(properties.getSuccessUrl());
    shiroFilter.setUnauthorizedUrl(properties.getUnauthorizedUrl());
    shiroFilter.setFilterChainDefinitionMap(properties.getFilterChainDefinitions());
    return shiroFilter;
}

From source file:com.github.ibole.infrastructure.web.security.spring.shiro.config.ShiroConfig.java

License:Apache License

/**
 * ?web.xmlDelegatingFilterProxy?filter/*from   w w  w .jav a2  s. c  om*/
 * spring? id="shiroFilter"bean??.
 * 
 */
@Bean(name = "shiroFilter")
public ShiroFilterFactoryBean setShiroFilterFactoryBean(DefaultWebSecurityManager securityManager) {
    ShiroFilterFactoryBean shiroFilterFactoryBean = new ShiroFilterFactoryBean();
    //  SecurityManager
    shiroFilterFactoryBean.setSecurityManager(securityManager);
    //Returns the URL to which users should be redirected if they are denied access to an underlying path or resource
    shiroFilterFactoryBean.setUnauthorizedUrl("/unauthorized");
    // ?Web"/login.jsp"?
    shiroFilterFactoryBean.setLoginUrl("/api/v1/auth/authenticate");
    // shiroFilterFactoryBean.setUnauthorizedUrl("/403");

    loadShiroFilters(shiroFilterFactoryBean);
    loadShiroFilterChain(shiroFilterFactoryBean);
    return shiroFilterFactoryBean;
}

From source file:com.github.pires.example.ShiroConfiguration.java

License:Apache License

@Bean
public ShiroFilterFactoryBean shiroFilter() {
    ShiroFilterFactoryBean factoryBean = new ShiroFilterFactoryBean();
    factoryBean.setSecurityManager(securityManager());
    return factoryBean;
}

From source file:com.iyihua.commerce.web.auth.config.shiro.ShiroAutoConfiguration.java

License:Apache License

@Bean(name = "shiroFilter")
@DependsOn("securityManager")
@ConditionalOnMissingBean//w ww .  j a va  2 s  .c  o  m
public ShiroFilterFactoryBean getShiroFilterFactoryBean(DefaultSecurityManager securityManager, Realm realm) {
    MyRealm myRealm = (MyRealm) realm;
    securityManager.setRealm(myRealm);

    //       session,????session
    String enableShare = properties.getEnableShareJsession();
    if (enableShare != null && enableShare.equals(enableShare)) {
        DefaultWebSessionManager sessionManager = (DefaultWebSessionManager) securityManager
                .getSessionManager();
        Cookie c = new SimpleCookie();
        c.setDomain(properties.getDomain());
        c.setPath(properties.getPath());
        c.setName(properties.getShareJsessionKey());
        c.setHttpOnly(true);
        sessionManager.setSessionIdCookie(c);
    }

    ShiroFilterFactoryBean shiroFilter = new ShiroFilterFactoryBean();
    shiroFilter.setSecurityManager(securityManager);
    shiroFilter.setLoginUrl(properties.getLoginUrl());
    shiroFilter.setSuccessUrl(properties.getSuccessUrl());
    shiroFilter.setUnauthorizedUrl(properties.getUnauthorizedUrl());
    shiroFilter.setFilterChainDefinitionMap(properties.getFilterChainDefinitions());
    return shiroFilter;
}

From source file:com.iyihua.commerce.web.seller.config.shiro.ShiroAutoConfiguration.java

License:Apache License

@Bean(name = "shiroFilter")
@DependsOn("securityManager")
@ConditionalOnMissingBean//from   ww  w . j a  v  a2  s .  c  o  m
public ShiroFilterFactoryBean getShiroFilterFactoryBean(DefaultSecurityManager securityManager, Realm realm) {
    MyRealm myRealm = (MyRealm) realm;
    securityManager.setRealm(myRealm);

    //       session,????session
    String enableShare = properties.getEnableShareJsession();
    if (enableShare != null && enableShare.equals(enableShare)) {
        DefaultWebSessionManager sessionManager = (DefaultWebSessionManager) securityManager
                .getSessionManager();
        Cookie c = new SimpleCookie();
        c.setDomain(properties.getDomain());
        c.setPath(properties.getPath());
        c.setName(properties.getShareJsessionKey());
        c.setHttpOnly(true);
        sessionManager.setSessionIdCookie(c);
    }

    ShiroFilterFactoryBean shiroFilter = new ShiroFilterFactoryBean();
    Map<String, Filter> filters = shiroFilter.getFilters();
    filters.put("super", new MyFormAuthenticationFilter());
    shiroFilter.setSecurityManager(securityManager);
    shiroFilter.setLoginUrl(properties.getLoginUrl());
    shiroFilter.setSuccessUrl(properties.getSuccessUrl());
    shiroFilter.setUnauthorizedUrl(properties.getUnauthorizedUrl());
    shiroFilter.setFilterChainDefinitionMap(properties.getFilterChainDefinitions());
    return shiroFilter;
}

From source file:com.iyihua.itimes.config.security.shiro.ShiroAutoConfiguration.java

License:Apache License

@Bean(name = "shiroFilter")
@DependsOn("securityManager")
@ConditionalOnMissingBean//from   w  w w . ja  v a2 s  .c  o m
public ShiroFilterFactoryBean getShiroFilterFactoryBean(DefaultSecurityManager securityManager, Realm realm) {
    MyRealm myRealm = (MyRealm) realm;
    //      HashedCredentialsMatcher credentialsMatcher = new HashedCredentialsMatcher();
    //      credentialsMatcher.setHashAlgorithmName(Md5Hash.ALGORITHM_NAME);
    //      myRealm.setCredentialsMatcher(credentialsMatcher);

    securityManager.setRealm(myRealm);

    // session,????session
    //      String enableShare = properties.getEnableShareJsession();
    //      if (enableShare != null && enableShare.equals(enableShare)) {
    //         DefaultWebSessionManager sessionManager = (DefaultWebSessionManager) securityManager.getSessionManager();
    //         Cookie c = new SimpleCookie();
    //         c.setDomain(properties.getDomain());
    //         c.setPath(properties.getPath());
    //         c.setName(properties.getShareJsessionKey());
    //         c.setHttpOnly(true);
    //         sessionManager.setSessionIdCookie(c);
    //      }

    ShiroFilterFactoryBean shiroFilter = new ShiroFilterFactoryBean();
    shiroFilter.setSecurityManager(securityManager);
    shiroFilter.setLoginUrl(properties.getLoginUrl());
    shiroFilter.setSuccessUrl(properties.getSuccessUrl());
    shiroFilter.setUnauthorizedUrl(properties.getUnauthorizedUrl());
    shiroFilter.setFilterChainDefinitionMap(properties.getFilterChainDefinitions());
    return shiroFilter;
}