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);
}
- 토큰 디코딩
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 |