Apigee Sense とは

Apigee Edge のドキュメントを表示しています。
Apigee X のドキュメントに移動
情報

Apigee Sense は、悪意のあるクライアントによる攻撃など、望ましくないリクエスト トラフィックから API を保護します。Apigee Sense は、API リクエスト トラフィックを分析し、望ましくないリクエストを表す可能性があるパターンを識別します。

この分析を使用すると、望ましくないリクエストを出すクライアントを特定し、そのリクエストに対して許可、ブロック、フラグ設定のアクションを取ることができます。

Apigee Sense では、以下のようなリクエスト パターンから API を保護できます。

  • 人間の振る舞いの中に紛れた自動化された動作
  • 同じ IP から何度も続く試行
  • 異常なエラー率
  • 疑わしいクライアント リクエスト
  • データクロール
  • キー ハーベスティング
  • アクティビティ バースト
  • 地理的パターン

望ましくないリクエストの検出

Apigee Sense はバックグラウンドでリクエスト メタデータから検出を行い、その分析結果を確認用に提供します。Apigee Sense コンソールでその分析結果を確認できます。あるパターンが疑わしいと思われる場合は、パターンの背後にある詳細を詳しく見て、アクションを取るべきかどうかを判断できます。

リクエスト パターンを検出する目的で、Apigee Sense はリクエスト メタデータを保存し、分析します。クライアントがリクエストを行うと、Apigee Sense はリクエスト メタデータを収集し、そのデータを一括分析してパターンを探します。

Apigee Sense コンソール スタートガイドをご覧ください。

検出されるパターン

Apigee Sense コンソールに、分析結果がパターンとして表示されます。それぞれのパターンは、分析中に検出された、リクエストに見られる一連の特徴を表します。

以下に、パターンの例をいくつか示します。

  • 理由。Reason(理由)という組み込みの構成が多数あり、これらを使って API へのリクエストをフィルタリングして表示できます。それぞれの理由は、疑わしいアクティビティを示唆する一連の基準としきい値を表します。たとえば「content robber」(コンテンツ強奪者)は、5 分間に僅かな数の OAuth セッションと大量のトラフィックを伴ったリクエストを表します。これに含まれるしきい値は、IP からの呼び出し数、トラフィック全体に占める割合、固有のセッション数です。
  • 地理的な意味。発信元の地域に基づきフィルタリングしてリクエストを表示します。
  • AS Organization。リクエストが送信された自律システムの組織でフィルタリングしてリクエストを表示できます。

以下の図では、リクエスト メタデータの分析中に検出された理由(Reason)パターンが Apigee Sense コンソールに一覧表示されています。

パターン、特に理由に関する詳細については、疑わしいアクティビティへの対処をご覧ください。

分析されるデータ

Apigee Sense は、リクエスト メタデータを収集して API トラフィックを分析します。以下に、分析されるメタデータの種類と、パターンを検出するために Apigee Sense が用いる質問をいくつかリストします。

  • クライアントの特性。クライアントの IP アドレスは何か、地理的位置はどこか、使用されたユーザー エージェントやファミリーは何か、デバイスは何か。
  • ターゲットの特性。クライアントのターゲットとなる URI。それらが 1 つのログイン プロキシを繰り返し狙っているか。
  • リクエストの特性。使用された HTTP 動詞とリクエスト URI は何か、パス サフィックスは何か。
  • レスポンスの特性。クライアントが受け取ったレスポンス コードは何か、それはエラーか。レスポンスの大きさはどれほどか。
  • タイミングと量。短期間のリクエスト急増(スパイク)が発生したか、いつ発生したか、急増の程度はどれほど大きいか、リクエストはどこから送信されたか。

クライアントのリクエストが望ましくないものかどうか判別する際には、[Detailed View] を使用して、リクエストの特徴を詳しく調べることができます。

分析の詳細を調べる方法については、Apigee Sense Console スタートガイドをご覧ください。

API の保護

Apigee Sense からの分析結果に基づき、クライアントまたは一連のリクエストがアクションの対象となるかどうかをご自分で判断します。

Apigee Sense コンソールで、特定の IP アドレス(またはアドレス グループ)に関するトラフィックの詳細を表示できます。望ましくないクライアントを識別したら、そのクライアントのリクエストをブロックするなどのアクションを取ることができます。

選択できる操作

Apigee Sense コンソールを使用すると、望ましくないと判断した IP アドレスに対して以下のアクションを実行できます。

アクション 説明
ブロック 指定した IP アドレスから届くリクエストをブロックし、403 レスポンスをクライアントに返します。ブロックされたリクエストは、プロキシには届きません。
フラグ 特別な HTTP ヘッダーを追加し、プロキシがそれを検索できるようにします。Apigee Edge は、値 SENSE を持つ X-SENSE-BOT-DETECTED ヘッダーを追加します。
許可 リクエストがプロキシに進むことを許可します。

疑わしいリクエストに対するアクションの実行について詳しくは、Apigee Sense Console スタートガイドをご覧ください。

Apigee Sense の概要

Apigee Sense は、複数のデータセットからのデータで調整された適合型アルゴリズムを使用します。結果として、単一のデータソースから行うよりも効率良く正当なトラフィックを区別することができます。適合型アルゴリズムは、識別とトラッキングのプロセスを自動化します。したがって、必要な作業は、IP アドレスからの疑わしいトラフィックをどのように扱うか決めることだけです。

Apigee Sense は次の 4 つのコンポーネントで構成されます。

  • コレクション エンジンは、トラフィックが Apigee Edge を通過するときに、該当する多くのシグナルを収集します。Apigee Sense は、API 呼び出しの送信元と宛先に関する一般的なメタデータ、およびリクエスト内容とレスポンス ステータスに関連するメタデータを収集します。また、タイミングとレイテンシの情報も収集します。
  • 分析エンジンは、収集されたすべてのデータをサマリーデータ構造にします。Apigee Sense はこの構造をより深く分析し、各リクエスト元の動作(振る舞い)を調べます。さらに Apigee Sense は、送信元が疑わしいシグネチャを持っているかどうか判断します。
  • キュレーション エンジンを介して、Apigee Sense は分析結果をユーザーに提供します。これらの結果を用いて、識別された疑わしいクライアントに対するアクションを指定できます。
  • 最後に、アクション エンジンは、疑わしいクライアントから届くリクエストをリアルタイムで識別し、そのようなトラフィックに対して必要かつ適切なアクションを実施します。