org.apache.shiro.web.servlet.AbstractShiroFilter Java Examples
The following examples show how to use
org.apache.shiro.web.servlet.AbstractShiroFilter.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: RestShiroFilterFactoryBean.java From bootshiro with MIT License | 6 votes |
@Override protected AbstractShiroFilter createInstance() throws Exception { LOGGER.debug("Creating Shiro Filter instance."); SecurityManager securityManager = this.getSecurityManager(); String msg; if (securityManager == null) { msg = "SecurityManager property must be set."; throw new BeanInitializationException(msg); } else if (!(securityManager instanceof WebSecurityManager)) { msg = "The security manager does not implement the WebSecurityManager interface."; throw new BeanInitializationException(msg); } else { FilterChainManager manager = this.createFilterChainManager(); RestPathMatchingFilterChainResolver chainResolver = new RestPathMatchingFilterChainResolver(); chainResolver.setFilterChainManager(manager); return new RestShiroFilterFactoryBean.SpringShiroFilter((WebSecurityManager)securityManager, chainResolver); } }
Example #2
Source File: MyShiroFilterFactoryBean.java From springboot-shiro-cas-mybatis with MIT License | 6 votes |
@Override protected AbstractShiroFilter createInstance() throws Exception { SecurityManager securityManager = getSecurityManager(); if (securityManager == null){ throw new BeanInitializationException("SecurityManager property must be set."); } if (!(securityManager instanceof WebSecurityManager)){ throw new BeanInitializationException("The security manager does not implement the WebSecurityManager interface."); } PathMatchingFilterChainResolver chainResolver = new PathMatchingFilterChainResolver(); FilterChainManager chainManager = createFilterChainManager(); chainResolver.setFilterChainManager(chainManager); return new MySpringShiroFilter((WebSecurityManager)securityManager, chainResolver); }
Example #3
Source File: ShiroBundle.java From dropwizard-shiro with Apache License 2.0 | 6 votes |
/** * Create the Shiro filter. Overriding this method allows for complete customization of how Shiro is initialized. */ protected Filter createFilter(final T configuration) { ShiroConfiguration shiroConfig = narrow(configuration); final IniWebEnvironment shiroEnv = new IniWebEnvironment(); shiroEnv.setConfigLocations(shiroConfig.iniConfigs()); shiroEnv.init(); AbstractShiroFilter shiroFilter = new AbstractShiroFilter() { @Override public void init() throws Exception { Collection<Realm> realms = createRealms(configuration); WebSecurityManager securityManager = realms.isEmpty() ? shiroEnv.getWebSecurityManager() : new DefaultWebSecurityManager(realms); setSecurityManager(securityManager); setFilterChainResolver(shiroEnv.getFilterChainResolver()); } }; return shiroFilter; }
Example #4
Source File: ShiroBundle.java From dropwizard-shiro with Apache License 2.0 | 6 votes |
/** * Create the Shiro filter. Overriding this method allows for complete customization of how Shiro is initialized. */ protected Filter createFilter(final T configuration) { ShiroConfiguration shiroConfig = narrow(configuration); final IniWebEnvironment shiroEnv = new IniWebEnvironment(); shiroEnv.setConfigLocations(shiroConfig.iniConfigs()); shiroEnv.init(); AbstractShiroFilter shiroFilter = new AbstractShiroFilter() { @Override public void init() throws Exception { Collection<Realm> realms = createRealms(configuration); WebSecurityManager securityManager = realms.isEmpty() ? shiroEnv.getWebSecurityManager() : new DefaultWebSecurityManager(realms); setSecurityManager(securityManager); setFilterChainResolver(shiroEnv.getFilterChainResolver()); } }; return shiroFilter; }
Example #5
Source File: ShiroCasWebFilterConfiguration.java From shiro-cas-spring-boot-starter with Apache License 2.0 | 5 votes |
@Bean(name = "filterShiroFilterRegistrationBean") protected FilterRegistrationBean<AbstractShiroFilter> filterShiroFilterRegistrationBean() throws Exception { FilterRegistrationBean<AbstractShiroFilter> filterRegistrationBean = new FilterRegistrationBean<AbstractShiroFilter>(); filterRegistrationBean.setFilter((AbstractShiroFilter) shiroFilterFactoryBean().getObject()); filterRegistrationBean.setOrder(Ordered.LOWEST_PRECEDENCE); return filterRegistrationBean; }
Example #6
Source File: ShiroConfigService.java From layui-admin with MIT License | 5 votes |
/** * 更新权限,解决需要重启tomcat才能生效权限的问题 */ public void updatePermission() { try { HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); ServletContext servletContext = request.getSession().getServletContext(); AbstractShiroFilter shiroFilter = (AbstractShiroFilter) WebApplicationContextUtils.getRequiredWebApplicationContext(servletContext).getBean("myShiroFilter"); synchronized (shiroFilter) { // 获取过滤管理器 PathMatchingFilterChainResolver filterChainResolver = (PathMatchingFilterChainResolver) shiroFilter.getFilterChainResolver(); DefaultFilterChainManager manager = (DefaultFilterChainManager) filterChainResolver.getFilterChainManager(); // 清空初始权限配置 manager.getFilterChains().clear(); // 重新获取资源 Map<String, String> chains = loadFilterChainDefinitions(); for (Map.Entry<String, String> entry : chains.entrySet()) { String url = entry.getKey(); String chainDefinition = entry.getValue().trim().replace(" ", ""); manager.createChain(url, chainDefinition); } log.info("更新权限成功!!"); } } catch (Exception e) { log.error("更新权限到shiro异常", e); } }
Example #7
Source File: ShiroConfiguration.java From EasyEE with MIT License | 5 votes |
/** * 取消 Shiro Filter 的/*自动注册行为 * @param filter * @return */ @Bean public FilterRegistrationBean disableRegistrationShiroFilter(AbstractShiroFilter filter) { FilterRegistrationBean registration = new FilterRegistrationBean(filter); registration.setEnabled(false); return registration; }
Example #8
Source File: ShiroConfiguration.java From EasyEE with MIT License | 5 votes |
/** * 取消 Shiro Filter 的/*自动注册行为 * @param filter * @return */ @Bean public FilterRegistrationBean disableRegistrationShiroFilter(AbstractShiroFilter filter) { FilterRegistrationBean registration = new FilterRegistrationBean(filter); registration.setEnabled(false); return registration; }