본문 바로가기

spring boot

(6)
spring boot async 비동기 통신이 되지 않는 경우 해결 방법은 2가지다. 1. Controller에서 @PreAuthorized를 사용한다. 2. SecurityConfig에서 csrf ignore 처리를 해준다. .and() .csrf().ignoringAntMatchers("/email/confirm/**") 참고 : https://stackoverflow.com/questions/31746466/spring-security-always-returns-http-403
Jenkins Webhook, Github push하면 자동 빌드 하기 Jenkins와 Github가 연동된 상태에서 Webhook 설정을 하면, Github push 시 Jenkins가 자동 빌드되도록 설정 가능합니다. 1. Jenkins 설정 ① github integration 플러그인설치 Jenkins 관리 → 플러그인 관리 → github integration 설치 ② GitHub hook trigger for GITScm polling 체크 Jenkins Item → 구성 → 빌드 유발 → ② GitHub hook trigger for GITScm polling 체크 → 저장 2. Github 설정 ① Github Repository 프로젝트 Settings → Webhooks → Add webhook ② Payload URL 입력 (http://젠킨스주소/git..
Jenkins, Spring Boot Gradle 프로젝트 Jar 파일 배포 Jenkins, Jar 파일 배포 순서 Spring Boot Gradle 프로젝트의 Jar 파일을 Jenkins에서 배포하는 과정은 다음과 같습니다. 1. Jenkins 플러그인 설치 2. Jenkins Gradle 설정 3. Jenkins Item 빌드 1. Jenkins 플러그인 설치 ① Jenkins 관리 → 플러그인 관리 ② Gradle, Post build task 플러그인이 설치되었는지 확인(Installed plugins)하고 없다면 설치(Available plugins) - Gradle: Gradle 빌드를 위한 플러그인 - Post build task: 빌드 로그 성공 확인 후 batch/shell 실행하는 플러그인 2. Jenkins Gradle 설정 ① Jenkins 관리 → Glob..
Spring Boot 프로젝트 SSL 인증서로 https 적용하기 1. Let's Encrypt Certbot Docker Image로 SSL 인증서 발급 받기 웹 페이지의 보안을 위해 사용되는 https은 SSL 인증서가 필요합니다. Let's Encrypt는 무료 SSL 발급 인증 기관으로 Certbot Docker Image를 제공하고 있어, 이를 활용하면 SSL 인증서를 발급 받을 수 있습니다. 우선, SSL 인증서 발급을 위해 Docker 설치, 서버 인증에 필요한 도메인 준비가 선행되어야 하며, 관련 내용은 생략하고 발급 방법을 알아보겠습니다. 참고로, Let's Encrypt를 이용하여 SSL 인증서를 발급받는 방법은 3가지입니다. ① Webroot : 외부 웹 사이트에서 해당 호스트 서버에 접근하여 검증. 도메인 호스트 서버에 사용자(개발자)가 설정한 W..
spring boot 시작 시 java 버전이 17로 자동 설정되는 경우 build.gradle의 springframewokr.boot version을 확인해봅시다. version 3.0.0 이상을 사용하면 java 1.8을 사용하지 못하고 17로 자동 변경되며, thymeleaf-extras-springsecurity5 gradle 빌드 시 에러 발생합니다. version 2.x.x로 다시 프로젝트 생성하면 java 1.8 또는 11로 잘 설정되는 것을 확인할 수 있습니다. springframewokr.boot version 3.0.0은 개발 중인 최신 버전이라 java17만 사용되는 듯 합니다. 참고링크 https://stackoverflow.com/questions/72677959/spring-thymeleaf-security-secauthentication-not-wo..
Spring Boot 프로젝트에 https 연결을 위한 무료 ssl 적용 방법 API 사용을 위한 URL 등록이나 여러 이유로 도메인, https로만 작성을 해야하는 경우가 있다. Spring Boot에서 jar파일로 배포를 하면 http로 접속을 하게 되므로 SSL 인증서 발급과 적용 과정이 필요하다. 1. let's encrypt SSL 인증서 발급 ① 미리 도메인을 구입한 서버가 필요. ② 터미널에서 ssl 인증서를 발급받을 경로를 생성하고 이동. ③ 우선 SSL 인증을 위한 Certbot tool을 설치. $ sudo apt update $ sudo apt-get install letsencrypt -y ④ 웹서버를 중단. $ sudo service nginx stop ⑤ certbot 명령을 이용해 SSL 인증을 시작. $ certbot certonly --standalo..