機器人控制策略的部署與實作 - AWS 方案指引

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

機器人控制策略的部署與實作

規劃機器人控制部署策略時,需要考慮多個因素。除了 Web 應用程式的獨特特性之外,環境大小、開發程序和組織結構也會影響部署策略。根據您的環境和應用程式特性,可以使用集中式或分散式部署策略:

  • 集中式部署策略 — 當您想要嚴格執行機器人控制時,集中式方法可提供更高程度的控制。如果應用程式團隊偏好卸載管理,則此方法非常適合。當 Web 應用程序具有相似的特徵時,集中式方法是最有效的。在這種情況下,應用程式受益於一組常見的機器人控制規則和機器人緩解動作。

  • 去中心化部署策略 — 分散式方法為應用團隊提供了自主權,以獨立定義和實施機器人控制配置。對於較小的環境或應用團隊需要保留對其機器人控制策略的控制權,這種方法很常見。由於許多 Web 應用程序的性質,通常需要維護針對獨特應用程序特性量身定制的獨立機器人控制策略,從而實現分散的方法。

  • 合策略 — 這兩種方法的組合適用於 Web 應用程序的混合。例如,這可能需要一組適用於所有 Web ACL 的基本規則,而更具體的機器人控制政策的管理則則委派給應用程式團隊。 

您可以用AWS Firewall Manager來集中和自動化定義機器人控制政策的 AWS WAF Web ACL 的部署。使用 Firewall Manager 員時,請考慮集中機器人控制原則是否適當,包括是否應委派給應用程式團隊。透過 Firewall Manager 員,您可以使用標記來允許應用程式團隊選擇加入 AWS WAF 原則。這提供 AWS WAF 了智慧型威脅緩解功能。您也可以針對應用程式和安全性作業啟用集中式 AWS WAF 記錄。

無論使用什麼部署策略,建議定義和管理通過基礎架構作為代碼(IaC)為基礎的框架,如AWS CloudFormation或管理入職過程。AWS Cloud Development Kit (AWS CDK)這有助於您將原始檔控制設定為儲存和版本配置物件。如需詳細資訊,請參閱 AWS CDK(GitHub) 和 CloudFormation(AWS 說明文件) 的 AWS WAF 組態範例。

實施策略

選取部署策略之後,即可開始實作。部署策略定義如何將規則推出至不同的應用程式。在實施策略中,重點是添加控件,測試,持續監視,然後評估其效果的迭代過程。

了解流量模式

若要真正瞭解流量模式,請務必熟悉應用程式的業務功能和預期屬性,例如使用模式、關鍵資源和使用者角色。將測試期間產生的生產流量和流量納入應用程式中,以建立評估的基準。請確定時間範圍包含足夠代表多個使用尖峰的流量資料。

使用您偏好的工具,檢閱代表性使用期間的流量記錄和指標。透過篩選 AWS WAF 記錄欄位 headers (例如,User-AgentReferer)、和,來分析異常請求的日誌資料。country clientIp記下統一資源識別碼 (URI) 及其存取頻率。對流量進行分類,例如識別良好的漫遊器。例如,允許訪問有益的漫遊器,例如搜索引擎爬蟲和監視器。

在主控 AWS WAF 台的機器人控制儀表板上,機器人活動範例可用於任何作用中的 Web ACL。雖然這提供了常見機器人請求量的初始視角,但是請執行進一步的配置和分析以更好地了解機器人活動。

為了有效的實施,您必須對機器人流量、其影響以及哪些機器人請求有益與惡意有益的了解。這有助於進行下一個階段,選擇控制項,並協助您 parallel 評估機器人流量。

選取和新增控制項

初始流量分析有助於判斷要使用哪些機器人控制項,以及要為每個機器人選取哪些動作。您也可以選擇記錄和監控活動,以便日 future 採取行動。初始流量分析可幫助您選擇管理流量的最佳控制項。如需有關可用控制項的詳細資訊,請參閱本指南機器人控制的技巧中的〈〉。

請考慮在此步驟中加入其他 SDK 實作。這有助於您在所有必要的應用程式中測試和完成 SDK 實作。 AWS WAF 當您實作 JavaScript SDK 或行動 SDK 時,機器人控制和詐騙控制規則可提供完整的權杖評估優勢。如需詳細資訊,請參閱 AWS WAF 文件中的應用程式整合 SDK 與 Bot Control 搭配使用的原因。

我們建議為不同的應用程序類型實現令牌獲取,如下所示

  • 單頁應用程式 (SPA) — JavaScript SDK (無重新導向)

  • 動瀏覽器 — JavaScript SDK 或規則動作 (驗證碼或挑戰)

  • 網頁檢視 — JavaScript SDK 或規則動作 (驗證碼或挑戰)

  • 原生應用程式 — 行動 SDK

  • 內部框架 — SDK JavaScript

如需如何實作 SDK 的詳細資訊,請參閱 AWS WAF 文件中的用AWS WAF 戶端應用程式整合

測試並部署到生產環境

控制項最初應該部署在非生產環境中,您可以在其中執行測試,以確認預期的 Web 應用程式功能已保留。在生產部署之前,請務必在測試環境中執行徹底的驗證。

在非生產環境中測試和驗證之後,生產版本可以繼續進行。選取預期使用者流量最低的日期和時間。在部署之前,應用程式和安全團隊應檢閱營運準備程度、討論如何復原變更,以及檢閱儀表板,以確保設定所有必要的指標和警示。

透過 Amazon CloudFront 持續部署,您可以將少量流量傳送至具有專門針對機器人控制評估設定的 AWS WAF Web ACL 的暫存分發。 AWS WAF 為任何新的或更新的受管理規則提供版本管理,以便您可以在變更開始評估生產流量之前測試和核准變更。

評估和調整控制

實作的控制項可以提供進一步的洞察和流量活動和模式的可見性。經常監視和分析應用程式流量,以便新增或調整安全性控制。通常會有一個調整階段,以減輕潛在的誤報和誤報。錯誤的否定因素是指未被您的控制所捕獲的攻擊,並要求您加強規則。誤報表示被錯誤識別為攻擊並因此被阻止的合法請求。

分析和調整可以手動完成,也可以在工具的幫助下完成。安全信息和事件管理(SIEM)系統是一種常見的工具,可幫助提供指標和智能監控。有許多具有不同程度的複雜程度,但它們都提供了一個很好的起點來獲得流量見解。

定義網站和應用程式的重要關鍵績效指標 (KPI) 可協助您更快地識別事情何時無法如預期運作。例如,您可以使用信用卡扣款、每個帳戶的銷售額或轉換率作為機器人可能產生的業務異常指標。定義和了解哪些指標和 KPI 是有價值的監控是甚至更重要的不僅僅是監視的行為.

瞭解如何從機器人控制解決方案取得正確的指標和記錄,與識別要監視的指標同樣重要。下一節,監控機器人控制策略的準則, 詳細信息監控和可見性選項考慮.