Skip to content

test: API 개발 로거 민감정보 마스킹 테스트 추가 #27

Description

@haewonwon

배경

개발 환경 API 로거는 요청 및 응답을 출력하면서 인증 토큰과 비밀번호 등 민감정보를 [REDACTED]로 치환함
보안 관련 로직이지만 현재 자동화 테스트가 없어 키 패턴이나 재귀 처리 변경 시 민감정보가 로그에 노출될 수 있음

테스트 대상

  • authorization
  • accessToken, access_token
  • refreshToken, refresh_token
  • idToken, id_token
  • password
  • secret
  • 중첩 객체 내부의 민감정보
  • 배열 내부 객체
  • Date, Map, Set 등 Plain Object가 아닌 값
  • 일반 필드는 원래 값을 유지하는지
  • undefined, null, 빈 응답 처리

고려 사항

현재 마스킹 함수가 비공개 함수이므로 다음 중 하나를 선택함

  1. 마스킹 로직을 별도 유틸로 분리하고 직접 테스트
  2. 개발 로거 모듈 내부 함수를 테스트 가능하도록 제한적으로 export

완료 조건

  • 민감 키 변형별 마스킹 테스트 작성
  • 중첩 객체 및 배열 테스트 작성
  • Plain Object가 아닌 객체의 데이터 유실 방지 테스트 작성
  • 테스트 명령을 CI에서 실행

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions