首页 文章

对于受OAuth 2保护的Spring Boot REST API,如何在将请求转发给方法之前拦截访问令牌?

提问于
浏览
0

对于提供受OAuth 2保护的REST API的基于Spring Boot的Web应用程序,如何在将请求转发给方法之前拦截访问令牌?

详细说明

该应用程序由 @EnableResourceServer 作为资源服务器启用,其API受OAuth 2保护(特别是Cloud Foundry用户帐户和身份验证) .

现在,对于使用 @RequestMapping 的方法的任何请求,它需要从OAuth 2获取的访问令牌 . 例如,

卷曲-H“授权:持票人[令牌]”[api]

要实现细粒度的访问控制,

在请求到达时,我想解析访问令牌,并基于访问令牌的内容(具体地, Scope )向前或拒绝请求前进,希望在中心位置(可能是 Inteceptor ) . 怎么实现呢?

1 回答

  • 1

    您可以在身份验证之前添加自定义筛选器

    例如

    @Configuration
    public class CustomWebSecurityConfigurerAdapter
      extends WebSecurityConfigurerAdapter {
    
        @Override
        protected void configure(HttpSecurity http) throws Exception {
            http.addFilterBefore(
              new CustomFilter(), BasicAuthenticationFilter.class);
        }
    }
    

    http://www.baeldung.com/spring-security-custom-filter

相关问题