본문 바로가기

Before/Spring Boot

(3)
[SpringBoot] Spring security, JWT를 이용한 인증 기능 추가 기존에 간단하게 Request Body에 서버에서 각각 AES256, SHA256 알고리즘을 이용해 자동생성해준 유저별 아이디와 패스워드만으로 간단하게 로그인 기능을 구현해 두었었는데, 프로젝트 진행 과정에서 여러 기능들이 추가되고 대부분의 기능이 유저 정보를 거쳐서 비즈니스 로직을 수행해야 했기 때문에 애플리케이션이 더 커지기 전에 Spring Security를 적용해 인증 기능을 구현하기로 했다. 간단하게 이해한 내용. 인증 기능은 크게 비교적 전통적인 방식인 세션/쿠키 방식과 최근 개발되는 서비스들에서 많이 이용되는 토큰 방식으로 나뉘는데, 세션/쿠키 방식은 유저 정보를 클라이언트로부터 받아 고유한 아이디를 부여해 세션 저장소에 따로 관리하고 이후로부터 클라이언트는 요청에 쿠키를 추가해 인증을 요청..
[SpringBoot] Swagger 적용 이번 프로젝트는 백엔드를 내가 맡고 프론트엔드는 다른 친구가 개발하는 프로젝트이기에 API 문서 정리가 필요했다. 그 외에도 프로젝트 목표 달성 이후에도 계속 이어지는 서비스를 개발하고자 했기 때문에 이후에 내가 팀을 나오게 되더라도 후임 개발자가 서비스의 유지보수 및 추가기능 개발을 하는데 있어서도 도움을 주고자 Swagger를 이용해 프로젝트 초기부터 API 문서를 정리하기로 했다. Swagger - 스웨거(Swagger)는 개발자가 REST 웹 서비스를 설계, 빌드, 문서화, 소비하는 일을 도와주는 대형 도구 생태계의 지원을 받는 오픈 소스 소프트웨어 프레임워크이다. 대부분의 사용자들은 스웨거 UI 도구를 통해 스웨거를 식별하며 스웨거 툴셋에는 자동화된 문서화, 코드 생성, 테스트 케이스 생성 지원..
[SpringBoot] Spring Initializr Spring Boot를 이용해 현재 진행중인 프로젝트의 백엔드 애플리케이션을 구현하려고 한다. 먼저 Spring Initializr를 이용해 프로젝트를 셋팅하자. 다음 사이트에서 셋팅을 진행한다. https://start.spring.io/ Project는 Maven과 Gradle 중 하나를 선택할 수 있는데, 둘 다 프로젝트에 필요한 의존성 라이브러리를 자동으로 땡겨와 주는 빌드 도구이다. 추후 공부가 필요할 것 같다. 프로젝트를 진행하며 인프런에서 김영한님의 강의를 수강하며 진행하고 있으므로 Gradle Project를 선택한다. 현재 Maven 프로젝트들도 Gradle로 migration되고 있는 것들이 많다고 한다. Language는 Java Spring Boot 버전은 안정화 버전중 가장 최신 ..