- 회원 관리 시스템 설계 및 구현
1) 회원DB와 도메인 설계 및 구현(Amazon RDS - MySQL) - Spring에서 JPA로 DB 생성 및 수정
2) 역할별 회원가입 - 유저정보 DB에서 정보 열람 하여 중복 검사
3) 로그인 - 유저정보 DB에서 정보 열람 하여 비교
4) 회원 정보 조회 - 마이페이지용 유저정보 조회
5) 회원 정보 수정 - 유저 정보 업데이트
6) 회원 탈퇴 - 유저 삭제
- JWT, 로그인 유지 및 권한 서비스 설계 및 구현
1) JWT 생성 및 발급 - 로그인 성공시 access, refresh 토큰 생성 및 발급
- XSS방어를 위한 cookie설정 - HttpOnly :true, Secure : true
2) 로그인 유지 서비스 - refresh 토큰 유효성 검사 및 access,refresh 토큰 갱신 및 발급
3) 토큰 정보 추출 - 토큰 정보 추출 수행하는 메서드 구현
4) JWT 커스텀 필터 - JWT 유효성 검사, 유저 권한 추출 및 만료, 조작 상황별 예외처리
- Spring Security를 이용한 권한별 매핑 필터링 설계 및 구현
1) 권한별 매핑 필터링 서비스 - 추출한 권한별 매핑 필터링 서비스 Configurer 구현
2) CSRF 방어 설정 - csrf.disable() 설정
- SSE를 이용한 서비스별 알림 기능 설계 및 구현
1) 구독 서비스 구현 - 로그인 한 유저 저장, 유실된 이벤트 재전송, 에러별 처리 구현
2) 도메인 - Build해서 이벤트 전송하기 위한 도메인
3) 기능별 이벤트 전송 - 데이터 타입, 기능별 이벤트 build 및 전송
4) 구조적 설계 - 구조적 역할별 클래스 설계
- WebFlux의 Reactor를 활용한 채팅 기능 설계 및 구현
1) 채팅DB 설계 및 구현 - Docker로 컨테이너화된 내장 도큐먼트 형식 MongoDB 설계 및 구현
1) 채팅방 생성 - 유저정보로 채팅방 생성 및 전송
2) 채팅 저장 - 채팅 입력시 DB에 저장
3) 채팅 이력 조회 - 해당 채팅방 이력 조회
4) 채팅 리스트 조회 - 모든 채팅방 정보 조회
- WebMvcConfigurer를 이용한 cors 설정 - React URL
- SystemArchitecture 설계
1) API Gateway 설계 및 구축 - CustomFilter를 이용한 인증 ,
WebClient를 이용하여 서버간 통신으로 구현
- AWS EC2 Ubuntu 환경에서 Git으로 유지, 보수와 개발
1) EC2 환경 구축
2) GIT - EC2환경과 Intellij 환경에서 GIT을 활용하여 개발 및 유지, 보수