權杖網域和網域清單 - AWS WAF、AWS Firewall Manager 與 AWS Shield Advanced

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

權杖網域和網域清單

為客戶端AWS WAF創建令牌時,它會使用令牌域對其進行配置。當AWS WAF檢查 Web 請求中的令牌時,如果其域不匹配任何被認為對 Web ACL 有效的域,它將拒絕令牌作為無效。

默認情況下,AWS WAF僅接受其域設置與 Web ACL 關聯的資源的主機域完全匹配的令牌。這是 Web 請求中Host標頭的值。在瀏覽器中,您可以在 JavaScript window.location.hostname屬性和用戶在其地址欄中看到的地址中找到此域。

您也可以在 Web ACL 組態中指定可接受的權杖網域,如下節所述。在這種情況下,AWS WAF接受與主機標頭完全匹配以及與令牌域列表中的域匹配。

您可以指定在設定網域時AWS WAF以及在 Web ACL 中評估權杖時使用的權杖網域。您指定的網域不能是公開尾碼,例如。gov.au如需您無法使用的網域,請參閱 https://publicsuffix.org/list/public_suffix_list.dat公開尾碼」清單下方的清單

設定 Web ACL 權杖網域清單

您可以將 Web ACL 設定為在多個受保護資源之間共用權杖,方法是提供包含您要AWS WAF接受的其他網域的權杖網域清單。對於令牌域列表,AWS WAF仍然接受資源的主機域。此外,它接受權杖網域清單中的所有網域,包括其前置字元的子網域。

例如,權杖網域清單example.com中的網域規格符合 example.com (自http://example.com/) api.example.com、(自http://api.example.com/) 和 www.example.com (從http://www.example.com/)。它不匹配example.api.com,(從http://example.api.com/)或apiexample.com(從http://apiexample.com/)。

您可以在建立或編輯 Web ACL 時設定權杖網域清單。如需有關管理 Web ACL 的一般資訊,請參閱使用 Web ACL

控制權杖內的網域設定

AWS WAF根據挑戰指令碼的要求建立權杖,這些指令碼由應用程式整合 SDK 和Challenge和CAPTCHA規則動作執行。

在 Token 中AWS WAF設定的網域取決於要求它的挑戰指令碼類型,以及您提供的任何其他 Token 網域組態。 AWS WAF將權杖中的網域設定為可在組態中找到的最短、最一般的設定。

  • JavaScript SDK — 您可以使用權杖網域規格來設定 JavaScript SDK,其中可包含一或多個網域。根據受保護的主機網域和 Web ACL 的 Token 網域清單,您設定的網域必須是AWS WAF將接受的網域。

    當為用戶端AWS WAF發出 Token 時,它會將 Token 網域設定為符合主機網域的一個,並且是從主機網域和已設定清單中的網域中最短的網域。例如,如果主機域是api.example.com並且令牌域列表具有example.com,則在令牌example.com中AWS WAF使用,因為它與主機域匹配並且較短。如果您未在 JavaScript API 配置中提供令牌域列表,請將該域AWS WAF設置為受保護資源的主機域。

    如需詳細資訊,請參閱 提供在權杖中使用的網域

  • 行動 SDK — 在您的應用程式程式碼中,您必須使用權杖網域屬性來設定行動 SDK。根據受保護的主機網域和 Web ACL 的 Token 網域清單,此屬性必須是AWS WAF將接受的網域。

    當為用戶端AWS WAF發出 Token 時,它會使用此屬性做為 Token 網域。 AWS WAF不會在為行動 SDK 用戶端發出的權杖中使用主機網域。

    如需詳細資訊,請參閱中的WAFConfigurationdomainName設定行AWS WAF動 SDK 規格

  • Challenge動作 — 如果您在 Web ACL 中指定權杖網域清單,則會將權杖網域AWS WAF設定為與主機網域相符的權杖網域,並且從主機網域和清單中的網域中最短。例如,如果主機域是api.example.com並且令牌域列表具有example.com,則在令牌example.com中AWS WAF使用,因為它與主機域匹配並且較短。如果您未在 Web ACL 中提供 Token 網域清單,請將網域AWS WAF設定為受保護資源的主機網域。