From 332cf6c5fada54ad20a142b1a8f75517972de503 Mon Sep 17 00:00:00 2001 From: Jie Zheng <201507802@qq.com> Date: Tue, 18 Feb 2025 15:50:04 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E7=A7=BB=E9=99=A4JwtUserDto=E4=B8=AD?= =?UTF-8?q?=E7=9A=84=E5=AF=86=E7=A0=81=E5=AD=97=E6=AE=B5=EF=BC=8C=E7=A1=AE?= =?UTF-8?q?=E4=BF=9D=E5=AF=86=E7=A0=81=E4=B8=8D=E8=A2=AB=E5=BA=8F=E5=88=97?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/security/rest/AuthController.java | 4 ---- .../security/service/UserDetailsServiceImpl.java | 2 +- .../modules/security/service/dto/JwtUserDto.java | 11 ++++++----- .../zhengjie/modules/system/service/dto/UserDto.java | 1 - 4 files changed, 7 insertions(+), 11 deletions(-) diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/security/rest/AuthController.java b/eladmin-system/src/main/java/me/zhengjie/modules/security/rest/AuthController.java index 5665646f..5244508f 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/security/rest/AuthController.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/security/rest/AuthController.java @@ -100,8 +100,6 @@ public class AuthController { SecurityContextHolder.getContext().setAuthentication(authentication); // 生成令牌 String token = tokenProvider.createToken(jwtUser); - // 将密码设置为空 - jwtUser.setPassword(null); // 返回 token 与 用户信息 Map authInfo = new HashMap(2) {{ put("token", properties.getTokenStartWith() + token); @@ -121,8 +119,6 @@ public class AuthController { @GetMapping(value = "/info") public ResponseEntity getUserInfo() { JwtUserDto jwtUser = (JwtUserDto) SecurityUtils.getCurrentUser(); - // 将密码设置为空 - jwtUser.setPassword(null); return ResponseEntity.ok(jwtUser); } diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/security/service/UserDetailsServiceImpl.java b/eladmin-system/src/main/java/me/zhengjie/modules/security/service/UserDetailsServiceImpl.java index 1e0723d1..a28c9e7c 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/security/service/UserDetailsServiceImpl.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/security/service/UserDetailsServiceImpl.java @@ -55,7 +55,7 @@ public class UserDetailsServiceImpl implements UserDetailsService { // 获取用户的权限 List authorities = roleService.buildPermissions(user); // 初始化JwtUserDto - jwtUserDto = new JwtUserDto(user, dataService.getDeptIds(user), authorities, user.getPassword()); + jwtUserDto = new JwtUserDto(user, dataService.getDeptIds(user), authorities); // 添加缓存数据 userCacheManager.addUserCache(username, jwtUserDto); } diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/security/service/dto/JwtUserDto.java b/eladmin-system/src/main/java/me/zhengjie/modules/security/service/dto/JwtUserDto.java index 819a9bd4..9cc06270 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/security/service/dto/JwtUserDto.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/security/service/dto/JwtUserDto.java @@ -19,7 +19,6 @@ import com.alibaba.fastjson2.annotation.JSONField; import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; import lombok.Getter; -import lombok.Setter; import me.zhengjie.modules.system.service.dto.UserDto; import org.springframework.security.core.userdetails.UserDetails; import java.util.List; @@ -43,14 +42,16 @@ public class JwtUserDto implements UserDetails { @ApiModelProperty(value = "角色权限") private final List authorities; - @Setter - @ApiModelProperty(value = "密码") - private String password; - public Set getRoles() { return authorities.stream().map(AuthorityDto::getAuthority).collect(Collectors.toSet()); } + @Override + @JSONField(serialize = false) + public String getPassword() { + return user.getPassword(); + } + @Override @JSONField(serialize = false) public String getUsername() { diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/UserDto.java b/eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/UserDto.java index f8ee0b51..9ec68740 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/UserDto.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/system/service/dto/UserDto.java @@ -68,7 +68,6 @@ public class UserDto extends BaseDTO implements Serializable { @ApiModelProperty(value = "头像路径") private String avatarPath; - @JSONField(serialize = false) @ApiModelProperty(value = "密码") private String password;