Home
Psmin1994
X

jsonwebtoken 모듈

jsonwebtoken 모듈에 대해 알아보자. jsonwebtoken 모듈 jsonwebtoken 모듈은 JWT를 쉽게 사용하도록 지원하는 패키지입니다. jsonwebtoken 모듈은 함수이므로 따로 미들웨어로 등록하지 않고 import해 바로 사용할 수 있습니다. 주로, 토큰 암호화 및 발급 인증 등을 지원합니다. 설치 np...

JWT (JsonWebToken)

JWT (JsonWebToken)에 대해 알아보자. JWT (Json Web Token) JWT (Json Web Token)이란 JSON 방식을 이용하여 정보를 저장하는 Claim 기반의 Web Token입니다. JSON 데이터를 Base64 URL-safe Encode를 통해 인코딩하여 직렬화한 것입니다. Base64 UR...

세션 기반 인증, 토큰 기반 인증

세션 기반 인증과 토큰 기반 인증에 대해 알아보자. HTTP의 Stateless(비상태성) HTTP는 비상태성이라는 특성을 갖습니다. 서버는 클라이언트의 상태를 저장하지 않기때문에 이전의 요청에서 인증과정을 거쳤는지 알 방법이 없습니다. 이러한 특성은 사용자에게 어떤 서비스를 이용하더라고 매번 로그인을 해야하는 불편함을 강요합니다. 또한 ...

인증과 인가

인증과 인가에 대해 알아보자. 인증 (Authentication) Server로 하여금 현재 Request를 보내는 자가 누구인지를 식별하는 것 입니다. 일반적인 인증 절차 User가 입력한 자격증명 정보(ID, Password)를 Server로 전송 및 인증 요청 ...

로그인 페이지 만들기 - 08 (passport)

passport 모듈을 활용해 id와 passport를 이용한 기본적인 인증 방식을 구현해보자. Passport 모듈 추후에 SSO를 사용하여 사용자 로그인을 구현할 예정이므로 Passport 모듈을 이용해 로그인 기능을 구현해보겠습니다. 모듈 설치 및 연결 설치 npm i passport passport-local ...

passport 모듈

passport 모듈에 대해 알아보자. passport 모듈 passport 모듈은 이름에서 알 수 있듯이 여권처럼 서비스를 이용할 수 있도록 사용자 인증을 구현할 때 사용합니다. 즉, Client가 Server에 서비스를 요청할 때 passport 모듈을 이용해 사용자 인증을 성공할 때만 응답해주는 것을 말합니다. Strategy 전략...

로그인 페이지 만들기 - 07 (crypto)

Crypto 모듈을 이용해 비밀번호를 암호화해보자. 비밀번호 암호화 crypto 모듈을 이용해 비밀번호를 암호화해서 DB에 저장해보겠습니다. 먼저 미들웨어로 모듈화해 회원가입 시 사용자가 입력한 비밀번호를 암호화하는 함수와 로그인 시 사용자가 입력한 비밀번호를 검증하는 함수를 작성합니다. 이후 Controller에서 Model에 접근하기 전...

crypto 모듈

crypto 모듈로 암호화해보자. Crypto 모듈 crypto 모듈은 Node.js 에 내장되어 있는 내장 모듈 중 하나로 문자열을 암호화, 복호화, 해싱할 수 있도록 도와주는 모듈입니다. 예제 첫번째 방법 - createHash + update + digest 동기적으로 salt를 만든 후 비밀번호+salt를 ...

패스워드 암호화 Encryption

패스워드 암호화 패스워드 암호화 (Encryption)는 사용자가 입력한 비밀번호를 그대로 평문으로 저장하지않고 암호화한 후 암호화된 데이터를 DB에 저장하는 것을 말합니다. 사용자 인증 정보를 안전하게 보관하기 위해 꼭 필요한 작업으로 암호화 작업을 하지 않을 경우 해커가 서버의 사용자 데이터베이스에 접근하여 저장된 패스워드를 쉽게 볼 수 있습니...

로그인 페이지 만들기 - 06 (validator)

로그인 기능에 유효성 검사를 해보자. 로그인 유효성 검사 express-validator 모듈을 활용해 POST 요청으로 로그인 할 때 데이터가 서버나 데이터베이스 보내지기 전에 조건에 부합하는지 확인, 검증하는 작업을 구현해보겠습니다. 조건 설정 id 공...