Cute Running Puppy
본문 바로가기
개발일기/Java

스프링부트 jwt토큰 사용 시 설정

by 징구짱 2023. 3. 4.
728x90

build.gradle 추가 (추가 후 꼭 코끼리 누르기)

compileOnly group: 'io.jsonwebtoken', name: 'jjwt-api', version: '0.11.2'
runtimeOnly group: 'io.jsonwebtoken', name: 'jjwt-impl', version: '0.11.2'
runtimeOnly group: 'io.jsonwebtoken', name: 'jjwt-jackson', version: '0.11.2'

정규화

implementation 'org.springframework.boot:spring-boot-starter-validation'

 

application.properties 추가

jwt.secret.key=7ZWt7ZW0OTntmZTsnbTtjIXtlZzqta3snYTrhIjrqLjshLjqs4TroZzrgpjslYTqsIDsnpDtm4zrpa3tlZzqsJzrsJzsnpDrpbzrp4zrk6TslrTqsIDsnpA=

 

 

 

 

// Header KEY 값
public static final String AUTHORIZATION_HEADER = "Authorization";
// 사용자 권한 값의 KEY
public static final String AUTHORIZATION_KEY = "auth";
// Token 식별자
private static final String BEARER_PREFIX = "Bearer ";
// 토큰 만료시간
private static final long TOKEN_TIME = 60 * 60 * 1000L;

@Value("${jwt.secret.key}") // application.properties에 설정한 키값을 사용할 수 있음
private String secretKey;
private Key key;
private final SignatureAlgorithm signatureAlgorithm = SignatureAlgorithm.HS256;

@PostConstruct
public void init() {
byte[] bytes = Base64.getDecoder().decode(secretKey);
key = Keys.hmacShaKeyFor(bytes);
}

 

  • 토큰 디코딩

https://jwt.io/

 

JWT.IO

JSON Web Tokens are an open, industry standard RFC 7519 method for representing claims securely between two parties.

jwt.io

 

728x90

'개발일기 > Java' 카테고리의 다른 글

Spring Security 프로젝트 설정  (0) 2023.03.11
스프링부트 Swagger 사용법  (0) 2023.03.09
영속성 컨텍스트  (0) 2023.03.04
IntelliJ 프로젝트 자동 실행  (1) 2023.02.28
Postman 사용  (0) 2023.02.27