List of usage examples for org.apache.shiro.web.filter.mgt DefaultFilterChainManager addFilter
public void addFilter(String name, Filter filter)
From source file:com.oakeel.shiro.PtpIniWebEnvironment.java
@Override protected FilterChainResolver createFilterChainResolver() { // FilterChainResolver //1? FilterChainResolver PathMatchingFilterChainResolver filterChainResolver = new PathMatchingFilterChainResolver(); //2? FilterChainManager DefaultFilterChainManager filterChainManager = new DefaultFilterChainManager(); //3? Filter// www . j ava 2 s . co m DefaultFilter[] filters = DefaultFilter.values(); for (DefaultFilter filter : filters) { filterChainManager.addFilter(filter.name(), (Filter) ClassUtils.newInstance(filter.getFilterClass())); } //4? URL-Filter filterChainManager.addToChain("/log.xhtml", "authc"); filterChainManager.addToChain("/unauthorized.xhtml", "anon"); filterChainManager.addToChain("/**", "authc"); filterChainManager.addToChain("/**", "roles", "admin"); //5? Filter FormAuthenticationFilter authcFilter = (FormAuthenticationFilter) filterChainManager.getFilter("authc"); authcFilter.setLoginUrl("/login.jsp"); RolesAuthorizationFilter rolesFilter = (RolesAuthorizationFilter) filterChainManager.getFilter("roles"); rolesFilter.setUnauthorizedUrl("/unauthorized.jsp"); filterChainResolver.setFilterChainManager(filterChainManager); return filterChainResolver; }
From source file:io.bootique.shiro.web.MappedShiroFilterFactory.java
License:Apache License
protected FilterChainResolver createChainResolver(Map<String, Filter> chainFilters) { DefaultFilterChainManager chainManager = new DefaultFilterChainManager(); // load filters chainFilters.forEach((name, filter) -> chainManager.addFilter(name, filter)); if (urls != null) { urls.forEach((url, value) -> { LOGGER.info("Loading url chain {} -> {}", url, value); chainManager.createChain(url, value); });//w w w .ja v a2 s .c o m } PathMatchingFilterChainResolver resolver = new PathMatchingFilterChainResolver(); resolver.setFilterChainManager(chainManager); return resolver; }
From source file:zcu.xutil.misc.ShiroFilterFactory.java
License:Apache License
public AbstractShiroFilter getShiroFilter() { DefaultFilterChainManager manager = new DefaultFilterChainManager(); for (Filter filter : manager.getFilters().values()) applyGlobalPropertiesIfNecessary(filter); for (Map.Entry<String, Filter> entry : filters.entrySet()) { applyGlobalPropertiesIfNecessary(entry.getValue()); manager.addFilter(entry.getKey(), entry.getValue()); }/*from w ww . java 2 s. c o m*/ Ini ini = new Ini(); ini.load(definitions); Ini.Section section = ini.getSection(IniFilterChainResolverFactory.URLS); if (CollectionUtils.isEmpty(section)) section = ini.getSection(Ini.DEFAULT_SECTION_NAME); for (Map.Entry<String, String> entry : section.entrySet()) manager.createChain(entry.getKey(), entry.getValue()); PathMatchingFilterChainResolver chainResolver = new PathMatchingFilterChainResolver(); chainResolver.setFilterChainManager(manager); return new XSFilter((WebSecurityManager) securityManager, chainResolver); }