요청 생성
폼 제출, fetch, 이미지 로드처럼 시작 방식에 따라 쿠키 첨부와 preflight 여부가 달라집니다.
요청이 브라우저에서 시작해 Nest API에 닿기 전까지 어느 경계에서 차단되는지 분리하면, 허용 출처와 쿠키 정책, 출력 인코딩, CSP를 서로 다른 점검 항목으로 다룰 수 있습니다.
폼 제출, fetch, 이미지 로드처럼 시작 방식에 따라 쿠키 첨부와 preflight 여부가 달라집니다.
Origin이 allowlist 밖이면 브라우저가 응답을 읽지 못하게 막고, 서버 로그에는 요청 자체가 보일 수 있습니다.
쿠키 인증 요청은 토큰, SameSite, 재인증 같은 신호가 없으면 사용자의 실제 의도와 구분하기 어렵습니다.
사용자 입력은 저장 전 검증보다 렌더링 시점의 이스케이프와 CSP 위반 보고서에서 더 직접적으로 드러납니다.
인증, 권한, DTO 검증은 브라우저 방어를 통과한 뒤에도 서버 계약을 마지막으로 고정합니다.
app.enableCors에서 origin 함수를 두고, credential 허용은 공개 API와 분리합니다.
쿠키 기반 POST, PATCH, DELETE는 토큰 검증과 SameSite 정책을 같이 기록합니다.
helmet CSP, 템플릿 이스케이프, JSON 응답의 content type을 한 묶음으로 점검합니다.