学習・技術検証用デモ — 本システムは実際の銀行サービスではありません。

公開情報をもとに構築した教育目的のシステムです。実在する個人情報・口座情報・機密情報・認証情報等を入力しないでください。

ミニ銀行ACADEMY SYSTEM LEARNING
教材メニュー
学習進捗0 / 134
あと134項目
INTERMEDIATE · 中級COURSE 09 · BANKING ENGINEERING

銀行エンジニアリング Lab 04:AML Lab(検知・調査・誤検知・上申)

架空の取引パターンを作ってアラートを発生させ、ケース化・証拠収集・判断までを体験します。証拠なしの判断や、一人での二次確認が止められることも確かめます。

19 / 55
BANKING ENGINEERING · 銀行エンジニアリング

v8以降に実装した台帳・記帳エンジンなどを実際に動かし、正常時と異常時の両方から銀行システムの構造を学ぶ。

Prerequisite: BANKING SYSTEM

LEARNING GOALS

このページで学ぶこと

  • 取引パターンからアラートを発生させる
  • ケース調査の手順
  • 統制(証拠必須・二次確認・上申)の確認

PLAIN LANGUAGE

まず、ここだけつかむ

1

架空の取引パターンでアラートを発生させ、ケースを調査します。

2

証拠なしの判断、同一人物の二次確認、担当者による上申案件の完了が止められることを確かめます。

3

アラートが出ても口座や記帳が変わらないことを確認します。

DIFFICULT PARTS, STEP BY STEP

難しいポイントを、順番にほどく

専門用語を覚えることより、「なぜ必要か」「このシステムのどこで使うか」を理解することが目標です。

01

検査(Scan)

やさしく言うと

ルールを取引に適用する操作です。

なぜ必要?

兆候をアラートにするためです。

Minibankでは

AML画面の「検査を実行」。

02

証拠の収集

やさしく言うと

その時点の口座情報と取引を保存することです。

なぜ必要?

判断の根拠を後から確かめられるようにするためです。

Minibankでは

aml.collect_evidence()。

03

統制の確認

やさしく言うと

止めるべき操作が止まることの確認です。

なぜ必要?

手順が形だけにならないようにするためです。

Minibankでは

AL007・AL008・AD004。

準備

seed で、架空顧客Bobに「入金直後のほぼ全額送金」と「短時間の高頻度送金」のパターンが作られ、前者は調査中のケースになっています。二次確認の演習では operator と manager の2人を使います。

open 'http://localhost:54336/local/login?as=operator&next=/admin/aml'

演習

演習操作観察すること
1. 検知他行為替で1時間以内に5回送金 → AMLで検査を実行HIGH_FREQUENCY_OUTFLOW のアラートが1件。もう一度検査しても増えない
2. アラート≠判断アラートの口座を口座管理画面で見る口座は有効のまま。記帳も変わらない
3. 証拠なし判断ケースを作り調査開始 → すぐ判断「判断には調査メモか証拠が必要です」
4. 誤検知証拠を収集 → FALSE_POSITIVE と理由を記録ケースとアラートが完了(CLOSED)
5. 二次確認別のケースで NEEDS_REVIEW → 同じ人で判断 → manager で判断同じ人は拒否、別の人なら完了
6. 上申ESCALATED → operator で完了を試す → manager で完了operator は権限エラー、manager が結論を記録

振り返り

  • アラートの根拠(evidence)だけで判断できたか、それとも追加の証拠が必要だったか
  • 誤検知として閉じた理由を、第三者が読んで納得できる文章で残せたか

CHECK YOUR UNDERSTANDING

3問で理解チェック

答えを頭の中で考えてから、各項目を開いて確認してください。

Q1Labで二次確認を試すのに必要なのは?
答え

依頼者とは別の担当者(operatorとmanager)です。

Q2誤検知で閉じたケースのアラートはどうなりますか?
答え

CLOSED になります。

Q3上申案件を operator が完了しようとすると?
答え

権限エラー(AD004)になります。

ここまで読めましたか?

完全に暗記する必要はありません。大切な考え方を説明できそうなら押してください。

SOURCE TRAIL

根拠と関連教材

CURRENT IMPLEMENTATIONは確認したrepository内の実装です。HISTORICAL IMPLEMENTATIONは導入・修正の履歴で、後続migrationによる再定義があり得ます。RELATED LESSONは教材への案内で、実装の一次Sourceではありません。ASSUMPTIONは仮定、UNKNOWNは未確認を表します。

確認基点: d02eae8914f39cbf06bfe422dc39c71886f82b3e / 2026-09-11。稼働環境への適用確認: UNKNOWN。パス実在の自動検査と、記述した技術的事実の確認は別です。

Implementation Status: IMPLEMENTED IN MINIBANK(この教材が扱うコードの範囲)

  • RELATED LESSON/docs/be-aml-case-investigationケース調査
  • CURRENT IMPLEMENTATIONsrc/app/admin/(protected)/aml/cases/[id]/page.tsxAmlCasePage()ケース詳細と判断画面
  • CURRENT IMPLEMENTATIONscripts/banking/v11-aml.test.mjs4ルールの検知、アラート≠判断、ケースの手順・二次確認・上申のDBテスト