← 전체 사례
2026.08–09수행 프로젝트

교육서비스 QA — 민감정보 조회의 조건을 코드와 검증으로 고정하다

Next.jsTypeScriptPostgreSQLAccess controlRegression tests

확인한 결과관련 테스트 71개 · 초안 PR, 운영 적용 전

맥락

수업보고서 구현 과제가 채택돼 실무 QA로 이어졌습니다. 실무에서는 기존 계좌 원본 조회 기능을 기반으로 권한 범위·조회 사유·감사로그 보강을 설계하고 구현했습니다.

문제

민감정보를 화면에서 가리는 것만으로는 서버의 조회 권한과 기록을 보장할 수 없습니다. 허용 여부, 조회 사유, 로그 저장 실패와 권한 회수까지 하나의 흐름으로 검증해야 했습니다.

내린 결정

업무용 권한을 매 요청 확인한다

별도 급여정보 권한을 요청마다 확인하고, 한 사람의 정보만 사유와 함께 조회하도록 보강했습니다. 기본 마스킹을 유지하며 원본을 일괄 추출하는 흐름은 만들지 않았습니다.

감사로그 저장이 성공해야 반환한다

로그에 민감정보 원본을 남기지 않으면서 누가 왜 조회했는지 기록합니다. 로그 저장에 실패하면 원본을 반환하지 않도록 오류 경로와 비허용 역할 테스트를 추가했습니다.

구현 검증과 운영 적용을 구분한다

일시 조회 뒤 자동 재마스킹과 창 이탈 처리를 구현했습니다. 관련 테스트 71개, CI와 SQL 리허설, 가상 응답 브라우저 검증을 마쳤고 실제 운영 앱 검증은 배포 이후 절차로 남겼습니다.

내가 맡은 범위

  • 권한·감사로그 보강 설계
  • 보강 코드 및 회귀 테스트
  • 데스크톱·모바일 검증
  • DB 이행·운영 검증 절차 정리

실제 산출물

  • 권한·사유·감사로그 보강 코드와 회귀 테스트
  • 가상 응답 기반 데스크톱·모바일 검증 및 DB 이행 문서

수행 범위와 확인 기준

관련 테스트 71개 · 초안 PR, 운영 적용 전

2026-09-08 확인 기준 보강 PR은 초안·미병합 상태입니다. 기존 조회 기능은 동료 구현이며, 제 기여는 권한·사유·감사로그와 검증 보강입니다. 운영 배포·실사용 성과로 기재하지 않았습니다. 화면과 실명·계좌정보는 공개하지 않습니다.

이런 일이 필요하시면

지금 막힌 지점을 그대로 적어 보내주세요. 제가 할 수 있는 일과 없는 일을 먼저 구분해 답장드립니다.

kjyhopekr@gmail.com

같은 분야의 다음 사례