본문 바로가기

스프링5

Spring Boot의 Embedded Tomcat Spring Boot의 spring-boot-starter-web 모듈에 기본으로 포함되어 있는 embedded tomcat WAS(Web Application Server)에 대하여 알아보겠습니다. 기본적으로 Spring Boot에서 사용하는 Apache Tomcat은 Apache Web Server + Tomcat Server로 구성되어 있습니다. WAS vs Web Server Web Server 우선 WAS와 Web Server의 차이점부터 알아보겠습니다. Web Server는 클라이언트로부터 HTTP 요청을 받아 정적인 컨텐츠(.html, .jpg, .css, ...)를 제공하는 서버를 의미합니다. 즉 Web Server는 서버가 가지고 있는 특정 자원만을 반환하는 역할을 합니다. WAS WAS.. 2021. 6. 24.
Spring boot의 Resource Server 구현 이전 시간에 이어 Resource Server를 구현하여 Authorization Server로 부터 받은 access token의 유효성을 체크해보겠습니다. Resource Server는 이전 시간에 개발한 Authorization Server로 부터 받은 access token이 필요하므로 Resource Server를 구현하기 전에 Authorization Server를 먼저 구현하시는 걸 추천합니다. 프로젝트 생성 Authorization Server와 같이 start.spring.io 사이트를 이용하여 다음과 같이 프로젝트 설정을 하고 intellij로 해당 프로젝트를 시작하겠습니다. 프로젝트 설정이 완료되면 다음과 같이 추가 의존성 라이브러리들을 추가해줍니다. dependencies { imp.. 2021. 6. 24.
Spring boot의 Authorization Server 구현 이전 시간에 이어 Authorization Server를 구현하여 access token을 생성하는 것까지 구현해보겠습니다. IDE는 intellij를 사용했고 jdk는 8버전, gradle, jwt를 사용하였습니다. 프로젝트 생성 spring boot 프로젝트 설정은 start.spring.io 를 이용하였습니다. intellij를 사용하시면 메뉴의 new project를 클릭하여 Spring Initializr를 사용하시도 됩니다. 스프링 부트 설정은 아래 그림을 참고하여 설정하시고 다운받은 프로젝트를 intellij를 통해서 로딩합니다. 프로젝트 기본 설정이 완료되면 build.gradle.kts의 dependencies에 다음 코드를 추가합니다. dependencies { ... implement.. 2021. 6. 24.
Spring boot, kotlin 기반의 OAuth2 인증 서버 - 구글(firebase) 로그인 저번 시간에 이어서 firebase를 이용한 구글 로그인을 구현해보겠습니다. firebase 설정 구글 로그인을 설정하기 위해서 firebase를 이용합니다. firebase 콘솔에 들어가시면 다음과 같은 화면에서 "프로젝트 만들기"를 클릭합니다. 저는 프로젝트 이름을 "example-google-login"으로 설정하여 진행하였습니다. 나머지 부분은 진행을 눌러서 계속하시면 됩니다. 진행을 완료하면 다음과 같이 프로젝트 화면으로 들어갈 수 있는데, 여기서 사이드 메뉴의 "Authentication"의 "Sign-in method"에 들어가서 Google 로그인을 사용 설정합니다. 그 다음엔 아래 그림과 같이 설정을 클릭하여 프로젝트 설정으로 들어가서 아래 "내 앱" 부분의 "" 부분을 클릭하여 웹 앱을.. 2021. 6. 24.