Spring验证过滤器之前添加过滤器

时间:2014-07-14 15:06:29

标签: java spring spring-security

我需要在我的应用程序中实现REST Basic身份验证。其中请求将包含带有username:password加密到base64的值的标头。

我的应用程序使用DaoAuthenticationProvider。通过这种方式,提供商需要用户名和&密码以进行身份​​验证过程。

从身份验证过滤器的配置中,我看到过滤器有两个属性(usernameParameterpasswordParameter)。在我的情况下,用户名和密码不会作为参数发送,所以我想在验证处理过滤器之前有一个过滤器,它从请求头中检索所需的数据,然后将其传递给下一个过滤器。

我的问题:

  1. 这是进行休息基本身份验证的正确方法吗?或者还有其他方法吗?
  2. 在身份验证处理过滤器之前是否有自定义过滤器的示例?

1 个答案:

答案 0 :(得分:1)

您可能正在查看错误的过滤器,因为有一个已经执行HTTP基本身份验证的过滤器(请参阅例如docs here)。例如:

protected void configure(HttpSecurity http) throws Exception {
    http.authorizeRequests()
        .anyRequest().authenticated()
        .and()
     .httpBasic();
}