Spring 安全检查是带有一些固定值的标头



假设我有弹簧启动休息服务,我想用这个简单的逻辑来保护它, 如果有值为"123456"的标头"token",则请求很好,我应该处理它, 如果没有,那么我应该发回未经授权的401 http错误。

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

通过实现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);
}

最新更新