代码之家  ›  专栏  ›  技术社区  ›  KZcoding Tharun

如何使用AuthorizationServerSecurityConfiger?

  •  24
  • KZcoding Tharun  · 技术社区  · 7 年前

    我正在看一个Spring boot项目,它有以下代码:

    public void configure(AuthorizationServerSecurityConfigurer oauthServer) throws Exception {
        oauthServer
            .tokenKeyAccess("permitAll()")
            .checkTokenAccess("isAuthenticated()");
    }
    

    不幸的是,我在任何地方都找不到任何解释如何实际使用的资源(例如Google、Spring docs、Spring oauth docs) AuthorizationServerSecurityConfigurer . 此外,我不清楚到底是什么 tokenKeyAccess("permitAll()") checkTokenAccess("isAuthenticated()")

    1 回复  |  直到 7 年前
        1
  •  34
  •   derkoe    7 年前

    Spring Security OAuth公开了两个用于检查令牌的端点( /oauth/check_token /oauth/token_key

    因此,如果您想使用该端点验证令牌,则必须将其添加到授权服务器的配置中:

    @Override
    public void configure(AuthorizationServerSecurityConfigurer oauthServer) throws Exception {
        oauthServer.tokenKeyAccess("isAnonymous() || hasAuthority('ROLE_TRUSTED_CLIENT')")
                   .checkTokenAccess("hasAuthority('ROLE_TRUSTED_CLIENT')");
    }
    

    有关更多详细信息,请参阅 "Resource Server Configuration" section of the Spring Security OAuth2 documentation