KYC/AML, QA 어드민 시스템 테스트

고객이 비대면으로 KYC 서류를 제출하고, AML 시스템이 의심스러운 거래를 탐지했을 때, 그 다음 일은 누가 처리할까요?

바로 회사 내부의 ‘심사 담당자’와 ‘운영자’입니다.

그리고 이들이 사용하는 보이지 않는 강력한 도구가 바로 ‘어드민(Admin) 시스템’, 즉 백오피스입니다.

만약 이 내부 시스템에 버그가 있다면, 심사가 지연되거나 잘못된 판단을 내릴 수 있으며, 최악의 경우 내부 직원에 의한 정보 유출이나 부정행위가 발생할 수 있습니다.

이번 글에서는 이처럼 중요하지만 종종 테스트 우선순위에서 밀려나는, 금융 어드민 시스템을 QA가 어떻게 테스트해야 하는지 알아보겠습니다.

어드민 시스템 테스트, 왜 중요한가?

어드민 시스템은 금융 서비스의 모든 데이터를 조회하고, 수정하며, 승인하는 막강한 권한을 가진 ‘중앙 관제탑’입니다.

이곳의 품질은 내부 업무 효율성뿐만 아니라, 외부 고객에게 영향을 미치는 서비스의 정확성과 보안 수준을 결정합니다.

  • 1. 운영 효율성:
    • 어드민이 불편하고 버그가 많으면, 고객 문의 응대나 심사 업무가 지연되어 전체 서비스 품질이 저하됩니다.
  • 2. 데이터 무결성:
    • 심사자가 고객의 등급을 잘못 변경하거나, 거래 상태를 잘못 승인하면 데이터가 꼬이게 됩니다.
  • 3. 내부 통제 및 보안:
    • 가장 중요한 부분입니다. 권한 없는 직원이 고객의 민감 정보에 접근하거나, 중요한 데이터를 수정할 수 있다면 심각한 보안 사고로 이어집니다.

QA의 핵심 테스트 영역 1: 기능 및 데이터 정확성

QA는 심사 담당자의 실제 업무 흐름을 따라가며, 모든 기능이 기획 의도대로 정확하게 동작하는지 검증해야 합니다.

  • KYC/AML 심사자 워크플로우 테스트:
    • 조회: 고객이 제출한 신분증 이미지나 거래 내역이 어드민 화면에 깨짐 없이, 누락 없이 정확하게 조회되는가?
    • 판단: 심사자가 특정 거래에 대해 ‘정상’ 또는 ‘의심’으로 판단하고 상태를 변경했을 때, 해당 데이터가 DB에 올바르게 저장되는가?
    • 처리: ‘승인’ 또는 ‘거절’ 버튼을 눌렀을 때, 고객에게 발송되는 알림 내용(푸시, 알림톡 등)이 정확한가? 후속 시스템(예: 계좌 활성화)이 올바르게 연동되는가?
  • 대시보드 및 리포트 데이터 검증:
    • 어드민 메인 화면에 보이는 ‘오늘의 심사 대기 건수’, ‘월간 의심 거래 통계’와 같은 숫자들이, 실제 데이터베이스를 직접 조회한 결과와 100% 일치하는지 검증합니다.

QA의 핵심 테스트 영역 2: 권한 및 접근 제어

어드민 테스트의 핵심은 ‘권한 테스트’입니다.

QA는 다양한 역할의 가상 계정을 만들어, 각 역할에 허용된 것과 허용되지 않은 것을 철저하게 검증해야 합니다.

  • 역할 기반 접근 제어 (RBAC) 테스트 시나리오:
역할허용된 행동 (Positive Test)금지된 행동 (Negative Test)
신입 심사자자신의 담당 건 조회, 메모 작성다른 심사자의 담당 건 조회, 최종 승인/거절
선임 심사자모든 심사 건 조회, 최종 승인/거절고객 개인정보 수정, 시스템 설정 변경
IT 관리자시스템 설정 변경, 사용자 계정 관리고객 거래 심사, 고객 정보 직접 조회/수정

QA는 ‘신입 심사자’ 계정으로 로그인하여, ‘최종 승인’ 버튼이 아예 보이지 않거나 비활성화되어 있는지, 그리고 관리자 페이지의 URL을 직접 입력해도 접근이 차단되는지를 반드시 확인해야 합니다.

현직 QA의 어드민 테스트 실패 경험담

제가 과거에 참여했던 프로젝트에서, 어드민 화면의 ‘고객 검색’ 기능에 대한 권한 테스트를 소홀히 했던 경험이 있습니다.

화면 UI 상으로는 각 심사자가 자신의 담당 고객만 검색할 수 있도록 막혀 있었습니다. 하지만, 검색 API 요청을 분석해보니, API 자체에는 담당자를 필터링하는 로직이 누락되어 있었습니다.

악의적인 내부 직원이 API를 직접 호출하면, 다른 심사자가 담당하는 고객의 민감 정보까지 모두 조회할 수 있는 심각한 보안 허점이었습니다. 이 경험을 통해, QA는 눈에 보이는 UI뿐만 아니라, 그 뒤에서 동작하는 API의 권한까지 반드시 검증해야 한다는 것을 배웠습니다.

결론: 내부의 신뢰를 구축하는 역할

어드민 시스템은 외부 고객에게는 보이지 않지만, 서비스의 신뢰와 효율을 지탱하는 가장 중요한 내부 시스템입니다.

어드민 테스트는 단순히 내부 직원의 업무 도구를 검증하는 것이 아닙니다.

이는 고객의 소중한 정보가 내부적으로도 안전하게 관리되고 있다는 ‘내부통제’의 신뢰성을 보증하는 과정입니다.

성공적인 어드민 테스트는, 직원들이 자부심을 갖고 효율적으로 일할 수 있는 환경을 만들고, 내부로부터 시작되는 품질 문화를 구축하는 첫걸음입니다.

부록: 어드민 테스트 미니 체크리스트 ✅

  • 모든 기능에 대한 사용자 행위가 감사 추적을 위해 로그(Audit Log)로 기록되는가? (예: 누가, 언제, 어떤 데이터를 수정했는지)
  • 역할별로 메뉴 접근 권한과 데이터 조회/수정/삭제(CRUD) 권한이 명확하게 분리되어 있는가?
  • 중요한 데이터(예: 고객 주민등록번호)는 어드민 화면에서도 일부 마스킹 처리되어 보이는가?
  • 대량의 데이터를 조회하거나 다운로드할 때, 시스템 성능 저하나 타임아웃이 발생하지는 않는가?
  • 어드민 계정의 비밀번호 정책(복잡도, 주기적 변경)이 사내 보안 규정을 준수하는가?

참고 자료 (References)

  • OWASP – Access Control Cheat Sheet (웹 애플리케이션의 접근 제어 보안에 대한 글로벌 가이드)
  • 금융보안원(FSI) – 금융분야 내부통제 강화 관련 자료 (국내 금융권의 내부통제 및 감사 관련 가이드라인)

댓글 남기기