安全性報告

本頁內容適用於 ApigeeApigee Hybrid

查看 Apigee Edge 說明文件。

您可以在「安全性報告」檢視畫面中建立報表,找出 API 的安全性威脅。如要產生報表,Apigee 會掃描指定時間間隔內的 API 流量資料,並搜尋可能由惡意代理程式造成的異常流量模式。Apigee 隨即會顯示報告,列出所有可疑活動。 您可以根據這項資訊採取行動,封鎖對 API 的攻擊。

您可以在 Apigee 使用者介面中建立安全性報表 (如下所述),也可以使用 Security reports API。如果您使用使用者介面,報表資料會僅限於所選環境。不過,您也可以使用 API 建立環境群組的報表。

如要瞭解執行安全性報告工作所需的角色,請參閱「 安全性報告的必要角色」。

如要使用這項功能,必須啟用外掛程式。如果您是訂閱方案客戶,可以為機構啟用外掛程式。詳情請參閱「 管理訂閱機構的進階 API 安全性」。如果您是隨用隨付方案客戶,可以在符合資格的環境中啟用外掛程式。詳情請參閱「 管理進階 API 安全性外掛程式」。

機器人偵測

API 安全性最嚴重的威脅之一來自機器人:自動化指令碼會對 API 傳送惡意要求。Advanced API Security 會根據實際 API 資料分析結果,搜尋特定 API 流量模式 (稱為偵測規則),藉此偵測機器人。

安全性報告資料延遲

資料流入 Apigee Analytics 管道時,平均會有 15 到 20 分鐘的延遲。 因此,如果安全報告的結束時間在 20 分鐘前,可能會傳回不正確的結果。

開啟「安全性報告」檢視畫面

如要開啟「安全性報告」檢視畫面,請按照下列步驟操作:

Cloud 控制台中的 Apigee

在 Google Cloud 控制台,前往「Advanced API security」(進階 API 安全性) >「Security reports」(安全性報告) 頁面。

前往安全性報告

傳統版 Apigee UI

在傳統 Apigee 使用者介面中,依序選取「Analyze」>「API Security」>「Security Reports」

系統會顯示主要的「安全性報告」檢視畫面:

安全性報告主視窗。

在頁面頂端,你可以選取:

  • 要建立報表的環境。
  • 「報表類型」篩選器。相關選項如下:
    • 全部
    • 已啟用
    • 已失敗
    • 已過期

這些選項下方會以表格列的形式顯示安全性報告。 每個資料列都會顯示下列報表詳細資料:

  • 報表名稱。按一下報表名稱即可查看報表。
  • 報表「狀態」,可能是下列其中一種:
    • 執行中:報表目前正在執行,因此還無法查看。
    • 已完成:報表已完成,可以查看或匯出。
    • 已過期:報表已過期,無法再透過使用者介面查看或匯出。 如要在到期日後查看報表,請務必在此日期前匯出報表。30 天後,報表會從可用報表清單中移除。
  • 「開始時間」和「結束時間」會顯示報表的開始和結束日期與時間。

  • 提交日期:提交報表要求的日期和時間。
  • 到期時間:報表到期時間,到期後就無法在 Apigee UI 中查看。報表會在建立後 7 天到期。 30 天後,報表就會從可用報表清單中移除。報表過期後,您無法在使用者介面中查看或匯出報表。
  • 檔案大小:報表檔案大小。您可能需要修改報表條件,才能建立檔案大小低於上限的報表。如要瞭解檔案大小上限和縮減檔案大小的具體方法,請參閱「安全性報告的限制」。
  • 匯出:以 zip 檔案格式匯出/下載報表。只有在報表狀態為「已完成」時,才能匯出報表。

建立新的安全性報告

如要建立新的安全性報告,請先在「安全性報告」檢視畫面中,按一下「+建立」。系統會開啟「建立安全報告工作」對話方塊,您可以在其中設定報告選項,詳情請參閱下一節。

安全性報表選項

您可以為安全性報告指定下列選項:

  • 報表名稱:報表名稱。
  • 報表日期範圍:報表的開始和結束時間。

    注意:報表的開始和結束時間必須是過去的時間,且報表建立時,最多只能是過去一年內的時間。

  • 指標:報表的指標。您可以從下列指標和匯總函式中選擇,這些函式會計算指標的統計資料。
    指標 說明 匯總函式
    機器人 每分鐘間隔內偵測到的機器人專屬 IP 位址數量。 count_distinct
    bot_traffic 每隔一分鐘,系統會統計偵測到的機器人 IP 位址傳送的郵件數。 sum
    message_count

    Apigee 每分鐘處理的 API 呼叫總數。

    注意: message_count 無法與其他指標或 bot_reason 維度用於同一份報表。

    sum
    response_size 以位元組為單位,傳回的回應酬載大小。 sumavgminmax
  • 維度:維度可讓您根據相關資料子集,將指標值分組。下表說明進階 API 安全性報表專用的維度。

    維度 說明
    bot_reason
    incident_id (預先發布版)
    security_action (預先發布版) 安全性動作類型。可能的值為 ALLOW、DENY 和 FLAG。
    security_action_name 安全措施的名稱。
    security_action_headers 附加至 ALLOW 動作要求的標頭。

    注意:bot_reason 維度是 Advanced API Security 專屬的維度,可以是個別偵測規則的任意組合。偵測到機器人時,bot_reason 會包含機器人流量在偵測時符合的個別偵測規則子集。

    注意: bot_reasonincident_id 僅適用於下列指標:

    • 機器人
    • bot_traffic
    • response_size

    如要瞭解進階 API 安全性報表支援的其他維度,請參閱維度

    如要新增多個維度,請為每個維度點按「+ 新增維度」。您也可以點選維度欄位右側的向上或向下箭頭,變更報表中維度的顯示順序。

  • 篩選器:篩選器可將結果限制為具有特定值的指標。 如要建立篩選器,請設定下列欄位:
    • 選取篩選器的名稱。
    • 選取比較運算子。
    • 選取一個值。

    請參閱「篩選器」。

選取所有報表選項後,按一下「建立」即可建立報表工作。 報表可能需要一段時間才能完成。按一下窗格右上方的「重新整理」按鈕,即可查看完成的報表。

查看已完成的報告

報告完成後,會顯示在下表:

表格中顯示安全性報告。

如要查看報表,請採取下列任一做法:

  • 按一下報表名稱。
  • 在該報表的資料列中,按一下「匯出」
注意:機器人偵測功能平均會有 15 到 20 分鐘的處理延遲。

範例:機器人 IP 位址報表

以下範例會建立報表,顯示偵測到的機器人 IP 位址。如要建立報表,請使用下列設定:

  • 指標:機器人,即識別為機器人來源的相異 IP 位址數量。
  • 匯總函式:count_distinct
  • 維度:「已解析的用戶端 IP」

完成的報表如下所示:

安全性報告機器人 IP 位址報告

請注意,報表底部的表格列出 Advanced API Security 識別為機器人的 IP 位址。

範例:依機器人原因分類的機器人流量報表

下一個範例會依 bot_reason (導致系統偵測到機器人的偵測規則集),建立機器人流量報表,其中包含來自已識別為機器人來源的 IP 位址要求數。如要建立報表,請使用下列設定:

  • 指標:bot_traffic
  • 匯總函式:sum
  • 維度:bot_reason

完成的報表如下所示:

Security Report bot traffic by bot reason \report

每個 bot_reason 都包含部分偵測規則。 如圖所示,下列規則組合是造成大量機器人流量的偵測規則:

  • Flooder
  • Brute Guessor
  • Robot Abuser

示例:機器人流量報表

下一個範例會建立未依維度分組的報表。如不想依維度將資料分組,可以將「維度」設為「環境」。 由於資料一律會限制在所選環境中,因此報表不會有資料分組。

  • 指標:漫遊器流量
  • 匯總函式:sum
  • 維度:environment
機器人流量報告的安全報告

報表會顯示在報表時間範圍內,每分鐘來自已識別為機器人來源的 IP 位址總流量。請注意,系統不會進行分組。

更多安全性報告範例

下表列出一些範例,說明如何使用不同指標和維度建立報表,確保報表安全無虞:

檢舉 指標 維度
各環境的漫遊器流量和漫遊器數量報表 botbot_traffic 環境
不同漫遊器原因的漫遊器流量和漫遊器數量報表 botbot_traffic bot_reason
不同國家/地區的漫遊器流量和漫遊器數量報表 botbot_traffic ax_geo_country
不同網際網路服務供應商的漫遊器流量和漫遊器數量報表 botbot_traffic ax_isp
機器人偵測報告 (詳細清單檢視畫面) bot_traffic 已解析的用戶端 IPax_ispbot_reasonrequest_uriclient_id
每個存取權杖的漫遊器流量 bot_traffic access_token
每個 API Proxy 的機器人流量 bot_traffic apiproxy
每個代理程式系列的漫遊器流量 bot_traffic ax_ua_agent_family
每個使用者代理程式的漫遊器流量 bot_traffic useragent
各代理程式類型的漫遊器流量 bot_traffic ax_ua_agent_type
各裝置類別的機器人流量 bot_traffic ax_ua_device_category
各 OS 系列的漫遊器流量 bot_traffic ax_ua_os_family
每個用戶端 ID 的漫遊器流量 bot_traffic client_id
每個 Proxy Basepath 的漫遊器流量 bot_traffic proxy_basepath
每個 Proxy 路徑後置字串的漫遊器流量 bot_traffic proxy_pathsuffix
每個要求 URI 的漫遊器流量 bot_traffic request_uri
各要求動詞的漫遊器流量 bot_traffic request_verb
各回應狀態碼的機器人流量 bot_traffic response_status_code

安全性報告的限制

安全性報表有下列限制:

  • 資料流入 Apigee Analytics 管道時,平均會有 15 到 20 分鐘的延遲。因此,如果建立報表時的「結束時間」距離現在不到 20 分鐘,可能會傳回不正確的結果。
  • 機器人報表的時間範圍上限為 1 年。
  • 報表最多可使用 25 個指標和 25 個維度。
  • 非同步自訂報表 API 相同,報表的資料量上限為 31 MB。如果報表達到大小上限,可以採取下列做法:
    • 縮短報表的時間範圍。
    • 根據一組值篩選資料,將資料分成較小的子集,然後為每個子集建立一份報表。
  • 基於隱私權考量,已解析的用戶端 IP 維度無法與 ax_geo_cityax_geo_country 維度列在同一份報表中。
  • 篩選 incident_id 的安全性報表工作必須包含 incident_id 做為維度。
  • 下列指標僅適用於 Security Reports API,不適用於使用者介面:bot_first_detected (min)bot_last_detected (max)