반응형
3계층 구조의 서버환경에서 회원로그인 플로우를 정리한다.
> 작성일 : 2025-01-13
> Cloud : AWS
<1> 전체 플로우
- User(Browser) : 사용자가 브라우저를 통해 접근
- Frontend : 프리젠테이션 (Client Tier)
- Backend : 비즈니스 로직 (Application Tier)
- Database : 데이터 (Data Tier)
- SessionStore : 분산서버 환경에서 세션공유용 스토어
<2> 상세
<2-1> 사용자 로그인 요청
브라우저를 통해서 로그인폼이 전달된다.
Frontend : 사용자에게 로그인진행 화면을 제공
<2-2> 로그인 API 호출
입력정보가 전달되어 유효성 체크
Frontend : API 호출
Backend : DB를 통해 회원정보 조회
<2-3> 회원로그인 실패 처리
회원 조회불가, 비밀번호 불일치시 또는 기타 에러에 대한 처리
Backend : 비즈니스 로직에 의해 에러를 리턴한다
- httpStatus : 401 / 비밀번호 불일치, 토큰생성 불가, 토큰저장 불가
Frontend : 사용자에게 실패화면 제공
<2-4> 회원로그인 성공 처리
비밀번호가 일치하면 토큰을 생성하고 저장한다.
Backend :
- SessionStore에 회원세션 저장
- httpStatus : 200 / 회원로그인 성공
Frontend : 사용자에게 성공화면 제공 / 토큰을 암호화된 형태로 쿠키에 관리
Session Structure
- #1. Set Expire : 일정시간 미사용시 자동로그아웃을 위해 저장
- #2. Set AccessToken : 세션의 유효시간 만료를 위해 저장
- #3. Set RefreshToken : 세션의 연장가능시간 만료를 위해 저장
- #4. ReSet Token List : 세션수 제한을 위해 저장 (중복로그인 방지지)
- NoSQL(Redis)의 사용 / Pipeline구성
반응형
'Concept' 카테고리의 다른 글
[Concept | Auth] 회원인증 플로우 정리 (5) - RefreshToken 운용 (0) | 2025.01.13 |
---|---|
[Concept | Auth] 회원인증 플로우 정리 (4) - AccessToken 운용 (0) | 2025.01.13 |
[Concept | Auth] 회원인증 플로우 정리 (2) - 회원확인 (Verify) (0) | 2025.01.12 |
[Concept | Auth] 회원인증 플로우 정리 (1) - 회원가입 (SignUp) (0) | 2025.01.10 |
[Concept | DevOps] 도입 (0) | 2025.01.06 |