GraphQL アナリティクス
GraphQL アナリティクス API を使用して、トラフィックに一致するルールに関連する Magic Firewall ネットワークトラフィックのデータを確認します。これには、Magic Firewall ダッシュボードで構成したルールと、Cloudflare が Magic Firewall 管理ルール および Magic Firewall IDS 機能の一部として管理するルールの両方が含まれます。
始める前に、API トークンを取得する必要があります。GraphQL アナリティクスの使い方についての追加情報は、GraphQL アナリティクス APIを参照してください。
オブジェクトのための Magic Firewall GraphQL クエリを構築するには、Cloudflare アカウント ID が必要です。
- Cloudflare ダッシュボード ↗にログインし、アカウントを選択します。
- ブラウザのアドレスバーの URL は
https://dash.cloudflare.com/の後に16進数の文字列が表示されるはずです。この16進数の文字列があなたの Cloudflare アカウント ID です。
特定のルールのアナリティクスを収集するためのクエリを構築するには、各ファイアウォールルールのルール ID が必要です。
- Cloudflare ダッシュボード ↗にログインし、アカウントを選択します。
- Magic Firewall を選択します。
- ルール ID が必要なルールをリストから見つけ、編集を選択します。
- ルール ID を見つけ、コピーボタンを選択します。
- キャンセル を選択して Magic Firewall ページに戻ります。
このセクションでは、5 分間隔で構成されたすべての Magic Firewall ルールの 5 分間のカウントを取得するテストクエリを実行します。以下のコードを GraphiQL にコピーして貼り付けることができます。
アナリティクススキーマに関する追加情報は、GraphiQL でアナリティクススキーマを探索するを参照してください。
query { viewer { accounts(filter: {accountTag: "<YOUR_ACCOUNT_ID>"}) { magicFirewallSamplesAdaptiveGroups( filter: {datetime_geq: "2022-01-05T11:00:00Z", datetime_leq: "2022-01-05T12:00:00Z"}, limit: 2, orderBy: [datetimeFiveMinute_DESC]) { sum { bits packets } dimensions { datetimeFiveMinute ruleId } } } }}以下の例を使用して、過去1時間以内の疑わしい悪意のあるトラフィックストリームの上位10件のパケットとビットの合計を表示します。結果を受け取った後、5 分間の平均でパケットレートでソートできます。
各ストリームについて、以下を表示します:
- ソースおよび宛先 IP アドレス
- 受信した Cloudflare データセンター
- 1時間以内に受信したビットおよびパケットの合計トラフィック量
- ファイアウォールルールによって取られたアクション
query{ viewer { accounts(filter: {accountTag: "<ACCOUNT_ID>"}) { magicFirewallNetworkAnalyticsAdaptiveGroups( filter: { ruleId: "<RULE_ID>", datetime_geq: "2022-01-12T10:00:00Z", datetime_leq: "2022-01-12T11:00:00Z" } limit: 10, orderBy: [avg_packetRateFiveMinutes_DESC]) { sum { bits packets } dimensions { coloCity ipDestinationAddress ipSourceAddress outcome } } }}}以下の例を使用して、Magic Firewall IDS が過去1時間に検出した上位10件のトラフィックストリームのパケットとビットの合計を表示します。
verdict を drop に設定し、outcome を pass に設定することで、検出としてマークされたトラフィック(すなわち、verdict が drop であったが、ドロップされなかったトラフィック)をフィルタリングしています(たとえば、outcome が pass であった)。これは、現在のところ、Magic Firewall IDS は悪意のあるトラフィックを検出するだけで、トラフィックをドロップしないためです。
各ストリームについて、以下を表示します:
- ソースおよび宛先 IP アドレス。
- 受信した Cloudflare データセンター。
- 1時間以内に受信したビットおよびパケットの合計トラフィック量。
query{ viewer { accounts(filter: {accountTag: "<ACCOUNT_ID>"}) { magicIDPSNetworkAnalyticsAdaptiveGroups( filter: { datetime_geq: "2022-01-12T10:00:00Z", datetime_leq: "2022-01-12T11:00:00Z", verdict: drop, outcome: pass } limit: 10, orderBy: [avg_packetRateFiveMinutes_DESC]) { sum { bits packets } dimensions { coloCity ipDestinationAddress ipSourceAddress } } }}}また、分析されたすべてのトラフィックを検査するために、悪意のあるトラフィックとその他のトラフィックにグループ化された例を使用することもできます。応答には、各5分間のタイムスタンプに対して2つのエントリが含まれます。悪意のあるトラフィックには verdict が drop に設定され、IDS ルールに一致しなかったトラフィックには verdict が pass に設定されます。
query{ viewer { accounts(filter: {accountTag: "<ACCOUNT_ID>"}) { magicIDPSNetworkAnalyticsAdaptiveGroups( filter: { datetime_geq: "2022-01-12T10:00:00Z", datetime_leq: "2022-01-12T11:00:00Z" } limit: 10, orderBy: [avg_packetRateFiveMinutes_DESC]) { sum { bits packets } dimensions { coloCity ipDestinationAddress ipSourceAddress verdict } } }}}