Node 2

Express + passport (+jwt) 이용하여 로그인, 회원가입, 인증 구현하기

개인화된 서비스를 제작하려고 보면 항상 고민이 생기는 부분이 로그인/회원관리인 것 같습니다. 물론 처음부터 너무 본질적인 부분을 제하고 로그인에만 매몰되면 안 되겠지만, 공부를 하다보면 유저를 먼저 생성하고 그 정보가 어떤 식으로 서버에서 돌아다니는지(?) 알고 시작하는 것이 확실히 흐름을 파악하는 데 도움이 되는 것 같습니다. 기존 방식 기존에는 Oauth, jwt 같이 유저를 서버 차원에서 인증하는 별도의 방식 없이 단순히 db에 저장된 유저명, 비밀번호와 대조해서 로그인을 허용하는 식으로 진행을 해왔습니다. 유저가 계정과 비밀번호를 post로 전달하면, 서버에서 db에 저장된 내용과 일치하면 유저가 로그인 했다는 의미에서 세션에 유저 정보를 추가하고, 이 세션 id를 브라우저의 쿠키에 저장해둡니다...

JavaScript/Node JS 2020.10.11

Express JS에서 MySQL 연결 시 dotenv 사용하기

최근 express를 이용해서 클라우드 서버에 올려둔 MySQL DB와 연결을 시도하던 중, 여러 튜토리얼에서 .env를 활용하여 진행하는 것을 발견하게 되었습니다. 지인을 통해서도 한번 들어보긴 했으나, express를 활용해서 백엔드를 직접 구성해본 경험은 없어서 어떤 용도의 것인지 알아보았습니다. 쉽게 생각하면 민감하고 예민한 정보를 은닉해주는 고마운 친구 정도로 요약이 될 것 같습니다. 민감한 정보란 민감하다, 다른 말로는 타인에게 공개되면 위험한 정보입니다. 단순 데이터일 수도 있겠지만, 만약 계정과 비밀번호 등을 알게 된다면 내가 돈을 내고 쓰는 클라우드 서버에 멋대로 접근할 수도 있게 되는 것이죠. 그래서 github과 같은 공개적인 곳에는 이런 정보가 올라가는 것을 막아야 합니다. 예를 들..

JavaScript/Node JS 2020.09.19