
개인정보 접속기록 안전하게 남기기
두줄요약
개인정보 감사 로그의 누락·성능·2차 유출 문제를 분석했습니다. 테스트, ThreadLocal, 비동기 배치로 안정적인 기록 체계를 구축했습니다.
문제 상황
- 개인정보 접속기록 필수 항목, 보관 기간, 위·변조 방지, 다운로드 사유 기록 등 법적 요구사항
- 300개 이상 API에서 수동 감사 로그 적용 시 누락·폐기 설정 잔존 위험
- 동기 DB 저장에 따른 조회 API 지연과 감사 로그 자체의 개인정보 2차 유출 우려
해결 방법
- 전체
@RestController엔드포인트와 레지스트리 등록 상태를 대조하는 아키텍처 테스트로 대상·비대상 등록 강제 - 인터셉터의 호출자·IP·시각과 서비스 계층의 정보주체 식별자를
ThreadLocal기반 컨텍스트로 결합 - 개인정보 원문 대신 접근 개인정보 항목 메타데이터 기록
성능/운영 포인트
- 메모리 버퍼에 적재 후 200건 단위 또는 1초 주기 JDBC 배치 INSERT
- 버퍼 적재 구간만 짧은 락 적용, DB I/O는 락 밖과 별도 트랜잭션으로 분리
@PreDestroy기반 종료 시 잔여 버퍼 플러시
적용해볼 점
- 신규·삭제 API에 대한 감사 대상 등록 검증을 CI 회귀테스트에 포함
- 감사 로깅 실패나 지연이 핵심 비즈니스 트랜잭션에 전파되지 않는 분리 구조






