|
@@ -6,41 +6,24 @@ import io.jsonwebtoken.ExpiredJwtException;
|
|
|
import io.jsonwebtoken.Jwts;
|
|
|
import io.jsonwebtoken.security.Keys;
|
|
|
import io.jsonwebtoken.security.SignatureException;
|
|
|
-import lombok.Getter;
|
|
|
-import org.springframework.beans.factory.annotation.Value;
|
|
|
|
|
|
import javax.crypto.SecretKey;
|
|
|
import java.util.Date;
|
|
|
import java.util.HashMap;
|
|
|
import java.util.Map;
|
|
|
|
|
|
+
|
|
|
public class JwtUtils {
|
|
|
- // 配置参数(可从配置中心读取)
|
|
|
+
|
|
|
// private static final String SECRET = "zfire@2025_base_code_security_key_123456"; // 64位HMAC-SHA512密钥
|
|
|
// private static final long EXPIRATION = 7200L; // 默认有效期2小时(秒)
|
|
|
// private static final String ISSUER = "base-code-system"; // 签发者
|
|
|
// HMAC-SHA512签名算法
|
|
|
// private static final SecretKey SECRET_KEY = Keys.hmacShaKeyFor(SECRET.getBytes());
|
|
|
|
|
|
- // 从配置中心读取参数(示例从application.yml读取)
|
|
|
- @Getter
|
|
|
- private static String secret;
|
|
|
- @Getter
|
|
|
- private static Long expiration;
|
|
|
-
|
|
|
- private static SecretKey secretKey;
|
|
|
-
|
|
|
- @Value("${jwt.secret}")
|
|
|
- public void setSecret(String secret) {
|
|
|
- JwtUtils.secret = secret;
|
|
|
- secretKey = Keys.hmacShaKeyFor(secret.getBytes());
|
|
|
- }
|
|
|
-
|
|
|
- @Value("${jwt.expiration}")
|
|
|
- public void setExpiration(Long expiration) {
|
|
|
- JwtUtils.expiration = expiration;
|
|
|
- }
|
|
|
-
|
|
|
+ private static final String secret = "uH31bHvL+P1jl5OvHfqLPhJDkfqHWIEL6e7HEpTMLozNAlGH88SUlXlWc7KK/SgWh1oZjvW7f8d43Bm0+J7hnw==";
|
|
|
+ private static final Long expiration = 7200L;
|
|
|
+ private static final SecretKey secretKey = Keys.hmacShaKeyFor(secret.getBytes());
|
|
|
|
|
|
/**
|
|
|
* 生成JWT令牌
|