Docs Menu
Docs Home
/ /
/ / /

MongoDB 사용한 사기 탐지

이 레퍼런스 아키텍처는 운영 트랜잭션 데이터, 벡터 임베딩, 동적 위험 모델을 사용하여 MongoDB Atlas 에서 실시간 사기 탐지를 구현 방법을 설명합니다.

이 아키텍처는 트랜잭션을 수집하고, 행동 패턴을 캡처하기 위한 임베딩을 생성하고, MongoDB Atlas Vector Search를 사용하여 유사한 과거 이벤트를 검색하고, 유사성 점수를 결정론적 위험 모델과 결합하여 승인, 단계적 상향 과제 또는 거부 결정을 내립니다. 위험 모델과 관심 목록은 MongoDB 컬렉션에 저장됩니다. MongoDB Change Streams 스크리닝 서비스에 업데이트를 실시간 전파하여 프로덕션 결정에 항상 최신 로직을 사용할 수 있도록 합니다.

사기 감지 참조 아키텍처
클릭하여 확대

그림 1. 사기 감지 참조 아키텍처

  1. 트랜잭션 시작

    결제 채널 ( 예시: 카드 권한 부여 , 계정 간 이체 또는 디지털 월렛)은 사기 감지 API 로 트랜잭션 요청 보냅니다. 요청 고객 식별자, 판매자 데이터, 채널 메타데이터, 기기 지문, IP 정보 및 금액, 통화, 타임스탬프와 같은 기본 트랜잭션 속성이 포함됩니다.

  2. 트랜잭션 강화 및 지속성

    사기 감지 서비스는 요청 의 유효성을 검사하고 MongoDB Atlas 의 트랜잭션 컬렉션 에 트랜잭션 문서 씁니다. 각 문서 에는 판매자 세부 정보, GeoJSON 위치, 기기 정보 및 점수, 플래그 및 진단을 저장하는 중첩된 risk_assessment 구조가 포함되어 있습니다.

  3. 행동 패턴에 대한 임베딩 생성

    이 서비스는 판매자 카테고리, 채널, 기기 핑거프린트, IP 범위 , 시간 패턴 및 모든 내러티브 필드와 같은 트랜잭션 의 범주형 및 행동 측면을 캡처하는 벡터 임베딩을 생성합니다. 동일한 트랜잭션 문서 의 연산 필드와 함께 이 임베딩을 저장합니다.

  4. 유사한 사기 패턴에 대한 벡터 검색

    이 서비스는 트랜잭션 컬렉션 의 MongoDB Atlas Vector Search 인덱스 에 대해 $vectorSearch 쿼리 실행합니다. 이 쿼리 새로 생성된 임베딩을 사용하여 명시적인 규칙과 일치하지는 않지만 알려진 사기와 패턴을 주식 이벤트를 포함하여 행동적으로 유사한 과거 트랜잭션을 조회 .

  5. 결정론적 위험 모델 평가

    위험 엔진 이전 단계의 벡터 검색 과 병행하여 양, 균형 변경, 속도 카운터 및 지리 공간적 제약 조건과 같이 임베딩 외부에 남아 있는 숫자 및 구조화된 속성에 대해 규칙 기반 및 스코어카드 스타일 모델을 평가합니다. 이러한 구분은 결정론적 로직에서 숫자 제한과 규제 임계값을 유지하는 반면 임베딩은 동작 유사성에 중점을 둡니다.

  6. 위험 점수 집계 및 의사 결정

    이 서비스는 벡터 유사성 점수와 결정론적 위험 점수를 트랜잭션 에 대한 전체 위험 평가에 결합합니다. 구성된 임계값 및 정책에 따라 엔진 수행합니다.

    • 위험도가 낮은 거래를 승인하고 결제 채널 로 반환합니다.

    • 고 위험 트랜잭션 거부

    • 경계선 케이스에 대해 단계적 과제 ( 예시: 3-D Secure, OTP 또는 생체 인식)를 발행하고, 선택적으로 거부되거나 실패한 과제 케이스를 조사자의 후속 조치를 위해 수동 검토 대기열로 라우팅합니다.

    최종 결정과 지원 진단은 트랜잭션 기록 의 위험 평가 하위 문서에 다시 기록됩니다.

  7. Change Streams를 통한 실시간 위험 모델 업데이트

    위험 모델, 관심 목록 및 구성 문서는 MongoDB Atlas 의 전용 risk_models 컬렉션 에 저장됩니다. MongoDB Change Streams 이러한 컬렉션의 삽입, 업데이트, 교체 및 삭제를 포함한 변경 이벤트를 사기 탐지 및 위험 엔진 서비스에 브로드캐스트합니다. 분석가가 모델을 활성화하거나 조정할 때 모든 스크리닝 엔진은 배치 지연이나 수동 캐시 무효화 없이 밀리초 이내에 변경 사항을 수신하고 업데이트된 규칙을 새 트랜잭션에 적용 . 재개 토큰을 사용하면 실패 또는 재시작 후 서비스가 업데이트 누락 없이 처리 다시 시작할 수 있습니다.

  8. 감사, 모니터링 및 다운 처리

    핵심 결제 시스템은 승인된 거래를 처리하고, 거부되거나 문제가 발생한 거래는 자세한 위험 진단을 통해 거래 컬렉션 에 계속 표시됩니다. 분석가 및 모니터링 작업은 동일한 컬렉션 쿼리 시간 경과에 따른 모델 성능, 오탐지 및 새로운 사기 패턴을 추적 .

MongoDB Atlas 단일 managed 클러스터 에서 사기 감지, 호스팅 운영, 분석 및 구성 데이터를 위한 최신 데이터 플랫폼으로 사용합니다.

MongoDB Atlas 분석 이나 조사를 위해 세컨더리 저장소에 ETL(추출, 변환, 로드)을 할 필요 없이 사기 결정에 필요한 모든 데이터를 트랜잭션 근처에 보관합니다.

제안된 접근 방식

  • 실시간 의사 결정에 사용되는 고객, 트랜잭션 , 위험 구성 데이터를 저장합니다.

  • ETL 없이 분석 , 대시보드, 조사와 같은 세컨더리 워크로드를 지원합니다.

구현 참고 사항

  • 프로덕션 또는 대규모 데모 워크로드의 경우 Atlas M10 이상으로 시작하세요.

  • 복제본 세트(Atlas 기본값)를 사용하여 Change Streams를 활성화 하고 동시 읽기 워크로드를 제공 할 수 있습니다.

사기 결정에 필요한 모든 데이터를 트랜잭션 에 가깝게 유지하면서 엔터티 중심 및 구성 중심의 보기를 가능하게 하는 문서 스키마 설계합니다.

제안된 접근 방식

  • 엔터티/고객 컬렉션

    • 식별자, KYC(Know-Your-Customer) 속성, 행동 분석, 위험 평가, 엔티티 유사성에 대한 선택적 임베딩 등 360도 프로필로 개인 및 조직을 저장합니다.

    • 기기 지문, 일반적인 위치, 행동 패턴을 포함하거나 참조하여 '새 기기' 또는 '비정상적 위치 '와 같은 이상 징후 검사를 지원 .

  • 트랜잭션 컬렉션

    • 각 금융 트랜잭션 금액, 통화, 판매자, GeoJSON 위치 , 기기 정보 및 내장된 risk_assessment 하위 문서(점수, 레벨, 플래그, 진단)가 포함된 독립형 문서 로 표시합니다.

      • 이 패턴 사용하면 사기 엔진 다운스트림 도구가 쿼리 트랜잭션 기록 에 직접 결정 사항과 진단을 쓰기 (write) 수 있습니다.

  • 위험 모델/구성 컬렉션

    • 버전이 지정된 위험 모델을 요인, 가중치, 임계값 및 성과 지표 포함된 문서로 저장합니다. 이 컬렉션 사기 점수 산정을 위한 단일 구성 소스로 사용합니다.

자세한 내용은데이터 모델 접근 방식 - 금융 범죄 완화를 참조하세요.

MongoDB Atlas Vector Search를 사용하면 명시적인 규칙과 일치하지 않는 경우에도 알려진 사기 패턴이나 과거 고위험 이벤트처럼 행동하는 트랜잭션을 감지할 수 있습니다.

제안된 접근 방식

  • 트랜잭션 문서에 고차원 임베딩을 저장하여 판매자 카테고리, 채널, 기기, 시간 패턴 및 설명 텍스트와 같은 행동 신호를 캡처합니다.

  • $vectorSearch을(를) 사용하여 각 새 이벤트 에 대해 가장 유사한 과거 트랜잭션을 조회한 다음 유사성 점수를 위험 엔진 에 입력합니다.

구현 참고 사항

  • 컬렉션 의 필드 에 벡터 인덱스 ( 예시 : transaction_vector_index)를 생성합니다.vector_embedding transactions

  • 저장된 트랜잭션과 비교해야 하는 새로운 진행 중인 트랜잭션 모두에 대해 일관되게 임베딩을 생성합니다.

MongoDB 문서를 사용하고 엔터티 컨텍스트, 결정론적 규칙 및 벡터 유사성을 단일 위험 점수로 결합하는 사기 점수 서비스를 구현합니다. 단일 탐지 전략은 모든 사기를 포착할 수 없습니다. 계층화된 점수 산정은 오탐지와 오탐지를 모두 줄입니다.

제안된 접근 방식

  • MongoDB 에서 고객 또는 엔터티 프로필을 로드하여 행동 기준과 컨텍스트를 도출합니다.

  • 다음에 대해 독립적인 검사를 실행합니다.

    • 이 고객의 일반 금액과 비교한 금액 이상입니다.

    • 일반적인 위치로부터의 지리 공간적 거리를 사용한 위치 이상입니다.

    • 알려진 장치 및 IP 범위를 기반으로 한 장치 이상.

    • 슬라이딩 시간 창 에서 카운트를 사용하는 속도 이상입니다.

    • 벡터 검색 결과를 사용한 동작 유사성(범위에 따라 선택 사항).

  • 요인 점수와 기준 고객 위험 점수를 0-100 위험 점수로 결합하고 low, medium 또는 high 수준에 매핑합니다.

구현 참고 사항

  • 컨트롤러에 로직을 포함하는 대신 전용 서비스( 예시: FraudDetectionService)에 이러한 검사를 캡슐화하여 채널과 워크로드 전반에서 재사용할 수 있도록 합니다.

위험 엔진 및 MongoDB 액세스 패턴을 래핑하는 서비스 API를 노출합니다.

제안된 접근 방식

  • 트랜잭션과 해당 risk_assessment 문서를 MongoDB 에 쓰는 지속 및 점수 작업( 예시: POST /transactions)을 제공합니다.

  • 트랜잭션 유지하지 않고 위험 엔진 실행하는 상태 비저장 평가 작업을 제공하여 시뮬레이션 또는 사전 권한 부여 검사에 유용합니다.

  • 읽기 엔드포인트를 제공하여 최근의 고위험 트랜잭션을 찾아보고, 플래그로 필터하다 , 조사를 위해 고객 수준 기록을 조회 .

구현 참고 사항

  • OpenAPI 또는 이와 유사한 것을 사용하여 이러한 엔드포인트를 설명하여 채널 팀(모바일, 웹, 코어 뱅킹)이 일관되게 통합할 수 있도록 합니다.

  • MongoDB 쿼리(필터, 애그리게이션, $vectorSearch)를 컨트롤러가 아닌 서비스 계층 추상화에 유지합니다.

MongoDB Change Streams 와 전용 구성 컬렉션 사용하여 위험 모델 변경 사항을 실시간 관리 하고 배포할 수 있습니다.

제안된 접근 방식

  • 위험 모델을 요인 정의, 가중치, 임계값 및 상태( 예시: active, draft, archived)를 포함한 전체 문서로 유지합니다.

  • 위험 팀이 코드 변경 없이 모델을 활성화하고 버전을 지정할 수 있도록 모델 관리자 API 및 UI 제공합니다.

  • Change Streams를 사용하여 WebSocket 등을 통해 사기 서비스 및 UI에 대한 모델 변경 사항을 푸시하여 모든 구성 요소가 동일한 활성 모델을 즉시 적용 .

임베딩 제공자 ( 예시: AWS 베드락)를 통합하여 트랜잭션 및 사기 패턴에 대한 벡터 표현을 생성합니다.

제안된 접근 방식

  • 트랜잭션 컨텍스트(금액, 판매자, 채널 , 기기, 텍스트 필드)에서 임베딩을 생성하고 문서 스키마 의 일부로 MongoDB 에 저장 .

  • 사기 패턴 설명 또는 유형에 대한 임베딩을 생성하고 fraud_patterns 컬렉션 에 저장 패턴 기반 벡터 검색 가능하게 합니다.

구현 참고 사항

  • 이 패턴 Atlas Vector Search 와 호환되는 결정론적 고차원 임베딩을 반환하는 모든 제공자 지원합니다.

  • 지연 시간 대 모델 복잡성: 생성 및 벡터 검색 임베딩하면 결정 경로에 지연 시간 추가됩니다. 지연 시간 예산이 엄격한 채널의 경우 임베딩을 간소화하거나, 차원을 줄이거나, 가치가 높거나 위험이 높은 세그먼트에만 시맨틱 매칭을 적용 동시에 위험도가 낮은 트래픽에 대해서는 순수한 결정론적 규칙을 실행 수 있습니다.

  • 인덱스 크기 및 운영 오버헤드: 고차원 벡터 인덱스와 풍부한 트랜잭션 문서로 인해 저장 및 컴퓨팅 요구 사항이 증가합니다. 검색 품질, 운영 워크로드 성능, 비용 균형을 맞추기 위해 Atlas cluster 크기 조정, 인덱스 구성, 보관 전략을 계획하세요.2운영 쿼리 및 지리 공간적 규칙에는 표준 인덱스와 dsphere 인덱스를 사용하고, 행동 유사성이 확실한 감지 가치를 더하는 시나리오에는 예비 벡터 검색 사용합니다.

  • 구성 관리 복잡성: Change Streams를 통한 위험 모델 업데이트를 스트리밍하면 응답성이 향상되지만 구성 관리 및 테스트가 복잡해집니다. 실시간 업데이트로 인해 프로덕션 스크리닝 엔진에 잘못된 규칙이 전파되지 않도록 새 모델에 대한 명확한 프로모션 워크플로, 유효성 검사 단계 및 롤백 절차를 설계해야 합니다.

  • 범위 제한: 이 아키텍처는 트랜잭션 흐름에 대한 실시간 사기 탐지에 중점을 둡니다. 신원 확인, 자금 세탁 방지(AML) 및 KYC 온보딩, 장기 실행 사례 관리 에 별개이지만 관련이 있는 패턴을 사용하고, 모든 금융 범죄 사용 사례로 사기 파이프라인 과부하가 걸리는 대신 공유 컬렉션 또는 통합 지점을 통해 연결합니다.

이 아키텍처를 엔드 투 엔드로 구현 하려면 MongoDB Atlas 아키텍처 센터 솔루션 MongoDB Atlas 사용한 금융 범죄 완화를 참조하세요. 이 가이드 사용하여 환경을 구성하고 단계별 지침에 따라 사기 탐지 및 위험 모델 관리 위한 트랜잭션 시뮬레이터, 웹 인터페이스 및 지원 서비스를 배포 . 이 솔루션에는 금융 범죄 완화를 위한 추가 기능도 포함되어 있습니다.

돌아가기

운영 데이터 계층