From 6590012517b6a5eedf1eaad7941d90629306c848 Mon Sep 17 00:00:00 2001 From: lbw Date: Wed, 14 Dec 2022 16:14:16 +0800 Subject: [PATCH] =?UTF-8?q?:recycle:=20Refactoring=20code.=20=E8=BF=81?= =?UTF-8?q?=E7=A7=BB=20Spring=20Authorization=20Server?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../CustomMagicDesignerAuthorizationInterceptor.java | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/pigx-visual/pigx-codegen/src/main/java/com/pig4cloud/pigx/codegen/config/CustomMagicDesignerAuthorizationInterceptor.java b/pigx-visual/pigx-codegen/src/main/java/com/pig4cloud/pigx/codegen/config/CustomMagicDesignerAuthorizationInterceptor.java index 243bc5a2c..8222d822c 100644 --- a/pigx-visual/pigx-codegen/src/main/java/com/pig4cloud/pigx/codegen/config/CustomMagicDesignerAuthorizationInterceptor.java +++ b/pigx-visual/pigx-codegen/src/main/java/com/pig4cloud/pigx/codegen/config/CustomMagicDesignerAuthorizationInterceptor.java @@ -7,9 +7,9 @@ import org.springframework.http.HttpHeaders; import org.springframework.security.access.AccessDeniedException; import org.springframework.security.core.GrantedAuthority; import org.springframework.security.oauth2.common.OAuth2AccessToken; -import org.springframework.security.oauth2.provider.OAuth2Authentication; +import org.springframework.security.oauth2.core.OAuth2AuthenticatedPrincipal; import org.springframework.security.oauth2.provider.authentication.OAuth2AuthenticationDetails; -import org.springframework.security.oauth2.provider.token.ResourceServerTokenServices; +import org.springframework.security.oauth2.server.resource.introspection.OpaqueTokenIntrospector; import org.ssssssss.magicapi.core.context.MagicUser; import org.ssssssss.magicapi.core.interceptor.Authorization; import org.ssssssss.magicapi.core.interceptor.AuthorizationInterceptor; @@ -32,7 +32,7 @@ public class CustomMagicDesignerAuthorizationInterceptor implements Authorizatio private final static String MAGIC_AUTHORITY = "gen_api_designer"; - private final ResourceServerTokenServices tokenServices; + private final OpaqueTokenIntrospector opaqueTokenIntrospector; /** * 配置是否需要登录 @@ -52,8 +52,9 @@ public class CustomMagicDesignerAuthorizationInterceptor implements Authorizatio throw new AccessDeniedException("权限不足"); } - OAuth2Authentication oAuth2Authentication = tokenServices.loadAuthentication(accessToken); - Collection authorities = oAuth2Authentication.getAuthorities(); + OAuth2AuthenticatedPrincipal introspect = opaqueTokenIntrospector.introspect(accessToken); + + Collection authorities = introspect.getAuthorities(); // 查询权限 return authorities.stream().anyMatch(authority -> MAGIC_AUTHORITY.equals(authority.getAuthority())); }