春季安全检查是标题存在一些固定值

时间:2018-10-25 13:26:44

标签: java spring spring-security

假设我有spring boot rest服务,我想以这种简单的逻辑来确保这一点, 如果标题“ token”的值为“ 123456”,则请求很好,我应该对其进行处理, 如果没有,那么我应该发回未经授权的401 http错误。

如何在Spring Boot 1.5中实现此逻辑。

1 个答案:

答案 0 :(得分:2)

通过实现GenericFilterBean

public class CustomAuthenticationFilter extends GenericFilterBean {

    @Override
    public void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain) throws IOException, ServletException {
        // get header and validate from request object
        filterChain.doFilter(request, response);
    }
}

并将过滤器挂接到您的安全配置中。

@Override
protected void configure(HttpSecurity http) throws Exception {
    http.authorizeRequests()
            // other security config
            .addFilterBefore(new CustomAuthenticationFilter(), UsernamePasswordAuthenticationFilter.class);
}