Botを「いなす」アカマイの技術 〜銀行法改正とスクレイピング〜

2017年6月に銀行法が改正・公布され、今年6月1日に施行されました。
注目すべき内容としては、銀行とユーザ(主に預金者)の間に介在し、送金など金融サービスを代行する事業者(電子決済等代行事業者)についてルールが設けられた点です。
身近な例でいうと、いわゆる家計簿アプリです。
自身の資産を管理するサービスは、既に広く使用されていますが、これらのサービスは一般的にPFM(Personal Financial Management)とよばれています。具体的には、事業者がユーザーのIDやパスワードを預かり、ユーザーを代行してユーザー口座にアクセスし、「ウェブ・スクレイピング」という技術を使って、自動化ツール(Bot)により情報を取得するアカウントアグリゲーションとよばれるサービスです。
今回の銀行法改正でカバーされる範囲は多岐に渡りますが、この記事で着目したい点は、これまでPFMで一般的に使用されてきたウェブ・スクレイピングについて原則禁止(施行後2年間の猶予あり)となった点です。背景としては、ウェブ・スクレイピングが銀行の同意を得ずに実行されるものであり、PFM事業者と銀行双方にとって必ずしも好ましいものではなかったという状況があります。改正銀行法の施行(2019年6月1日)以降、PFM事業者が事業を行うためには、PFM事業者と銀行間で契約が必要となり、銀行側はスクレイピングによることなく、情報を公開するためのAPIを開発するなど、体制を整える努力を求められます(※)。
私が担当する金融機関のお客様との、銀行法改正とスクレイピングに関する会話では、概ね下記の3点に課題が集約されます。
- 課題1:自動化ツールによるアクセスを検知する仕組みがない
- 既存のログからPFMと考えられる業者からのアクセスは部分的に検知しているが、網羅的ではない。
- 課題2:協議のベースとなるデータがない
- PFM業者と会社間の協議をするにしても、現在のスクレイピング状況を示す量的なデータがない。
- 課題3:PFMからのアクセスによりシステム負荷が増大
- 給与支払日など入出金が活発になる月末にPFMからのアクセスが集中する。
これらの課題に対してAkamaiがご提案させていただくのは、 AkamaiのPlatform上で自動化ツールによるアクセスを検知できるBot Managerというサービスです。
Botを検知して「いなす」
AkamaiのBot Managerは、シグネチャ検知・アクティブ検知・ふるまい検知といった多段の検知メカニズムを具備しており、アクセス時のリクエストを Akamai Edgeサーバ上で検知・対応をとることが可能になります。 Akamaiで配信しているWebサイトに対する全てのアクセスに対して検知の仕組みが働くため、上記課題1の解決に寄与します。
さらに、 Akamaiはインターネットで観測される様々な種類の自動化ツール(Bot)のカテゴリデータを保有しています。下の図1はBot Managerの画面の一部ですがこのケースでは、サイトを訪問したBot全体のうち、65%は Akamai Categorized Botと判定されており、(Akamaiが知っているという意味で)既知のBotと仕分けすることができています。PFMで使用されるBotについてはFintech Account Aggregator Botというカテゴリがあり、代表的なPFM事業者はここにカテゴライズされます。

つまり、カテゴライズによって、特定のPFM事業者がどのくらいの自動化ツールによるアクセス(スクレイピングを含む)を行なっているか、量的なデータが入手可能になるのです。これにより課題2に対してのソリューションとなります。
また、Bot Managerは、Botを検知するだけでなく、幅の広い対応(検知したBotアクセスに対してどのような返答をするか)が設定可能です。具体的には、単に許可・遮断の二択ではなく、Botからのアクセスにだけ別のコンテンツをEdgeのキャッシュから返すなど条件を組み合わせた複雑な設定も可能です。
とある証券会社様の事例では、マーケットが開いている日中帯の時間は、Botではない通常ユーザからのアクセスが増加します。ここにさらに自動化ツールからのアクセスを受け入れてしまうと、システム負荷があがり通常ユーザのアクセスに支障がでてしまうため、Bot Managerで日中帯に限り自動化ツールからのアクセスに対してお客様システム側の負荷を減らす対応を実施しました。
特筆すべき点は、上記のBotに対する対応は全てAkamai Edgeサーバ上で機能するため、お客様システム側の負荷を軽減できる点です。 AkamaiではこれをBotを「いなす」と表現します。これにより課題3に対するソリューションになります。
ちなみに、Bot Managerでは、図1の通りAkamaiのカテゴライズに含まれない"Unknown Bots(=未知のBot)"についても検知されます。未知のBotと判定されたものについても、
- 自社にとっては既知か未知か
- botが行なっていることが自社のビジネスにとって良性か悪性か
といったデータに基づく検討が可能になります。
未知のbotについてもお客様個別のbotカテゴリを設定でき、かつ検知した場合の返答を設定可能になります。
このような自動化ツールに対する継続的な取り組み(ボット・マネジメント)を運用していくことで、今後、量・種類ともに増加していくことが予想される自動化ツールからのアクセスを可視化し、自社のビジネス保全や法規制遵守のために適宜対応をとっていくことがポイントです。
※ご参考