美文网首页
04-oauth2-ResourceServer

04-oauth2-ResourceServer

作者: 16325 | 来源:发表于2020-06-17 15:48 被阅读0次

ResourceServer

资源服务器负责提供受保护资源,只是需要到授权服务器进行token验证。
所以,可以理解为我们的任意一个后台接口都是一个资源,资源服务器就对接口起到保护的作用。所以资源服务器一般集成到我们的微服务进程当中。maven可以是一个单独的模块,对其他的微服务模块进行保护。

  • 要访问资源服务器受保护的资源需要携带令牌(从授权服务器获得)
  • 客户端往往同时也是一个资源服务器,各个服务之间的通信(访问需要权限的资源)时需携带访问令牌
  • 资源服务器通过 @EnableResourceServer 注解来开启一个 OAuth2AuthenticationProcessingFilter 类型的过滤器
  • 通过继承 ResourceServerConfigurerAdapter 类来配置资源服务器

认证相关

首先,ResourceServerConfigurerAdapter会开启webSecurity,所以需要向spring-security一样,对http端点的保护进行配置

@Override
    public void configure(HttpSecurity http) throws Exception
    {
        http.csrf().disable();
        ExpressionUrlAuthorizationConfigurer<HttpSecurity>.ExpressionInterceptUrlRegistry registry = http
                .authorizeRequests();
        registry.anyRequest().authenticated();
    }

oauth2相关

其次,对于oauth2的token认证,通过以下方式进行。

@Override
    public void configure(ResourceServerSecurityConfigurer resources)  throws Exception {
        RemoteTokenServices tokenService = new RemoteTokenServices();
        tokenService.setCheckTokenEndpointUrl(URL);
        tokenService.setClientId("net5ijy");
        tokenService.setClientSecret("12345678");
        resources.tokenServices(tokenService);
    }

这里没有过多的配置,只是到认证服务器验证token,其余都是默认配置。

总结

经过以上的配置,就保护了所有的url,都需要进行token的认证,认证方式是去AuthorizationServer验证token

相关文章

  • 04-oauth2-ResourceServer

    ResourceServer 资源服务器负责提供受保护资源,只是需要到授权服务器进行token验证。所以,可以理解...

网友评论

      本文标题:04-oauth2-ResourceServer

      本文链接:https://www.haomeiwen.com/subject/hwjsxktx.html