inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

호돌맨의 요절복통 개발쇼 (SpringBoot, Vue.JS, AWS)

로그아웃 기능

해결된 질문

722

fksfks015

작성한 질문수 2

1

안녕하세요 호돌맨님

강의 너무 잘 듣고 있습니다. 다름이 아니라 로그아웃 기능에 대해서 질문이 있습니다.

@PostMapping("/auth/logout")
public ResponseEntity<Object> logout(UserSession userSession) {
   ResponseCookie cookie = ResponseCookie.from("SESSION", "")
      .path("/")
      .maxAge(0)
      .build();

   return ResponseEntity.ok()
      .header(HttpHeaders.SET_COOKIE, cookie.toString())
      .build();
}

현재 컨트롤러만 만들었고 쿠키 maxAge에 0값을 주는 방법으로 로그아웃 되는 건 확인했습니다.

궁금한 건 로그아웃 할 때 user가 가지고 있는 session 리스트와 sessionRepository에서

session을 지워주는 것이 맞는지 궁금합니다. 만약 지워주는 방식으로 한다며 자동으로 만료되는 쿠키에

session에 대해선 어떻게 처리하나요?

 

spring-boot jpa

답변 2

1

호돌맨

안녕하세요. 호돌맨입니다.
답변이 늦어서 죄송합니다.

로그인/로그아웃 기능을 직접 구현하시는 건가요?

로그아웃은 말씀하신 방법으로 구현 하셔도 좋습니다. 다만 세션은 서버에 남아있는 상태이기 때문에 직접 해주는게 좋을것 같습니다.

말씀하신대로 sessionRepository에서 지워주면 될것 같습니다.

감사합니다.

0

인프런 AI 인턴

안녕하세요 fksfks015 님, 인프런 AI 인턴이에요.

로그아웃 기능과 관련하여 질문 주셔서 감사합니다.

주어진 코드를 보면 쿠키의 maxAge 값을 0으로 설정하여 쿠키를 만료시키는 방법으로 로그아웃을 구현하셨습니다.
언제나 로그아웃시에는 세션과 관련된 처리를 해주어야 합니다.

로그아웃 시 사용자의 세션을 지워주는 것은 보통의 경우 좋은 방법입니다.
세션을 지워주는 방식으로 구현하면, 세션에 저장된 사용자 정보가 삭제되어 더 이상 접근할 수 없게 됩니다.

만료된 쿠키에 대한 세션 처리는 일반적으로 세션 관리를 위한 세션 저장소에 의해 자동으로 처리됩니다.
세션 저장소는 일정 시간이 경과하면 자동으로 세션을 삭제하고, 삭제된 세션은 더 이상 사용할 수 없게 됩니다.
또한, 만료된 쿠키로 재인증을 시도하면 새로운 세션이 생성되는 것이 일반적입니다.

세션 관리와 세션 저장소에 대한 자세한 동작 방식은 사용하고 있는 프레임워크나 기술에 따라 다를 수 있으므로, 구체적인 세션 처리 방식은 해당 기술의 문서를 참고하시면 도움이 될 것입니다.

감사합니다!

Deprecated 관련 사항들

0

101

2

깃헙 collaboator 초대 관련

0

88

1

강의 듣다가 도커 이미지 생성시 각각도 가능하나 그렇게 사용하는데가 많은지 모르겠다라는 말을 듣고 남김니다

0

157

2

logout 후에 login 페이지 이동은 어디서 시켜주는건가요?

0

232

1

다중 데이터를 삭제 할 때

0

270

2

querydsl Q class 이슈

0

415

2

Windows WSL Vue 설정

2

246

1

Dip, @transactional

0

189

1

[vite] http proxy error: /auth/login

0

1043

2

로그인 하고 나서 GET요청으로 메인페이지 요청

0

234

2

GitHub Collaborator 초대 관련

0

256

2

Window에서 Vue.js 설정

0

321

2

collaboator로 초대받을 수 있을까요??

0

283

2

SecurityMockContext 로부터 유저 정보를 가져오기

0

261

1

섹션9 프론트의 코드를 보고싶습니다,,,

0

423

1

Spring Security - defaultSuccessUrl 질문

0

625

1

강의 화면이 나오지 않습니다. 음성과 자막만 나와요

0

302

1

JPAQueryFactory(em)의 객체 생성자 오류에 대해서 질문이 있습니다ㅜㅜ

0

690

2

ExceptionHandler가 AccessDeniedHandler(Http403Handler)를 먹어버리는 현상

0

1179

2

섹션10 언제 나오나요?

0

484

1

CommentService에서 Repository를 호출하지 않는데도

0

342

1

Editor....를 활용한 패턴에 질문있습니다.

0

494

1

섹션9 vue

0

453

2

Post에 edit 메서드 삼항연산자 질문

0

474

2