새로운 질서 위키

데이터 검증

데이터 검증은 값이 요구한 형식과 업무상의 조건을 만족하는지 확인하는 과정이다. JSON 스키마의 구조 검사와 필드 사이의 관계 확인을 함께 생각할 수 있다. (OWASP 입력 검증 안내)

  • 날짜 형식이 맞아도 종료일이 시작일보다 앞설 수 있다. 문법과 값의 관계를 각각 검사한다. (구문과 의미 검증)
  • 필수 여부, 범위, 길이, 허용되는 선택지를 명시한다. 잘못된 값을 알아서 고친 뒤 통과시키기보다 무엇이 틀렸는지 알리는 검증 오류 메시지가 필요하다. (필드별 조건과 오류)
  • 올바른 계정 번호가 입력됐다는 사실은 그 계정에 접근할 권한까지 뜻하지 않는다. 데이터의 조건과 권한 검사는 별개다. (검증과 권한의 구분)

기타 등등

  • 아포스트로피를 일괄 금지하면 실제 이름까지 거부할 수 있다. 금지 문자 목록만으로 입력의 안전성을 판단할 수 없다. 출처
  • 파싱 뒤의 스키마 검사는 파싱 도중 이미 소모한 자원을 되돌리지 못한다. 크기와 중첩 깊이 제한은 읽는 단계에도 필요하다. 출처

#데이터 #검증 #소프트웨어

검색