org.apache.shiro.spring.web.ShiroFilterFactoryBean.getFilters()方法的使用及代码示例

x33g5p2x  于2022-01-30 转载在 其他  
字(5.6k)|赞(0)|评价(0)|浏览(195)

本文整理了Java中org.apache.shiro.spring.web.ShiroFilterFactoryBean.getFilters()方法的一些代码示例,展示了ShiroFilterFactoryBean.getFilters()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ShiroFilterFactoryBean.getFilters()方法的具体详情如下:
包路径:org.apache.shiro.spring.web.ShiroFilterFactoryBean
类名称:ShiroFilterFactoryBean
方法名:getFilters

ShiroFilterFactoryBean.getFilters介绍

[英]Returns the filterName-to-Filter map of filters available for reference when defining filter chain definitions. All filter chain definitions will reference filters by the names in this map (i.e. the keys).
[中]返回定义过滤器链定义时可供参考的过滤器的过滤器名称到过滤器映射。所有过滤器链定义都将根据此映射中的名称(即键)引用过滤器。

代码示例

代码示例来源:origin: apache/shiro

/**
 * Inspects a bean, and if it implements the {@link Filter} interface, automatically adds that filter
 * instance to the internal {@link #setFilters(java.util.Map) filters map} that will be referenced
 * later during filter chain construction.
 */
public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException {
  if (bean instanceof Filter) {
    log.debug("Found filter chain candidate filter '{}'", beanName);
    Filter filter = (Filter) bean;
    applyGlobalPropertiesIfNecessary(filter);
    getFilters().put(beanName, filter);
  } else {
    log.trace("Ignoring non-Filter bean '{}'", beanName);
  }
  return bean;
}

代码示例来源:origin: apache/shiro

Map<String, Filter> filters = getFilters();
if (!CollectionUtils.isEmpty(filters)) {
  for (Map.Entry<String, Filter> entry : filters.entrySet()) {

代码示例来源:origin: wuyouzhuguli/FEBS-Shiro

@Bean
public ShiroFilterFactoryBean shiroFilterFactoryBean(SecurityManager securityManager) {
  ShiroFilterFactoryBean shiroFilterFactoryBean = new ShiroFilterFactoryBean();        
  
  Map<String, Filter> filters = shiroFilterFactoryBean.getFilters();//获取filters
  filters.put("user", new CustomUserFilter());
  
  // 设置 securityManager
  shiroFilterFactoryBean.setSecurityManager(securityManager);
  // 登录的 url
  shiroFilterFactoryBean.setLoginUrl(febsProperties.getShiro().getLoginUrl());
  // 登录成功后跳转的 url
  shiroFilterFactoryBean.setSuccessUrl(febsProperties.getShiro().getSuccessUrl());
  // 未授权 url
  shiroFilterFactoryBean.setUnauthorizedUrl(febsProperties.getShiro().getUnauthorizedUrl());
  
  LinkedHashMap<String, String> filterChainDefinitionMap = new LinkedHashMap<>();
  // 设置免认证 url
  String[] anonUrls = StringUtils.splitByWholeSeparatorPreserveAllTokens(febsProperties.getShiro().getAnonUrl(), ",");
  for (String url : anonUrls) {
    filterChainDefinitionMap.put(url, "anon");
  }
  // 配置退出过滤器,其中具体的退出代码 Shiro已经替我们实现了
  filterChainDefinitionMap.put(febsProperties.getShiro().getLogoutUrl(), "logout");
  // 除上以外所有 url都必须认证通过才可以访问,未通过认证自动访问 LoginUrl
  filterChainDefinitionMap.put("/**", "user");
  shiroFilterFactoryBean.setFilterChainDefinitionMap(filterChainDefinitionMap);
  return shiroFilterFactoryBean;
}

代码示例来源:origin: org.apache.shiro/shiro-spring

/**
 * Inspects a bean, and if it implements the {@link Filter} interface, automatically adds that filter
 * instance to the internal {@link #setFilters(java.util.Map) filters map} that will be referenced
 * later during filter chain construction.
 */
public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException {
  if (bean instanceof Filter) {
    log.debug("Found filter chain candidate filter '{}'", beanName);
    Filter filter = (Filter) bean;
    applyGlobalPropertiesIfNecessary(filter);
    getFilters().put(beanName, filter);
  } else {
    log.trace("Ignoring non-Filter bean '{}'", beanName);
  }
  return bean;
}

代码示例来源:origin: tumao2/hdw-dubbo

Map<String, Filter> filtersMap = shiroFilterFactoryBean.getFilters();

代码示例来源:origin: yidao620c/SpringBootBucket

Map<String, Filter> filtersMap = shiroFilterFactoryBean.getFilters();
filtersMap.put("jwt", new JWTFilter());
shiroFilterFactoryBean.setFilters(filtersMap);

代码示例来源:origin: dqeasycloud/easy-cloud

/**
 * <p>
 * shiro过滤器工厂bean
 * </p>
 *
 * @param securityManager
 * @return org.apache.shiro.spring.web.ShiroFilterFactoryBean
 * @author daiqi
 * @date 2018/6/27 10:39
 */
@Bean
@Order(value = 0)
public ShiroFilterFactoryBean shiroFilter(SecurityManager securityManager, EcBaseAuthorityCustomFilterConfig customFilterConfig, EcSysFilterConfigService filterConfigService) throws Exception {
  ShiroFilterFactoryBean shiroFilterFactoryBean = shiroFilterFactoryBean();
  shiroFilterFactoryBean.setFilterChainDefinitionMap(filterConfigService.loadFilterChainDefinitions());
  shiroFilterFactoryBean.setSecurityManager(securityManager);
  shiroFilterFactoryBean.getFilters().putAll(customFilterConfig.customFilters());
  return shiroFilterFactoryBean;
}

代码示例来源:origin: tumao2/hdw-dubbo

Map<String, Filter> filtersMap = shiroFilterFactoryBean.getFilters();
shiroFilterFactoryBean.setFilters(filtersMap);

代码示例来源:origin: yidao620c/SpringBootBucket

Map<String, Filter> filtersMap = shiroFilterFactoryBean.getFilters();
KaptchaFilter kaptchaFilter = new KaptchaFilter();
filtersMap.put("kaptchaFilter", kaptchaFilter);

代码示例来源:origin: zzycreate/spring-boot-seed

Map<String, Filter> filtersMap = shiroFilterFactoryBean.getFilters();

代码示例来源:origin: chilexun/springboot-demo

/**
 * 设置过滤器
 */
@Bean("shiroFilter")
public ShiroFilterFactoryBean shiroFilter(SecurityManager securityManager, UserService userService) {
  ShiroFilterFactoryBean factoryBean = new ShiroFilterFactoryBean();
  factoryBean.setSecurityManager(securityManager);
  Map<String, Filter> filterMap = factoryBean.getFilters();
  filterMap.put("authcToken", createAuthFilter(userService));
  filterMap.put("anyRole", createRolesFilter());
  factoryBean.setFilters(filterMap);
  factoryBean.setFilterChainDefinitionMap(shiroFilterChainDefinition().getFilterChainMap());
  return factoryBean;
}

代码示例来源:origin: org.apache.shiro/shiro-spring

Map<String, Filter> filters = getFilters();
if (!CollectionUtils.isEmpty(filters)) {
  for (Map.Entry<String, Filter> entry : filters.entrySet()) {

相关文章