개요 이번에는 JWT토큰을 기반으로 회원가입, 로그인을 구현해보기 위해서 환경세팅, 프로젝트 생성을 해보겠습니다. 회원가입 내부 회원가입 로직은 세션방식과 차이가 없습니다. POST요청으로 받아서 내부적으로 요청받아서 서비스에서 처리하고 entity에서 저장합니다. 로그인 로그인 요청을 받은 후 세션 방식은 서버 세션이 유저정보를 저장하지만, JWT방식은 토큰을 생성하여 응답 합니다. UserAuthenticationFilter(회원검증로직),AuthenticationManager(내부 아이디,비번던져서 로그인검증), JWT는 세션에 회원정보를 남지기 않고 SuccessfulAuthentication라는 메서드에서 토큰을 만들어서 응답으로 보내줄 것 입니다. 개발 환경 Spring boot 3.2.1 S..
서론 이전의 git 기본 사용법에 이어서, 이번에는 혼자서 프로젝트를 진행할 때의 git 사용법을 간단하게 정리해보고자 합니다. 혼자서 하는 프로젝트이므로, 굳이 다른 브렌치를 나누어서 할 필요는 없지만, 간단하게 main, dev, topic정도의 브렌치를 구현해서 사용해보도록 해보겠습니다. repository 생성, 연동 제 깃허브에 연습용 Repository를 생성했습니다. 위와같이 README.md도 생성해 주었습니다. repository를 생성할 때는, 아무파일도 없으므로 해당 공간이 저장소라는.. 한마디로 "git init"만 되어진 상태입니다. 하지만 위처럼 README.md파일을 생성해주면, 해당 파일이 add, commit된 상태가 되어서 main브렌치가 생성이 됩니다. 그러니 repos..
서론 "내가 git을 잘 이용하고 있는 걸까?" 에 대해서 알아보기 위해서 간단하게 git 사용하기, 개인프로젝트에서 사용하기, 협업시 사용하기 등으로 나눠서 사용법을 실습하면서 복기해보는 시간을 가지도록 해보겠습니다. 간단한 실습 1 - 로컬에서의 init, add, commit ex01이라는 폴더를 생성해줍니다. 이 폴더를 작업영역으로 사용해서 git에 파일을 올리거나 내리도록 사용하겠습니다. git init 이 폴더를 git으로 작업을 하고 싶으니, 해당 폴더의 경로에서 "git init" 이라는 명령어를 작성해줍니다. 이 명령어를 작성하면 해당 폴더에 .git이라는 숨김폴더가 생성됩니다. 이후 해당 폴더에 test1.txt라는 텍스트파일을 생성해줍니다. git status라는 명령어로 현재 관리중..
서론 우리는 프로젝트를 진행하다가 "...CORS disabled"와 같은 CORS에 대한 오류를 만날 수 있다. 도대체 CORS가 뭐길래 우리를 이렇게 귀찮게 하는가?!! 이번에는 우테코의 "나봄님의 CORS"를 통해 CORS에 대해서 알아보고, 정리하는 시간을 가져보았다. SOP(Same Origin Policy) SOP란 다른 출처에 대한 리소스를 사용하는 것을 제한하는 보안방식을 말한다. SOP에 대해 잘 알면, 보안에 큰 도움에 될 수 있다. SOP에서 O에 해당하는 출처(Origin)이란, 위처럼 생긴, URL의 구성요소 중에 Porotocol, Host, Port를 통해 같은 출처인지, 다른 출처인지 판단할 수 있다. 세가지중 하나만 틀려도 다른 출처, 세가지가 모두 같아야 같은 출처라고 이..
개념 및 동작 JWT(JSON Web Token) JWT는 JSON Web Token의 약자로, 클레임 토큰 기반의 인증 방식이다. 클라이언트의 상태를 세션에 저장하는 세션방식이 아닌, 필요한 정보를 토큰(Token)에 저장해서 증명서처럼 사용한다. 클레임 토큰 기반이라는 뜻은, Claim = 사용자에 대한 property, 정보로, 토큰 자체가 정보인 방식이다. 동작방식 JWT토큰은 위처럼 동작을 한다. 1. 유저가 로그인을 한다. 2. 서버는 로그인 후 사용자의 정보(클레임)를 JWT payload에 담고, 이를 서명하여 JWT 토큰을 생성합니다. 3. 서버는 생성된 JWT 토큰을 클라이언트(일반적으로 브라우저,유저)에게 전달합니다. 이 토큰은 보통 HTTP 헤더의 Authorization 헤더에 담..
서론 A군이 회사에 들어가게 되었습니다. 상사는 신입사원들에게 "우리 회사는 6대의 WAS를 가지고 있습니다!!" 라고 했습니다. A군은 "WAS가 뭐지? Web Application Server? 내가 알고있는 Apache와 같은 웹서버와는 다른건가?" 라는 생각이 들었습니다. 이번에는 WAS가 무엇인지에 대해서 알아보는 시간을 가지겠습니다. Web, Server, Web Server Web 웹(Web)은 인터넷을 기반으로 정보를 공유하고 검색할 수 있는 서비스이다. 웹을 통해 우리는 전 세계적으로 다양한 정보에 접근할 수 있으며, 이를 위해 다양한 기술과 프로토콜이 사용된다. 예시로, URL, HTTP, HTML이 존재한다. URL(Uniform Resource Locator) : 웹에서 특정 자원의..