diff --git a/pom.xml b/pom.xml index 73720874..d54f8436 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ com.youlai youlai-boot - 2.10.0 + 2.12.1 基于 Java 17 + SpringBoot 3 + Spring Security 构建的权限管理系统。 diff --git a/src/main/java/com/youlai/boot/core/security/util/JwtUtils.java b/src/main/java/com/youlai/boot/core/security/util/JwtUtils.java index aef6df32..6a7ae6a3 100644 --- a/src/main/java/com/youlai/boot/core/security/util/JwtUtils.java +++ b/src/main/java/com/youlai/boot/core/security/util/JwtUtils.java @@ -70,14 +70,16 @@ public class JwtUtils { .collect(Collectors.toSet()); payload.put(JwtClaimConstants.AUTHORITIES, roles); - Date now = new Date(); - Date expiration = DateUtil.offsetSecond(now, ttl); payload.put(JWTPayload.ISSUED_AT, now); - payload.put(JWTPayload.EXPIRES_AT, expiration); + + // 设置过期时间 -1 表示永不过期 + if (ttl != -1) { + Date expiration = DateUtil.offsetSecond(now, ttl); + payload.put(JWTPayload.EXPIRES_AT, expiration); + } payload.put(JWTPayload.SUBJECT, authentication.getName()); payload.put(JWTPayload.JWT_ID, IdUtil.simpleUUID()); - return JWTUtil.createToken(payload, key); }