【发布时间】:2018-10-19 12:01:10
【问题描述】:
我想在 Mule 3 中实现一个安全过滤器,从 Spring Security 扩展 OncePerRequestFilter。但我无法使其工作,因为尚未获得身份验证代码。
这是在 mule xml 上注册过滤器的代码。
<spring:bean id="requestContextFilter" class="com.sample.authentication.BeforeBasicAuthFilter"/>
<ss:http entry-point-ref="restAuthenticationEntryPoint">
<ss:custom-filter ref="requestContextFilter" before="FIRST"/>
</ss:http>
public class BeforeBasicAuthFilter extends OncePerRequestFilter {
private HttpServletRequest request;
public HttpServletRequest getRequest() {
return request;
}
public void setRequest(HttpServletRequest request) {
this.request = request;
}
@Override
protected void doFilterInternal(HttpServletRequest request,
HttpServletResponse response, FilterChain filterChain)
throws ServletException, IOException {
this.request = request;
System.out.println("XXXX ");
filterChain.doFilter(request, response);
}
}
我相信该过滤器未注册以供 http 侦听器或身份验证管理器使用。 Mule 中是否有办法注册要在 http 侦听器上使用的过滤器?我的目标是我应该能够在身份验证发生之前拦截原始 http 请求。
【问题讨论】:
标签: spring spring-security mule