[Express] Passport.js 자격 확인

Featured image for [Express] Passport.js 자격 확인

0. 출처 passport.js 자격확인 – 생활코딩 passport-local Local username and password authentication strategy for Passport. https://dc-choi.tistory.com/47 1. 자격확인 기존에 로그인 요청을 처리하는 코드다. 해당 부분을 passport를 통해서 처리하도록 수정한다. 2. passport.authenticate() 가. authenticate() passport.authenticate()의 reference다. 우선 URL에 따라서 알맞은 로그인 strategy를 선택한다. (string 혹은 string[]) 로그인 요청의 결과가 성공인지 실패인지에 따라서 추가적인 동작을 수행한다. 추가적인 … 더 읽기

[Express] Passport.js 시작하기

0. 출처 passport.js 설치 – 생활코딩 passport-local Local username and password authentication strategy for Passport. 1. Strategy 선택 사용할 Strategy를 검색해서 찾는다. Passport.js Simple, unobtrusive authentication for Node.js 2. Passport.js 설치하기 구글, 페이스북, 카카오톡 등으로 로그인하는 것은 추후에 시도해 보고 이번에는 정통적으로 사용해 온 아이디와 비밀번호로 로그인하는 것을 Passport.js로 구현해보겠다. passport와 사용할 strategy를 설치한다. 대부분의 … 더 읽기

[Node.js] 쿠키의 한계

Featured image for [Node.js] 쿠키의 한계

  1. 인증 부분의 한계 민감한 정보를 클라이언트 쪽에 저장한다는 것은 위험하다. 또한 쿠키는 쉽게 탈취당할 수 있기 때문에 민감한 정보를 저장하는 것에 어울리지 않는다. 그렇기 때문에 요즘에는 인증을 구현하기 위해서 쿠키보다는 세션이나 JWT를 사용한다. 그중에서 세션을 사용하면 서버 측에서 사용자에 대한 정보를 안전하게 저장하고, 클라이언트에는 세션 ID만을 저장하여 보다 안전하다. 그 외에도 세션은 …와 … 더 읽기

[Node.js] 쿠키 옵션

Featured image for [Node.js] 쿠키 옵션

0. 참고자료 쿠키 옵션 – Secure & HttpOnly – 생활코딩 쿠키 옵션 – path & domain – 생활코딩 쿠키와 document.cookie 1. Secure & HttpOnly 쿠키를 훔쳐가는 행위를 막기 위한 방법. 가. Secure Secure는 웹브라우저와 웹서버가 https로 통신하는 경우만 웹브라우저가 쿠키를 서버로 전송하는 옵션. 안전한 상황에서만 쿠키를 전송한다. 나. HttpOnly HttpOnly는 자바스크립트의 document.cookie를 이용해서 쿠키에 접속하는 … 더 읽기

[Node.js] 세션 쿠키, 영구 쿠키

Featured image for [Node.js] 세션 쿠키, 영구 쿠키

0. 참고자료 Session 쿠키 VS Permanent 쿠키 – 생활코딩 쿠키와 document.cookie 1. 쿠키의 종류 2. 세션 쿠키 세션 쿠키를 만들기 위해서 별도로 해줄 건 없다. expires(유효 일자)나 max-age(만료 기간) 옵션이 지정되어있지 않으면, 브라우저가 닫힐 때 쿠키도 함께 삭제된다. 3. 영구 쿠키 세션 쿠키에 Max-Age나 Expires 같은 옵션을 추가하면 영구 쿠키가 된다. 가. Max-Age 하루동안 유효한 … 더 읽기

[Node.js] 쿠키 생성, 읽기

Featured image for [Node.js] 쿠키 생성, 읽기

  0. 참고자료 Node.js – 쿠키와 인증 – 생활코딩 1. 쿠키? 쿠키는 사용자가 방문한 웹사이트에서 사용자의 브라우저에 전송하는 작은 텍스트 조각입니다. 쿠키가 있으면 웹사이트에서 사용자의 방문에 관한 정보를 기억하여 다음번에 사이트에 방문했을 때 번거로운 작업을 피하고 더 유용하게 사이트를 활용할 수 있습니다. 브라우저, 앱 또는 기기, 픽셀, 로컬 저장소를 식별하는 데 사용되는 고유 식별자 같은 … 더 읽기

[Express] 보안

Featured image for [Express] 보안

0. 참고자료 보안 – 생활코딩 GitHub – helmetjs/helmet: Help secure Express apps with various HTTP headers Help secure Express apps with various HTTP headers – helmetjs/helmet 1. 보안 프로덕션 환경의 Express를 위한 보안 우수 사례 Express 애플리케이션을 프로덕션 환경에서 운영할 때 반드시 지켜야 할 중요한 보안 모범 사례를 알아봅니다. 여기에는 TLS 사용, 입력값 검증, 보안 … 더 읽기

[Express] 미들웨어와 라우터를 활용한 리팩터링

Featured image for [Express] 미들웨어와 라우터를 활용한 리팩터링

  0. 참고자료 라우터 – 생활코딩 1. 개선 방안 2. URL 수정하기 url 수정 · ramen4598/Study_nodeJS@a67dc74 덕분에 app.js는 엄청 단순해졌다. 3. Ready 클래스 수정 refactoring : topic.js, index.js, template.js · ramen4598/Study_nodeJS@a6f23f8 예전과 비교해서 많이 단순해졌다.  

[Express] 오류 처리

Featured image for [Express] 오류 처리

0. 참고자료 에러처리 – 생활코딩 Express 오류 처리 Express.js가 동기 및 비동기 코드에서 오류를 처리하는 방식을 이해하고, 애플리케이션에 맞는 사용자 정의 오류 처리 미들웨어를 구현하는 방법을 알아보세요. 1. 오류 처리 다른 미들웨어 함수와 동일한 방법으로 오류 처리 미들웨어 함수를 정의할 수 있지만, 오류 처리 함수는 3개가 아닌 4개의 인수, 즉 (err, req, res, next)를 갖는다는 … 더 읽기

[Express] 정적인 파일 서비스

Featured image for [Express] 정적인 파일 서비스

0. 참고자료 정적인 파일의 서비스 – 생활코딩 Express에서 정적 파일 제공 Understand how to serve static files like images, CSS, and JavaScript in Express.js applications using the built-in ‘static’ middleware. 1. 정적인 파일 서비스 express를 사용하기 이전에는 정적인 파일을 서비스하기 어려웠다. url을 하나하나 파싱해서 style.css, 각종 javascript를 서비스했었다. express에서는 어떻게 처리하는지 살펴보았다. 이미지, CSS 파일 … 더 읽기