일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 리프레시토큰
- 액세스토큰
- AWS
- githubactions
- yaml-resource-bundle
- Spring
- 오블완
- 티스토리챌린지
- 파이썬
- docker
- 재갱신
- 도커
- 스프링
- java
- springdataredis
- 스프링부트
- oauth2
- 토이프로젝트
- 데이터베이스
- springsecurity
- 스프링시큐리티
- springsecurityoauth2client
- 트랜잭션
- 백준
- CI/CD
- 메시지
- 국제화
- 소셜로그인
- 프로그래머스
- JIRA
- Today
- Total
목록2024/11/13 (4)
땃쥐네
회원가입 기능을 구현했으니, 이어서 로그인 기능을 구현해보겠습니다.1. 로그인 개요 - 세션과 토큰HTTP는 기본적으로 무상태 프로토콜입니다. 기존 사용자가 누구인지 HTTP 자체 사양만으로는 기억할 수 없어요. 그래서 존재하는 기능이 로그인입니다.사용자가 아이디(또는 이메일), 패스워드를 전달하고, 이후에 서버에 사용자가 다시 요청을 보낼 때는 사용자가 누구인지를 기억하도록 하기 위한 작업입니다. 그런데 서버 입장에서는 사용자가 누구인지 어떻게 기억하고 관리할까요? 1.1 세션방식 첫번째로 세션방식이 있습니다. 가장 많이 사용되는 방식인데요.한번 로그인 하면 서버는 사용자에게 sessionId 에 해당하는 쿠키를 발급하여, 사용자가 계속 요청을 할 때마다 쿠키를 보내게 합니다. 쿠키에 기입된 sessi..
이메일 인증 기능을 구현했으므로, 이어서 회원가입 기능을 구현해보겠습니다.1. 표현 계층(Api 모듈)@RestControllerclass RegisterMemberController( private val useCase: RegisterMemberUseCase, private val messageResolver: MessageResolver, private val localeManager: LocaleManager,) { @PostMapping("/api/v1/members") fun register(@RequestBody request: RegisterMemberRequest): ResponseEntity> { // 애플리케이션 서비스에 요청 처리를 위임 ..
지난 인증 이메일 발송 기능 구현 글에서 이어집니다.인증 코드 발송 기능은 구현했고, 이어서 이메일 인증을 실제로 해볼거에요.1. 표현계층(api 모듈)@RestControllerclass EmailVerificationController( private val useCase: EmailVerificationUseCase, private val messageResolver: MessageResolver, private val localeManager: LocaleManager,) { @PostMapping("/api/v1/members/email-verification") fun emailVerification(@RequestBody request: EmailVerificati..
1. 개요이메일 인증은 크게 두 가지 과정으로 구성됩니다. 사용자가 이메일 주소를 우리 서버에게 보내면, 우리서버가 해당 이메일 주소로 인증울 위한 코드를 포함한 이메일을 발송하는 과정사용자가 이메일을 통해 받은 코드를 우리 서버에 전달하여, 이메일 인증을 마무리 하는 과정이번 글에서는 1번째 기능을 구현해볼거에요. 2. 이메일 인증 시작 컨트롤러package com.ttasjwi.board.system.member.apiimport com.ttasjwi.board.system.core.api.SuccessResponseimport com.ttasjwi.board.system.core.locale.LocaleManagerimport com.ttasjwi.board.system.core.message.Me..