From eb9668cfd9e05e06d6571eac389d7a4968354c14 Mon Sep 17 00:00:00 2001 From: 于紫祥_1901 <email@yuzixiang_1910> Date: Tue, 10 Nov 2020 14:56:35 +0800 Subject: [PATCH] 标准公式显示 --- src/main/java/com/moral/security/endpoint/RefreshTokenEndpoint.java | 12 +++++++----- 1 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/moral/security/endpoint/RefreshTokenEndpoint.java b/src/main/java/com/moral/security/endpoint/RefreshTokenEndpoint.java index 2ad722d..7a1be18 100644 --- a/src/main/java/com/moral/security/endpoint/RefreshTokenEndpoint.java +++ b/src/main/java/com/moral/security/endpoint/RefreshTokenEndpoint.java @@ -1,7 +1,7 @@ package com.moral.security.endpoint; import com.moral.entity.Account; -import com.moral.security.auth.JwtAuthenticationToken; +import com.moral.entity.Role; import com.moral.security.auth.login.LoginMode; import com.moral.security.model.token.JwtTokenFactory; import com.moral.security.auth.jwt.extractor.TokenExtractor; @@ -14,6 +14,8 @@ import com.moral.security.model.token.RawAccessJwtToken; import com.moral.security.model.token.RefreshToken; import com.moral.service.AccountService; + +import org.apache.commons.collections.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.http.MediaType; @@ -69,10 +71,10 @@ // ���refresh token��� ������������������ LoginMode mode = LoginMode.valueOf(refreshToken.getClaims().getBody().get("mode").toString()); Account account = accountService.queryAccountByName(subject).orElseThrow(() -> new UsernameNotFoundException("User not found: " + subject)); - - if (account.getRoles() == null) throw new InsufficientAuthenticationException("User has no roles assigned"); - List<GrantedAuthority> authorities = account.getRoles().stream() - .map(authority -> new SimpleGrantedAuthority(authority.getName())) + List<Role> roleList = accountService.getRolesByAccountName(account.getAccountName()); + if (CollectionUtils.isEmpty(roleList)) throw new InsufficientAuthenticationException("User has no roles assigned"); + List<GrantedAuthority> authorities = roleList.stream() + .map(authority -> new SimpleGrantedAuthority(authority.getRoleName())) .collect(Collectors.toList()); UserContext userContext = UserContext.create(account.getAccountName(),mode,account.getOrganizationId(),authorities); -- Gitblit v1.8.0