Files
spring-security-study/src/main/java/com/example/springsecuritystudy/jwt/SigningKeyResolver.java
2023-02-08 12:20:14 +09:00

25 lines
645 B
Java

package com.example.springsecuritystudy.jwt;
import java.security.Key;
import io.jsonwebtoken.Claims;
import io.jsonwebtoken.JwsHeader;
import io.jsonwebtoken.SigningKeyResolverAdapter;
import lombok.RequiredArgsConstructor;
/**
* JwsHeader를 통해 Signature 검증에 필요한 Key를 가져오는 코드를 구현합니다.
*/
@RequiredArgsConstructor
public class SigningKeyResolver extends SigningKeyResolverAdapter {
private final JwtKey jwtKey;
@Override
public Key resolveSigningKey(JwsHeader jwsHeader, Claims claims) {
String kid = jwsHeader.getKeyId();
if (kid == null)
return null;
return jwtKey.getKey(kid);
}
}