mirror of https://gitee.com/topiam/eiam
⚡ 优化
parent
e14f2bd853
commit
2a4865b8ec
|
@ -22,12 +22,10 @@ import java.time.Instant;
|
||||||
import java.time.temporal.ChronoUnit;
|
import java.time.temporal.ChronoUnit;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
|
||||||
import cn.topiam.employee.common.util.X509Utils;
|
|
||||||
import cn.topiam.employee.protocol.jwt.exception.IdTokenGenerateException;
|
import cn.topiam.employee.protocol.jwt.exception.IdTokenGenerateException;
|
||||||
|
|
||||||
import io.jsonwebtoken.Jwts;
|
import io.jsonwebtoken.Jwts;
|
||||||
import io.jsonwebtoken.SignatureAlgorithm;
|
import static cn.topiam.employee.support.util.CertUtils.readPrivateKey;
|
||||||
import static cn.topiam.employee.protocol.jwt.constant.JwtProtocolConstants.S_ID;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
@ -43,15 +41,14 @@ public class JwtIdTokenGenerator implements IdTokenGenerator {
|
||||||
Instant issuedAt = Instant.now();
|
Instant issuedAt = Instant.now();
|
||||||
Instant expiresAt=issuedAt.plus(context.getIdTokenTimeToLive(),ChronoUnit.SECONDS);
|
Instant expiresAt=issuedAt.plus(context.getIdTokenTimeToLive(),ChronoUnit.SECONDS);
|
||||||
// 生成私钥
|
// 生成私钥
|
||||||
PrivateKey rsaPrivateKey = X509Utils.readPrivateKey(context.getPrivateKey(), "");
|
PrivateKey rsaPrivateKey = readPrivateKey(context.getPrivateKey(), "");
|
||||||
// 生成 JWT 令牌
|
// 生成 JWT 令牌
|
||||||
String tokenValue = Jwts.builder().setIssuer(context.getIssuer())
|
String tokenValue = Jwts.builder().issuer(context.getIssuer())
|
||||||
.setIssuedAt(new Date(issuedAt.toEpochMilli()))
|
.issuedAt(new Date(issuedAt.toEpochMilli()))
|
||||||
.setSubject(context.getSubject())
|
.subject(context.getSubject())
|
||||||
.setAudience(context.getAudience())
|
.audience().add(context.getAudience()).and()
|
||||||
.setExpiration(new Date(expiresAt.toEpochMilli()))
|
.expiration(new Date(expiresAt.toEpochMilli()))
|
||||||
.signWith(rsaPrivateKey, SignatureAlgorithm.RS256)
|
.signWith(rsaPrivateKey, Jwts.SIG.RS256)
|
||||||
.claim(S_ID,context.getSessionId())
|
|
||||||
.compact();
|
.compact();
|
||||||
return IdToken.builder().tokenValue(tokenValue)
|
return IdToken.builder().tokenValue(tokenValue)
|
||||||
.issuedAt(issuedAt)
|
.issuedAt(issuedAt)
|
||||||
|
|
Loading…
Reference in New Issue