2023-04-16
This commit is contained in:
@@ -7,9 +7,17 @@
|
||||
|
||||
package kr.pe.elex.examples;
|
||||
|
||||
import io.jsonwebtoken.Header;
|
||||
import io.jsonwebtoken.Jwts;
|
||||
import io.jsonwebtoken.security.Keys;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import java.security.Key;
|
||||
import java.time.Instant;
|
||||
import java.time.temporal.ChronoUnit;
|
||||
import java.util.Base64;
|
||||
import java.util.Date;
|
||||
import java.util.Random;
|
||||
|
||||
import static org.junit.jupiter.api.Assertions.*;
|
||||
|
||||
@@ -17,6 +25,22 @@ class SampleTest {
|
||||
|
||||
@Test
|
||||
void test(){
|
||||
System.out.println(new String());
|
||||
byte[] key = new byte[32];
|
||||
new Random().nextBytes(key);
|
||||
final Key signingKey = Keys.hmacShaKeyFor(key);
|
||||
String jwt = Jwts.builder()
|
||||
.setHeaderParam(Header.TYPE, Header.JWT_TYPE)
|
||||
.setIssuer("Elex")
|
||||
.setExpiration(Date.from(Instant.now().plus(3, ChronoUnit.HOURS)))
|
||||
.claim("userId", 3)
|
||||
.signWith(signingKey)
|
||||
.compact();
|
||||
System.out.println(jwt);
|
||||
String issuer = Jwts.parserBuilder()
|
||||
.setSigningKey(signingKey)
|
||||
//.requireIssuer("Elex") // 토큰의 Issuer 일치 여부 확인
|
||||
.build()
|
||||
.parseClaimsJws(jwt).getBody().getIssuer();
|
||||
System.out.println(issuer);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user