Nginx를 사용하여 https로 Spring boot 프로젝트 배포하기
·
Backend
개요이번에 유레카에서 진행한 유유상종 프로젝트는 세션 로그인 방식을 채택하였기 때문에 백엔드를 https로 배포하여야 했다.https://github.com/SongMinQQ/UUSangJong GitHub - SongMinQQ/UUSangJong: LG유플러스 유레카 2기 미니프로젝트 경매 플랫폼 유유상종LG유플러스 유레카 2기 미니프로젝트 경매 플랫폼 유유상종. Contribute to SongMinQQ/UUSangJong development by creating an account on GitHub.github.com본 글에서는 nginx를 사용하여 호스팅 서버에서 Spring boot 프로젝트를 https로 배포하는 방법에 대해 기술하였다.443번 포트와 80번 포트를 미리 포트포워딩 해두는 것..
Spring Security를 사용하여 요청 권한 설정하기
·
Backend
개요이전에 유레카 미니프로젝트에서 진행한 Spring Boot 프로젝트를 배포하였는데 설계 미스로 인한 보안 문제가 발생했다.미니프로젝트의 주제는 유레카 부트캠프 사람들간의 경매 서비스이며, 서버에서는 회원가입&로그인, 입찰 등록&조회, 판매글 등록&조회&수정&삭제, 회원 정보 수정, 공지사항 등록&삭제 기능을 한다. 보안이 우려되는 부분은 다음과 같다.사용자가 특정 권한을 가지고 있지 않아도 endpoint와 요청 데이터만 일치한다면 원하는 결과를 얻을 수 있는 문제.이는 결국 로그인을 하지 않아도 로그인 한 사용자만 이용할 수 있는 서비스에 요청을 할 수 있다는 것을 의미하였고, 더 나아가 관리자 권한이 필요한 요청이라도 요청 데이터만 일치하다면 원하는 결과를 얻을 수 있다는 것을 의미한다.서버에서 ..
호스팅 서버에서 Spring boot 프로젝트 배포하기
·
기타
개요원격 호스팅 서버에서 Spring boot 프로젝트를 배포하는 과정을 정리해 보았다. VS code에서 원격 접속이 필요하므로 REMOTE - SSH 확장 플러그인을 설치해야 한다.프로젝트 빌드 파일 생성먼저 로컬 환경에서 프로젝트 빌드를 해야 한다. Spring boot 프로젝트의 경우 프로젝트 내에서 다음 명령어로 빌드를 실행한다.gradle build// 위 명령어 안될 경우./gradlew build -x test 빌드에 성공할 경우 다음 메세지와 함께 프로젝트 내부에 jar 확장자의 빌드 파일이 생성된다.빌드 파일의 경로는 다음과 같다.[프로젝트 루트]/[프로젝트 패키지명]/build/libs위와 같은 빌드 파일이 생성된다. 맨 위의 파일로 배포를 수행할 것이다.원격 서버에 빌드 파일 옮기기..