kidgrow-springcloud/kidgrow-springcloud-zuul/src/main/java/com/kidgrow/zuul/filter/OrganizationFilter.java
@@ -17,10 +17,11 @@ import org.springframework.cloud.netflix.zuul.filters.support.FilterConstants; import org.springframework.security.authentication.AnonymousAuthenticationToken; import org.springframework.security.core.Authentication; import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.security.core.context.SecurityContextImpl; import org.springframework.security.oauth2.provider.OAuth2Authentication; import org.springframework.stereotype.Component; import javax.servlet.http.HttpServletRequest; import java.util.*; import static org.springframework.cloud.netflix.zuul.filters.support.FilterConstants.PRE_DECORATION_FILTER_ORDER; @@ -63,7 +64,14 @@ @SneakyThrows @Override public Object run() { Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); //Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); RequestContext currentContext = RequestContext.getCurrentContext(); //获取request对象 HttpServletRequest request = currentContext.getRequest(); //security会把一个SecurityContextImpl对象存储到session中,此对象中有当前用户的各种资料 SecurityContextImpl securityContextImpl = (SecurityContextImpl) request .getSession().getAttribute("SPRING_SECURITY_CONTEXT"); Authentication authentication = securityContextImpl.getAuthentication(); if (authentication != null && !(authentication instanceof AnonymousAuthenticationToken)) { Object principal = authentication.getPrincipal(); RequestContext ctx = RequestContext.getCurrentContext(); kidgrow-springcloud/kidgrow-springcloud-zuul/src/main/java/com/kidgrow/zuul/filter/UserInfoHeaderFilter.java
@@ -18,7 +18,7 @@ import org.springframework.cloud.netflix.zuul.filters.support.FilterConstants; import org.springframework.security.authentication.AnonymousAuthenticationToken; import org.springframework.security.core.Authentication; import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.security.core.context.SecurityContextImpl; import org.springframework.security.oauth2.provider.OAuth2Authentication; import org.springframework.stereotype.Component; @@ -63,7 +63,16 @@ @SneakyThrows @Override public Object run() { Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); // Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); RequestContext currentContext = RequestContext.getCurrentContext(); //获取request对象 HttpServletRequest request = currentContext.getRequest(); SecurityContextImpl securityContextImpl = (SecurityContextImpl) request .getSession().getAttribute("SPRING_SECURITY_CONTEXT"); Authentication authentication = securityContextImpl.getAuthentication(); if (authentication != null && !(authentication instanceof AnonymousAuthenticationToken)) { Object principal = authentication.getPrincipal(); RequestContext ctx = RequestContext.getCurrentContext();