🍸 모두가 함께 공유할 수 있는 칵테일 플랫폼
- 모든 사람이 칵테일 레시피를 조회할 수 있는 서비스
- 원하는 레시피를 찜할 수 있는 서비스
- 신뢰되는 사용자들의 의견 나눔 서비스
- 모든 사람이 인증 과정 없이 칵테일 레시피를 조회할 수 있습니다.
- 회원은 원하는 레시피를 찜하여 마이페이지에서 볼 수 있습니다.
- 회원은 모두와 소통할 수 있는 라운지를 이용할 수 있습니다.
- 회원가입, 로그인 및 로그아웃을 통해 회원 관리가 가능합니다.
- 마이페이지에서 닉네임을 수정하거나 찜목록을 볼 수 있습니다.
1️⃣ 레시피 조회
2️⃣ 원하는 레시피를 찜하고 해제하기
3️⃣ 라운지
4️⃣ 회원가입, 로그인 및 로그아웃
- 회원가입/로그인
- 로그아웃
5️⃣ 마이페이지
- 로그아웃 구현
- 문제: Front-end에서 토큰을 삭제해주는 방식이 보안상 문제가 될 수 있다고 판단
- 해결 방안: Back-end에서도 보안 유지를 위해 로그아웃 로직을 구현 로그아웃 요청이 오면 Refresh Token을 Redis에서 삭제 시킨 후 AccessToken을 BlackList로 Redis에 저장 로그아웃 후 해당 유저가 요청을 보낼 때 접근이 불가능하도록 구현
- 기존의 파일 구조를 도메인 별로 변경
- 문제: 비즈니스 도메인을 명확하게 구분하고 확정성, 유지보수성을 향상시킬 수 있도록 파일 구조 변경 필요
- 해결 방안: 도메인 별로 리팩토링 진행 불필요한 @EnableJpaRepositories, @EnableMongoRepositoies 삭제
- Spring Security 적용
- 문제: Spring Security가 적용되어 있지 않아 웹 응용 프로그램 및 서비스에서 보안을 효과적으로 관리하고 강화하기 위해 적용 필요
- 해결 방안: Spring Security 적용
Backend | Tech | Spring Boot Spring JPA Spring Security |
---|---|---|
Platform | Ubuntu | |
DB | AWS RDS(Mysql) Redis MongoDB | |
DevOps | AWS EC2 Docker |