프로젝트 5
문제 : 로그인 유저 정보는 어떻게?
나는 지금까지 테스트를 할 때 url_path는 /userid 로 요청을 했었다.
그런데 아래의 코드를 작성 하면서 의문점이 생겼다. 서버측에선 어떻게 유저의 정보를 식별하고
작동하는지 의문이 들었습니다. 일 그렇다면 모든 유저와 관련 된 서비스는 유저를 찾는 것을 시작으로 관계를 탐색해서 해야 하는 것일까? 그렇다면 이것은 비효율적이라고 생각했고 로그인에 대해 찾아보기로 했습니다.
@Override
public Long create(UUID storeId, JobPostCmdDto dto) {
Store findStore = storeRepository.findById(storeId).orElseThrow();
JobPost newJobPost = new JobPost(findStore, dto.getTitle(), dto.getBody());
jobPostRepository.save(newJobPost);
// 구인공고가 올라갔으니
// 구인공고중이라고 store의 상태를 변경해줘
return newJobPost.getId();
}
해결 : http, spring security를 공부하자!
http는 비연결형 통신으로 요청과 응답이 되면 연결이 끊어진다.
그렇다면 우리가 평소 웹을 이용하면서 로그인이란 것은 어떻게 진행 되는지 찾아보았다.
유저가 로그인을 하면 로그인 된 유저를 유지 하는 방법은 두가지가 있다고 한다.
1. 세션으로 로그인하기.
2. jwt토큰으로 로그인하기.
그 중에서 요즘은 jwt토큰을 주로 사용한다고 해서 jwt 방식을 자세히 살펴보고자 한다.
유저가 로그인을 하면 토큰의 페이로드 부분에 내가 원하는 정보는 key : value 형태로 전달 할 수 있다고 한다.
그렇다면 업주가 로그인 한다면 업주가 갖고 있는 가게의 아이디도 같이 전달하고 요청을 받을 때 바로
가게의 아이디를 활용 할 수 있다는 것을 확인 할 수 있었습니다.
공식 문서
스프링 시큐리티 공식 문서
네이버 OAuth
JWT 공식문서
참고 자료
로그인은 어떻게 이루어질까❓(Cookie, Session)
풀스텍 개발자의 웹 프로그래밍
jwt에서 정보 파싱하기
Author And Source
이 문제에 관하여(프로젝트 5), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@memorego/프로젝트-5저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)