project 이집은 프로젝트 설명 집주인도, 중개사도 모르는 살아본 사람만이 쓸 수 있는 진짜 후기를 공유할 수 있는부동산 후기 공유 플랫폼 주요 기능 kakao login kakao Map API를 이용한 level에 따른 클러스터링 원룸, 투룸의 후기 정
OWASP TOP10 중에 6번째 항목은 다음과 같다 > A06: Vulnerable and Outdated Components (취약하고 오래된 요소) 서비스가 오래 지속될 때 라이브러리나 패키지 또한 지속되거나 없어지거나 병합, 업데이트 되면서 서비스에 취약점이
nanoid에 대해 알아보기 전에 내가 쓰게된 계기는 npm에 shortid를 검색해 보면 shortid is deprecated, because the architecture is unsafe. we instead recommend Nano ID, which ha
나는 지금까지 프로젝트를 해오면서 helmet이 그냥 Xss공격에 대한 방어를 해준다고 일반적으로 쓰듯이 으로만 써왔는데 이번 프로젝트에 API의 보안에 집중하면서 이 라이브러리에 좀 더 집중하게 되었다. 1. npm helmet 이란? 일단 간단히 helmet 라이브러리를 소개하면 > helmet은 Express 애플리케이션의 보안을 강화하는 데 도...
이집은 프로젝트를 진행하면서 API보안에 대해서 더 많이 생각하게 되었다. 특히 XSS(크로스 사이트 스트립팅)공격에 대한 방어를 하기 위해서 어떻게 해야할까?를 고민하였는데, helmet라이브러리를 사용하여도 X-XSS-Protection Header가 0 값으로
이번 프로젝트에서 API보안에 특히 신경쓰면서 이것 저것 외부 공격에 대해 알아 보았는데, 우리가 개발자가 되기 이전에도 웹사이트를 이용하면서 자주 접할 수 있었던 공격 이름이 DOS공격이다. D-DOS공격에 의해 서버가 죽었다는 뉴스나 페이지 다운 등을 격어 봤을 것
이번 프로젝트에서 이미지 파일을 저장하는데 multer라이브러리와 aws의 s3 bucket을 사용하게 되었는데, multer의 사용방법과 s3 저장소 사용 방법은 널리 알려진 예제와 블로그가 많아서 formdata 형태의 정보를 받아와서 저장하는데 불편함은 없었다.m
'코딩은 생산적인 작업이며 창조적인 작업이다. 내가 코딩으로 무엇을 만들 때 그것에 제한을 두는 것은 맞지만 그건 無에서부터 제한이라는 것을 만드는 것이지, 처음부터 제한 되었던 것은 아니다.' 정확한 기억은 아니지만 대충 이런 내용
이번 프로젝트를 진행하면서 대댓글의 필요성이 있다고 판단하여 대댓글 작성을 위한 API를 만들려고 했다.'대댓글을 어떻게 만들까?' 라고 처음에 생각했을 때는 새로 테이블을 하나 더 만들어서 대댓글을 따로 관리하는 테이블을 만들려고 구조를 떠올리게 됬다. 이렇게 관리하
프로젝트를 진행하면서 최적화를 위한 DB속도 증가에 대해서 여기저기 찾아보았다. 가장 기본적으로 쓰이는 것 indexing이지만 생성 수정 삭제가 자주 일어나는 댓글이나 게시글 테이블에는 부적합하다고 판단해서 어떤게 있을까? 찾아보다가 비정규화를 진행하게 되었다. 비
발생문제 이번에 커뮤니티를 담당하면서 Test를 위한 임시 배포까지는 문제가 없었으나, UT를 위한 더미데이터를 생성하면서 예외가 발생하였다. 특정 이미지를 넣었을 때 아래와 같은 에러가 발생하는 것이다. 개발자 도구에서 확인한 responce도 우리가 설정한 er
이번 프로젝트에 joi라이브러리를 이용한 유효성검사와 그에 때른 에러 핸들러 미들웨어를 작성하게 되었다. 코딩 초기 if로 유효성 검사를 하게되면 그 코드의 길이나 양이 많이 늘어나고, 코드가 지저분해 지는 것을 겪어 보았을 것이다.하나의 text를 검증할 때에도 고려