教程:使用分层规则创建 AWS Firewall Manager 策略
警告
AWS WAF Classic 支持将于 2025 年 9 月 30 日结束。
注意
这是 AWS WAF Classic 文档。仅当 2019 年 11 月之前在 AWS WAF 中创建了 AWS WAF 资源(例如规则和 Web ACL),但尚未将这些资源迁移到最新版本时,才应使用此版本。要迁移您的 Web ACL,请参阅 将 AWS WAF Classic 资源迁移到 AWS WAF。
有关 AWS WAF 的最新版本,请参阅 AWS WAF。
使用 AWS Firewall Manager,您可以创建和应用包含分层规则的 AWS WAF Classic 保护策略。也就是说,您可以集中创建和实施某些规则,但将特定于账户的规则的创建和维护委派给其他人。您可以监控集中应用(常见)的规则,以防止意外删除或误操作,从而确保一致地应用它们。特定于账户的规则可根据各个团队的需求添加进一步的保护。
注意
最新版本的 AWS WAF 中内置了此功能,不需要进行任何特殊处理。如果您尚未使用 AWS WAF Classic,请改为使用最新版本。请参阅 为 AWS WAF 创建AWS Firewall Manager策略。
以下教程介绍如何创建一组分层的保护规则。
主题
步骤 1:指定 Firewall Manager 管理员账户
要使用 AWS Firewall Manager,您必须在您的组织中指定一个账户作为 Firewall Manager 管理员账户。该账户可以是管理账户,也可以是该组织中的成员账户。
您可以使用 Firewall Manager 管理员账户来创建一组通用规则,以便应用于组织中的其他账户。组织中的其他账户无法更改这些集中应用的规则。
要将账户指定为 Firewall Manager 管理员账户并完成使用 Firewall Manager 的其他先决条件,请参阅 AWS Firewall Manager先决条件 中的说明。如果您已经完成了先决条件,则可以跳到本教程的步骤 2。
在本教程中,我们将管理员账户称为 Firewall-Administrator-Account
。
步骤 2:使用 Firewall Manager 管理员账户创建规则组
接下来,使用 Firewall-Administrator-Account
创建规则组。此规则组包含您将应用于由您在下一步中创建的策略控制的所有成员账户的通用规则。仅 Firewall-Administrator-Account
可以对这些规则和容器规则组进行更改。
在本教程中,我们将此容器规则组称为 Common-Rule-Group
。
要创建规则组,请参阅创建 AWS WAF Classic 规则组中的说明。请记得在遵循这些说明时使用您的 Firewall Manager 管理员账户 (Firewall-Administrator-Account
) 登录控制台。
步骤 3:创建 Firewall Manager 策略并附加通用规则组
使用 Firewall-Administrator-Account
,创建 Firewall Manager 策略 在创建此策略时,您必须执行以下操作:
-
将
Common-Rule-Group
添加到新策略。 -
在组织中包含您希望
Common-Rule-Group
应用到的所有账户。 -
添加您希望
Common-Rule-Group
应用到的所有资源。
有关创建策略的说明,请参阅创建 AWS Firewall Manager 策略。
这将在每个指定的账户中创建一个 Web ACL,并将 Common-Rule-Group
添加到每个这些 Web ACL 中。创建策略后,此 Web ACL 和通用规则将部署到所有指定的账户。
在本教程中,我们将此 Web ACL 称为 Administrator-Created-ACL
。现在,组织的每个指定成员账户中都存在唯一的 Administrator-Created-ACL
。
步骤 4:添加特定于账户的规则
组织中的每个成员账户现在都可以将自己的特定于账户的规则添加到其账户中存在的 Administrator-Created-ACL
。已经在 Administrator-Created-ACL
中的通用规则连同新的特定于账户的规则会继续应用。AWS WAF 根据规则在 Web ACL 中的出现顺序检查 Web 请求。这适用于 Administrator-Created-ACL
和特定于账户的规则。
要向 Administrator-Created-ACL
中添加规则,请参阅 在 AWS WAF 中编辑 Web ACL。
结论
您现在拥有一个 Web ACL,其中包含由 Firewall Manager 管理员账户管理的通用规则以及每个成员账户维护的特定于账户的规则。
每个账户中的 Administrator-Created-ACL
都引用单个 Common-Rule-Group
。因此,Firewall Manager 管理员账户在未来对 Common-Rule-Group
进行的更改将立即在每个成员账户中生效。
成员账户无法更改或删除 Common-Rule-Group
中的通用规则。
特定于账户的规则不影响其他账户。