JWT

프로젝트/E-Commerce

[5] AccountService (3) 구현

1. Controller @PostMapping("/login") public ApiResponse login(@Valid @RequestBody LoginRequest request) { //login service 구현( JWT ) return ApiResponse.success(accountManager.login(request.toCommand())); } @PostMapping("/signup") public ApiResponse signup(@Valid @RequestBody SignupRequest request) { //signup service 구현 return ApiResponse.success(accountManager.signup(request.toCommand())); } @Pos..

프로젝트/E-Commerce

[4] AccountService (2) SpringSecurity

Spring Security Spring security를 사용하여 인증/인가 시스템을 구현하였습니다. Spring Sercurity는 Dispatcher Servlet으로 요청이 도달하기 전 Filter 구간에서 동작합니다. ❓Spring Security를 사용한 이유 Client에서 보낸 요청에서 Cookie나 Header를 통해 Controller Layer에서 인증/인가를 구현할 수 있습니다. 하지만 요청한 기능에 대한 응답을 하는 Controller Layer에서 인증/인가를 구현하는 것 보다 Filter 단계에서 구현 하는 것이 더 효율적입니다. 또한 Spring Security는 인증/인가에 관한 일련의 행동들을 FilterChain을 Bean으로 등록함으로써 간편하게 구현할 수 있어 Spr..

프로젝트/E-Commerce

[3] AccountService (1) 설계

1. Api 설계 /account/signup : 회원 가입 API /account/login : 로그인 API /account/logout : 로그아웃 API /account/withdraw : 회원 탈퇴 API /account/reissue : AccessToken 재발급 API 2. Api FlowChart 3. 인증/인가 Session vs Token HTTP는 Stateless하기 때문에 매 요청은 Client의 정보를 가지고 있지 않습니다. 사용자가 기능을 하나씩 사용할 때 마다 인증을 해야하는 것은 정말 번거로운 일입니다. Server가 User를 특정하기 위해 사용하기 위해 Session과 Token을 사용합니다. Sesison vs Token Token 방식을 선택하게 된 이유는 인증/인..

poujis
'JWT' 태그의 글 목록