본문 바로가기
728x90

개발일지/Nestjs5

NestJS에서 클라이언트로 쿠키 보내기 (왜 내 쿠키는 안받아줘요?) - 배포환경 서버에서 브라우저로 쿠키 저장 https://hanbbistory.tistory.com/118 NestJS에서 클라이언트로 쿠키 보내기 (왜 내 쿠키는 안받아줘요?) 쿠키(Cookie)란? 쿠키는 서버에서 클라이언트에게 보내는 작은 데이터 조각이다. 일반적으로 브라우저에서 웹 사이트를 방문할 때 쿠키를 사용하여 사용자의 활동을 기록하고, 이후에 그 사용자 hanbbistory.tistory.com 분명 로컬에서는 쿠키가 정상적으로 브라우저에 저장되는 것을 볼 수 있었는데, 배포를 하고 나니 또다시 쿠키가 보이지 않았다. response headers에는 쿠키 값과 함께 다음과 같은 에러 문구를 볼 수 있었다. this attempt to set a cookie via a set cookie header .. 2023. 5. 1.
localhost 환경에서 https 적용해보기 local 환경에서 https 설정이 필요한 이유 로컬 환경에서 내가 원하는대로 기능들이 작동한다고 해도, 배포 환경과 로컬 개발 환경의 차이로 인해 코드의 수정이 필요해질 수 있다. 이러한 이유로 개발 환경을 배포 환경과 최대한 동일하게 만들어주는 것이 좋다. 또한 최근의 배포 환경들은 대부분 https로 이뤄져 있기 때문에 그에 맞춰 설정해줄 필요가 있다. 자체 서명 인증서 생성 (openssl 사용) # 개인 키 생성 $ openssl genrsa -out private-key.pem 2048 # 개인 키를 사용한 새로운 인증서 요청서 생성 $ openssl req -new -key private-key.pem -out cert-request.csr # 요청서를 사용한 자체 서명 인증서 생성 $ o.. 2023. 5. 1.
NestJS에서 클라이언트로 쿠키 보내기 (왜 내 쿠키는 안받아줘요?) 쿠키(Cookie)란? 쿠키는 서버에서 클라이언트에게 보내는 작은 데이터 조각이다. 일반적으로 브라우저에서 웹 사이트를 방문할 때 쿠키를 사용하여 사용자의 활동을 기록하고, 이후에 그 사용자가 같은 웹 사이트를 방문할 때 이 정보를 사용해 그에 맞게 동작하게 해준다. 하지만 쿠키는 당사자뿐만 아닌 제 3자가 조회하는 것도 가능하기 때문에 개인 정보를 담는 등 보안상 민감한 정보를 저장하는 데에는 적합하지 않기 때문에 탈취되거나 사용자에 의해 조작되어도 크게 문제 되지 않을 정보를 주로 저장한다. (ex. 다크 모드, 장바구니 목록 등) 서버에서 클라이언트로 Cookie 전송 예제 모듈 설치 yarn add cookie-parser @types/cookie-parser # 쿠키 관리 모듈 모듈 적용 // .. 2023. 4. 13.
Nestjs에서 bcrypt 사용하기 bcrypt란? 비밀번호 등을 안전하게 암호화하여 저장하고 검증하는 라이브러리로, 랜덤한 salt를 생성하고 이를 비밀번호와 함께 암호화하여 저장한다. 이후 비밀번호 검증 시에도 같은 salt를 사용하여 입력받은 비밀번호를 암호화한 후, 저장된 암호화된 비밀번호와 비교하여 일치하는지 검증한다. bcrypt는 암호화 강도를 선택할 수 있는 기능을 제공한다. 기본값은 10으로, 숫자가 클수록 강도가 높아지며 암호화에 소요되는 시간이 늘어난다. 보안을 위해 기본값 이상의 값을 권장한다. 사용법 yarn add bcrypt @types/bcrypt # nestjs는 타입스크립트가 기본이기 때문에 타입으로 설치 따로 module이나 main에 등록할 필요 없이 사용하고자 하는 파일에 불러오면 된다. import .. 2023. 4. 13.
728x90