[개발환경] M2 OSX Ventura 13.2.1 VS Code SpringBoot 3.0.2 OpenJDK 17 Gradle 7.6 [Docker] - mysql:latest 들어가며 Spring Session과 JWT는 둘 다 스프링 부트 애플리케이션에서 인증과 세션 관리를 위해 사용될 수 있지만, 서로 다른 방식으로 작동한다. 앞선 포스트에서 Spring Session에 대해서 설명하고 직접 구현해 보았다. 2023.03.08 - [DEV/SpringBoot] - [SpringBoot3] 로그인 페이지 실습 1 JWT는 서버와 클라이언트 간의 인증에 사용되며, 클라이언트에서 토큰을 생성하고 서버에서 검증한다. JWT는 사용자 정보와 권한 정보를 포함할 수 있으며, 서버 측에서 세션을 저장하거나 관..
[개발환경] M2 OSX Ventura 13.2.1 VS Code SpringBoot 3.0.2 OpenJDK 17 Gradle 7.6 [Docker] - mysql:latest 들어가며 SpringBoot3에서 Spring Session과 JWT를 이용한 인증, 인가 로직을 구현하고 발생할 수 있는 취약점을 분석한다. Spring Session과 JWT는 둘 다 스프링 부트 애플리케이션에서 인증과 세션 관리를 위해 사용될 수 있지만, 서로 다른 방식으로 작동한다. Spring Session은 세션 데이터를 저장하기 위한 다양한 저장소(예: Redis, MongoDB, JDBC 등)를 지원하며, 서버 측에서 세션을 관리한다. Spring Security와 함께 사용할 때, Spring Session은 인..
문제 Could not run phased build action using connection to Gradle distribution 오류 발생하면서 Gradle 빌드가 되지 않는 오류 발생 해결 gradle 버전이 일치하지 않아서 발생하는 문제이며, gradle 경로에서 사용하지 않는 버전을 삭제한다. (또는 설치된 모든 gradle을 모두 삭제한 후 새로 build를 하면 자동으로 선언되어 있는 버전을 새로 다운받는다.) Windows: C:\Users\[UserName]\.gradle\wrapper\dists OSX: ~/.gradle/wrapper/dists 이후에 Gradle에서 Build를 다시 수행한다. 참고 https://stackoverflow.com/questions/68321708..
[개발환경] M2 OSX Ventura 13.0.1 VS Code SpringBoot 3.0.2 Java 11 Gradle 1. MySQL DB Docker image 내려받기 docker pull mysql docker run --name mysqldb -e MYSQL_ROOT_PASSWORD=Password -e MYSQL_DATABASE=mydb -d -p 3306:3306 mysql:latest docker container ls 명령으로 실행중인 컨테이너 확인할 수 있다. 2. [SpringBoot3] 의존성 추가 build.gradle 파일에 mysql 연결을 위한 의존성을 추가한다. JSP으로 작업할 때에는 직접 드라이버를 찾아서 설치해줘야 했는데 한 줄 추가만 하면 된다. implement..
@Last Update 23.02.20 [개발환경] M2 OSX Ventura 13.0.1 SpringBoot 3.0.2 Gradle [개발도구] VS Code 1. springdoc-openapi(Swagger) 적용하기 spring boot프로젝트의 API 문서 생성을 자동으로 생성해 준다. springdoc-openapi는 실행 시 응용 프로그램을 검사해서 spring 구성, 클래스 구조 등 다양한 주석과 어노테이션을 기반으로 API 의미를 추론한다. 가장 많이 사용하는 Springfox Swagger를 사용하였으나 Spring버전이 맞지 않아서 인지 에러와 함께 404에러가 발생했다. Spring 2 에서는 localhost:8080/swagger-ui.html Spring 3에서는 localho..