手动触发FilterChainProxy

时间:2017-01-09 16:37:39

标签: java spring spring-security

我手动创建了一个新的SpringChainProxy:

GridView

考虑到我有一个新的HttpServletRequest,我想检查针对自定义FilterChainProxy的请求。像这样:

private FilterChainProxy getCustomFilterChainProxy()
{
    List<SecurityFilterChain> securityFilterChains = new ArrayList<SecurityFilterChain>();
    securityFilterChains.add(new DefaultSecurityFilterChain( new AntPathRequestMatcher("/**"), new MyFilter1()));
    securityFilterChains.add(new DefaultSecurityFilterChain( new AntPathRequestMatcher("/admin/**"), new MyFilter2()));

    return new FilterChainProxy(securityFilterChains);      
}

但是我正在努力正确定义doFilter()方法的第3个参数中使用的FilterChain。

我该怎么做?

感谢。

1 个答案:

答案 0 :(得分:0)

为什么不编写集成测试,使用MockMvc .apply(SecurityMockMvcConfigurers.springSecurity()) Here是一个关于集成MockMvc和SpringSecurity的帖子的链接。

它非常有用,允许您测试登录和受保护的服务。在我尝试查看它是否在浏览器中运行之前,我经常发现自己正在编写/修改测试。