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

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

Introduction

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

Prototype

public void setSecurityManager(SecurityManager securityManager) 

Source Link

Document

Sets the application SecurityManager instance to be used by the constructed Shiro Filter.

Usage

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

License:Apache License

@Bean(name = "shiroFilter")
@DependsOn("securityManager")
@ConditionalOnMissingBean/*from ww  w .ja  va2 s  .c  om*/
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");

    /**/*from  w w w .  j ava  2 s  .  c  om*/
     * 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   w w  w  . j  a v  a 2s  .c o  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  w  w  .jav 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  o m*/
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.  j a v  a 2s . 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/*from w  w  w  .j a v  a  2s.  c om*/
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/*www. j  a v  a2 s  . co 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//w w w . j  av a 2 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;
}