start.spring.io에서 아래와 같이 프로젝트를 하나 생성하자
jwt의 형태는 아래와 같다.
헤더와 페이로드를 base64로 인코딩하고, 헤더+페이로드+비밀키로 시그니처를 생성하고 다시 base64로 인코딩한다.
이걸 직접 만들어 볼 것이다!!
// https://mvnrepository.com/artifact/com.auth0/java-jwt
implementation group: 'com.auth0', name: 'java-jwt', version: '3.10.2'
server.port=8080
server.servlet.context-path=/
server.servlet.encoding.charset=UTF-8
server.servlet.encoding.enabled=true
server.servlet.encoding.force=true
spring.datasource.url=
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.username=
spring.datasource.password=
spring.h2.console.enabled=true
spring.jpa.hibernate.ddl-auto=create
spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
spring.jpa.show-sql=true
@RestController
public class RestApiController {
@GetMapping("home")
public String home() {
return "<h1>home<h1>";
}
}