将 AWS WAF 与 Google SecOps 集成

本文档介绍了如何将 AWS WAF 与 Google Security Operations (Google SecOps) 集成。

使用场景

AWS WAF 集成可让您执行以下操作,从而帮助您保护 Web 应用:

  • 自动屏蔽 IP:自动将 Google SecOps 检测到的恶意 IP 地址添加到 AWS WAF IP 集,以便在网络边缘屏蔽流量。
  • 访问权限控制列表 (ACL):动态创建和更新 Web ACL,以应对新出现的威胁。
  • 协调全球和区域安全:通过单一界面管理区域资源(如 ALB)和全球资源 (Amazon CloudFront) 的规则。

集成参数

使用以下参数配置集成:

参数显示名称 类型 默认值 为必填项 说明
AWS 访问密钥 ID 字符串 不适用 是 要在集成中使用的 AWS 访问密钥 ID。
AWS 密钥 密码 不适用 是 要在集成中使用的 AWS 密钥。
AWS 默认区域 字符串 不适用 是 要在集成中使用的 AWS 默认区域,例如 us-west-2。

AWS WAF 中的 Regional 范围对应于此处设置的区域。CloudFront 范围是全局范围,不依赖于此区域,但在 Regional 下创建的资源的范围限定为此值。

如需跨多个 AWS 区域管理 AWS WAF 资源,您必须为每个区域配置单独的集成实例。

如需了解如何在 Google SecOps 中配置集成,请参阅配置集成。

如有需要,您可以在后续阶段进行更改。配置集成实例后,您可以在 playbook 中使用该实例。如需详细了解如何配置和支持多个实例,请参阅支持多个实例。

操作

如需详细了解操作,请参阅 在工作桌上响应待处理的操作和在案例中运行手动操作。

Ping

测试与 AWS WAF 的连接。

参数

不适用

运行时间

此操作不会对实体执行。

操作执行结果

脚本结果
脚本结果名称 值选项 示例
is_success True/False is_success:False
案例墙
结果类型 值/说明 类型
输出消息*

操作不应失败,也不应停止 playbook 执行:

如果成功:“已使用提供的连接参数成功连接到 AWS WAF 服务器!”

操作应失败并停止 playbook 执行:

如果不成功:“Failed to connect to the AWS WAF server! 错误为 {0}”。format(exception.stacktrace)

常规

创建 IP 集

在 AWS WAF 中基于实体创建 IP 集。

IP 集会按以下格式创建:

Siemplify_NAME_IP Type`

参数

参数显示名称 类型 默认值 为必填项 说明
名称 字符串 不适用 是 指定 IP 集的名称。注意:操作将创建采用以下格式的 IP 集:Siemplify_{Name}_{IP Type}。名称必须包含 1-128 个字符。有效字符:A-Z、a-z、0-9、-(连字符)和 _(下划线)。
范围 DDL

CloudFront

可能的值:

  • CloudFront
  • 区域
  • 两者
是 指定 IP 集的创建范围。如果选择“Both”(两者),该操作将在区域和 Amazon CloudFront 范围内创建一个 IP 集。

CloudFront 是与 Amazon CloudFront 搭配使用的资源的全球范围。Regional 是指在 AWS Default Region 集成参数中配置的特定 AWS 区域。

说明 字符串 不适用 否 指定 IP 集的说明。
标记 CSV 不适用 否 指定应添加到 IP 集的其他标记。格式:key_1:value_1,key_2:value_1。

运行时间

此操作在 IP 地址实体上运行。

操作执行结果

脚本结果
脚本结果名称 值选项 示例
is_success True/False is_success:False
JSON 结果
{
"Regional": ["IPv4_set", "IPv6_set"]
"Cloudfront":  ["IPv4_set", "IPv6_set"]
}
案例墙
结果类型 值/说明 类型
输出消息*

操作不应失败,也不应停止 playbook 执行:

如果成功,并且至少有一个提供的实体用于创建 IP 集 (is_success = true): "Successfully created {0} {1} IP Set '{2}' in AWS WAF with the following IPs: \n {3}".format("区域"/"Cloudfront", "IPv4"/"IPv6", full_name, entity.identifier list)

如果未能使用特定实体(is_success = true): "Action was not able to use the following IPs in order to create AWS WAF IP Set\n: {0}".format([entity.identifier])

如果未能使用所有实体 (is_success = false):“未创建任何 IP 集。原因:提供的 IP 实体均无效。”

如果所有集合均已存在 (is_success=false) 或只有部分集合已存在 (is_success=true): "The following {0} IP Pattern Sets '{1}' already exist: \n.".format("区域/CloudFront", list_of_full_names)

操作应失败并停止 playbook 执行:

如果出现严重错误,例如凭据错误、无法连接到服务器等:“执行‘创建 IP 集’操作时出错。Reason: {0}''.format(error.Stacktrace)

将 IP 添加到 IP 集

将 IP 地址添加到 AWS WAF 中的 IP 集。

参数

参数显示名称 类型 默认值 为必填项 说明
IP 集名称 CSV 不适用 是 指定以英文逗号分隔的 IP 集名称列表。示例:name_1,name_2
范围 DDL

CloudFront

可能的值:

  • CloudFront
  • 区域
  • 两者
是 指定 IP 集的范围。如果选择“两者”,该操作会将 IP 地址添加到 Regional 和 CloudFront 范围内的 IP 集。

CloudFront 是与 Amazon CloudFront 搭配使用的资源的全球范围。Regional 是指在 AWS Default Region 集成参数中配置的特定 AWS 区域。

运行时间

此操作在 IP 地址实体上运行。

操作执行结果

脚本结果
脚本结果名称 值选项 示例
is_success True/False is_success:False
案例墙
结果类型 值/说明 类型
输出消息*

操作不应失败,也不应停止 playbook 执行:

如果成功且至少有一个 IP 地址已添加到某个 IP 集(is_success = true): "Successfully added the following IPs to the {0} IP Set '{1}' in AWS WAF: \n {2}".format("区域"/"Cloudfront", full_name, entity.identifier list)

如果未能将特定实体添加到某个 IP 集(is_success = true):“Action was not able to add the following IPs to the {0} IP Set '{1}' in AWS WAF\n: {2}”。format("区域"/"Cloudfront", full_name,[entity.identifier])

如果未能找到其中一个 IP 集 (is_success = true):“Action wasn't able to find the following '{0}' IP Sets in the AWS WAF:\n {1}”。format("区域"/Cloudfront",list of IP sets that were not found in that scope)

如果未能在所选范围内找到所有提供的 IP 集 (is_success=false):“操作未找到提供的 IP 集。”

操作应失败并停止 playbook 执行:

如果发生严重错误、SDK 错误(例如凭据错误、无法连接到服务器等),则显示:“Error executing action "Add IP To IP Set". Reason: {0}''.format(error.Stacktrace)

常规

创建正则表达式模式集

在 AWS WAF 中基于实体创建正则表达式模式集。

每个正则表达式模式集只能包含 10 个模式,并且总共只能有 10 个正则表达式模式集。

参数

参数显示名称 类型 默认值 为必填项 说明
名称 字符串 不适用 是 指定正则表达式模式集的名称。注意:名称必须包含 1-128 个字符。有效字符:A-Z、a-z、0-9、-(连字符)和 _(下划线)。
范围 DDL

CloudFront

可能的值:

  • CloudFront
  • 区域
  • 两者
是 指定正则表达式模式集的创建范围。如果选择“两者”,则该操作会在 Regional 和 CloudFront 范围内创建正则表达式模式集。

CloudFront 是与 Amazon CloudFront 搭配使用的资源的全球范围。Regional 是指在 AWS Default Region 集成参数中配置的特定 AWS 区域。

说明 字符串 不适用 否 指定正则表达式模式集的说明。
标记 CSV 不适用 否 指定应添加到正则表达式模式集的其他标记。格式:key_1:value_1,key_2:value_1。
网域格式 复选框 勾选 否 如果启用,该操作会从网址中检索网域部分,并根据这些部分创建正则表达式模式,例如将 http://test.com/folder 转换为 ^(http|https)(:\/\/)(\Qtest.com\E).*".format(entity)。
IP 格式 复选框 勾选 否 如果启用,该操作会根据 IP 地址(而不是使用原始值)构建正确的正则表达式模式,例如 10.0.0.1 会转换为 ^(http|https)(:\/\/)(\Q10.0.1\E).*".format(entity)。

运行时间

此操作将在以下实体上运行:

  • IP 地址
  • 网址

操作执行结果

脚本结果
脚本结果名称 值选项 示例
is_success True/False is_success:False
JSON 结果
{
"Regional": "Regex_set"
"Cloudfront": "Regex_set"
}
案例墙
结果类型 值/说明 类型
输出消息*

操作不应失败,也不应停止 playbook 执行:

如果成功,并且至少有一个提供的实体用于创建正则表达式集 (is_success = true):“Successfully created {0} Regex Pattern Set '{1}' in AWS WAF with the following entities: \n {2}”。format("区域"/"Cloudfront", name, entity.identifier list)

如果要使用 10 个以上的实体来创建正则表达式模式集:“Action 无法使用提供的所有实体创建正则表达式模式集,因为超出了限制。已跳过以下实体:{0}”。format(entity.identifier)

如果集合已存在 (is_success=false): "{0} Regex Pattern Set '{1}' already exists.".format("区域/CloudFront", name)

操作应失败并停止 playbook 执行:

如果发生严重错误、SDK 错误(例如凭据错误、无法连接到服务器等),则会显示:“Error executing action "Create Regex Pattern Set". Reason: {0}''.format(error.Stacktrace)

常规

创建 Web ACL

在 AWS WAF 中创建 Web ACL。

参数

参数显示名称 类型 默认值 为必填项 说明
名称 字符串 不适用 是 指定 Web ACL 的名称。注意:名称必须包含 1-128 个字符。有效字符:A-Z、a-z、0-9、-(连字符)和 _(下划线)。
规则来源类型 DDL

IP 集

可能的值

IP 集

规则组

是 指定应使用的规则类型。
规则来源名称 字符串 不适用 是 指定应在 Web ACL 中使用的来源名称。如果“规则来源类型”为“IP 集”,则该操作将搜索具有该名称的 IP 集。如果“规则来源类型”为“规则组”,则该操作将搜索具有该名称的规则组。
范围 DDL

CloudFront

可能的值:

  • CloudFront
  • 区域
  • 两者
是 指定创建 Web ACL 的范围。如果选择“两者”,该操作将在 Regional 和 CloudFront 范围内创建 Web ACL。

CloudFront 是与 Amazon CloudFront 搭配使用的资源的全球范围。Regional 是指在 AWS Default Region 集成参数中配置的特定 AWS 区域。

启用抽样请求 复选框 尚未核查 是 如果启用,AWS WAF 将存储与规则匹配的 Web 请求的抽样。
启用 CloudWatch 指标 复选框 尚未核查 是 如果启用,关联的资源会将指标发送到 CloudWatch。
CloudWatch 指标名称 复选框 尚未核查 是 指定 CloudWatch 指标的名称。注意:名称必须包含 1-128 个字符。有效字符:A-Z、a-z、0-9、-(连字符)和 _(下划线)。
默认操作 DDL

允许

可能的值:

  • 允许
  • 屏蔽
是 为不符合任何规则的请求指定默认操作。
IP 集操作 DDL

屏蔽

可能的值:

  • 允许
  • 屏蔽
  • 计数
否 为基于 IP 集的规则指定操作。
规则优先级 整数 不适用 是 指定规则的优先级。Web ACL 中的优先级应是唯一的。
说明 字符串 不适用 否 指定 Web ACL 的说明。
标记 CSV 不适用 否 指定应添加到 Web ACL 的其他标记。格式:key_1:value_1,key_2:value_1。

运行时间

此操作不会对实体执行。

操作执行结果

脚本结果
脚本结果名称 值选项 示例
is_success True/False is_success:False
JSON 结果
{
"Regional": "Web_Acl_name"
"Cloudfront": "Web_Acl_name"
}
案例墙
结果类型 值/说明 类型
输出消息*

操作不应失败,也不应停止 playbook 执行:

如果成功列出了可用的 IP 集(is_success = true) 且“Scope”==“Both”:“Successfully created Web ACL {0} in Regional and CloudFront scopes.”format(name)

如果成功列出可用的 IP 集(is_success = true) 且“Scope”==“区域”: “Successfully created Web ACL {0} in 区域.”。format(name)

如果成功列出了可用的 IP 集(is_success = true) 且“Scope”==“Cloudfront”:“Successfully created Web ACL {0} in Cloudfront scope.”format(name)

如果 Web ACL 存在:

输出“Web ACL {} already exists in {} scope.”。format(web ACL name, scope)。

如果未找到 IP 集/规则组:“Action wasn't able to create Web ACL. Reason: {0} {1} wasn't found in AWS WAF".format("IP Set/Rule Group", Rule Source Name)

操作应失败并停止 playbook 执行:

如果发生严重错误、SDK 错误(例如凭据错误、无法连接到服务器等),则显示:“执行‘创建 Web ACL’操作时出错。Reason: {0}''.format(error.Stacktrace)

向 Web ACL 添加规则

在 AWS WAF 中,向 Web ACL 添加基于 IP 集或规则组的规则。Web ACL 最多可包含 1,500 条规则。

参数

参数显示名称 类型 默认值 为必填项 说明
Web ACL 名称 CSV 不适用 是

指定以英文逗号分隔的 Web ACL 名称列表。示例:name_1,name_2

规则来源类型 DDL

IP 集

可能的值:

  • IP 集
  • 规则组
是 指定应使用的规则类型。
规则来源名称 字符串 不适用 是 指定应在 Web ACL 中使用的来源名称。如果“规则来源类型”为“IP 集”,则该操作将搜索具有该名称的 IP 集。如果“规则来源类型”为“规则组”,则该操作将搜索具有该名称的规则组。
范围 DDL

CloudFront

可能的值:

  • CloudFront
  • 区域
  • 两者
是 指定新规则的范围。如果选择“两者”,该操作会将规则添加到 Regional 和 CloudFront 范围内的 Web ACL。

CloudFront 是与 Amazon CloudFront 搭配使用的资源的全球范围。Regional 是指在 AWS Default Region 集成参数中配置的特定 AWS 区域。

规则优先级 整数 不适用 是 指定规则的优先级。Web ACL 中的优先级应是唯一的。
IP 集操作 DDL

屏蔽

可能的值:

  • 允许
  • 屏蔽
  • 计数
否 为基于 IP 集的规则指定操作。

运行时间

此操作不会对实体执行。

操作执行结果

脚本结果
脚本结果名称 值选项 示例
is_success True/False is_success:False
案例墙
结果类型 值/说明 类型
输出消息*

操作不应失败,也不应停止 playbook 执行:

如果成功且至少有一条规则已添加到某个 Web ACL(is_success = true):“已成功将一条规则添加到 AWS WAF 中的以下 {0} Web ACL‘{1}’。”.format("区域"/"Cloudfront", list of name)

如果未能找到其中一个 Web ACL(is_success = true):“Action wasn't able to find the following '{0}' Web ACLs in the AWS WAF:\n {1}”。format("区域"/Cloudfront", list of Web ACLs that were not found in that scope)

如果范围内每个 Web ACL 已存在同名规则 (is_success=true):“操作未能将 {0} 条规则添加到 AWS WAF 中的 Web ACL。Reason: {0} with name '{1}' already exists in the following Web ACLs:\n{2}".format( rule source type, rule source name, list Web ACL with scope - structure {0} - {1}.format(scope, web acl name))

操作应失败并停止 playbook 执行:

如果发生严重错误、SDK 错误(例如凭据错误、无法连接到服务器)或其他错误:“执行‘向 Web ACL 添加规则’操作时出错。Reason: {0}''.format(error.Stacktrace)

常规

创建规则组

在 AWS WAF 中创建规则组。

参数

参数显示名称 类型 默认值 为必填项 说明
名称 字符串 不适用 是 指定规则组的名称。注意:名称必须包含 1-128 个字符。有效字符:A-Z、a-z、0-9、-(连字符)和 _(下划线)。
范围 DDL

CloudFront

可能的值:

  • CloudFront
  • 区域
  • 两者
是 指定规则组的创建范围。如果选择“两者”,该操作将在 Regional 和 CloudFront 范围内创建规则组。

CloudFront 是与 Amazon CloudFront 搭配使用的资源的全球范围。Regional 是指在 AWS Default Region 集成参数中配置的特定 AWS 区域。

容量 整数 100 是 指定规则组的容量。注意:群组创建后,您便无法更改容量。最大值为 1500。
启用抽样请求 复选框 尚未核查 是 如果启用,AWS WAF 将存储与规则匹配的 Web 请求的抽样。
启用 CloudWatch 指标 复选框 尚未核查 是 如果启用,关联的资源会将指标发送到 CloudWatch。
CloudWatch 指标名称 复选框 尚未核查 是 指定 CloudWatch 指标的名称。注意:名称必须包含 1-128 个字符。有效字符:A-Z、a-z、0-9、-(连字符)和 _(下划线)。
说明 字符串 不适用 否 指定规则组的说明。
标记 CSV 不适用 否 指定应添加到规则组的其他标记。格式:key_1:value_1,key_2:value_1。

运行时间

此操作不会对实体执行。

操作执行结果

脚本结果
脚本结果名称 值选项 示例
is_success True/False is_success:False
案例墙
结果类型 值/说明 类型
输出消息*

操作不应失败,也不应停止 playbook 执行:

如果成功列出了可用的 IP 集(is_success = true) 且“Scope”==“Both”:“Successfully created Rule Group {0} in Regional and CloudFront scopes.”format(name)

>如果成功列出了可用的 IP 集(is_success = true) 且“Scope”==“区域”:“The Rule Group {} already exists in {} scope.”。format(web ACL name, scope)。

如果成功列出可用的 IP 集(is_success = true) 且“Scope”==“Cloudfront”:"Successfully created Rule Group {0} in Cloudfront scope.".format(name)

如果规则组存在: "Successfully created Rule Group {0} in Cloudfront scope.".format(name)

如果规则组创建失败:“Action was not able to create Rule Group {} in {} scope”(操作无法在 {} 范围内创建规则组 {})。format(Web ACL 名称、范围)。

操作应失败并停止 playbook 执行:

如果发生严重错误、SDK 错误(例如凭据错误、无法连接到服务器等):“执行‘创建规则组’操作时出错。Reason: {0}''.format(error.Stacktrace)

常规

将实体添加到正则表达式模式集

将基于实体的字符串模式添加到 AWS WAF 中的正则表达式模式集中。

每个正则表达式模式集只能包含 10 个模式。

参数

参数显示名称 类型 默认值 为必填项 说明
正则表达式模式集名称 CSV 不适用 是 指定正则表达式模式集名称的逗号分隔列表,例如 name_1,name_2。
范围 DDL

CloudFront

可能的值:

  • CloudFront
  • 区域
  • 两者
是 正则表达式模式集的范围。如果选择“两者”,则该操作会将基于实体的模式添加到 Regional 和 CloudFront 范围内的正则表达式模式集中。

CloudFront 是与 Amazon CloudFront 搭配使用的资源的全球范围。Regional 是指在 AWS Default Region 集成参数中配置的特定 AWS 区域。

网域格式 复选框 勾选 否 如果启用,该操作会从网址中检索网域部分,并根据这些部分创建正则表达式模式,例如,http://test.com/folder 会转换为 ^(http|https)(:\/\/)(\Qtest.com\E).*".format(entity)。
IP 格式 复选框 勾选

否

如果启用,该操作会根据 IP 地址构建正确的正则表达式模式,而不是使用原始值,例如 10.0.0.1 会转换为 ^(http|https)(:\/\/)(\Q10.0.1\E).*".format(entity)。

运行时间

此操作将在以下实体上运行:

  • IP 地址
  • 网址

操作执行结果

脚本结果
脚本结果名称 值选项 示例
is_success True/False is_success:False
案例墙
结果类型 值/说明 类型
输出消息*

操作不应失败,也不应停止 playbook 执行:

如果成功,并且至少有一个实体已添加到某个正则表达式模式集(is_success = true):“Successfully added the following entity patterns to the {0} Regex Pattern Set '{1}' in AWS WAF: \n {2}”。format("区域"/"Cloudfront", name, list of entity patterns)

如果要使用超过 10 个实体来创建正则表达式模式集:“由于超出限制,操作无法根据所有提供的实体向‘{0}’正则表达式模式集‘{1}’添加模式。已跳过以下实体:{2}”。forma("区域"/"Cloudfront", name, entity.identifier)

如果未能找到其中一个集合 (is_success = true):“Action wasn't able to find the following '{0}' Regex Pattern Sets in the AWS WAF:\n {1}”。format("区域"/Cloudfront",list of regular expression pattern sets that were not found in that scope)

如果未能在所选范围内找到所有提供的集合 (is_success=false):“操作未找到提供的正则表达式模式集。”

操作应失败并停止 playbook 执行:

如果发生严重错误、SDK 错误(例如凭据错误、无法连接到服务器)或其他错误:“执行‘将实体添加到正则表达式模式集’操作时出错。Reason: {0}''.format(error.Stacktrace)

常规

向正则表达式模式集添加模式

将字符串模式添加到 AWS WAF 中的正则表达式模式集。

每个正则表达式模式集最多只能包含 10 个模式。

参数

参数显示名称 类型 默认值 为必填项 说明
正则表达式模式集名称 CSV 不适用 是 指定正则表达式模式集名称的逗号分隔列表,例如 name_1,name_2。
模式 CSV 不适用 是 指定要添加到正则表达式模式集的模式的逗号分隔列表,例如 pattern_1,pattern_2。
范围 DDL

CloudFront

可能的值:

  • CloudFront
  • 区域
  • 两者
是 正则表达式模式集的范围。如果选择“两者”,则该操作会将基于实体的模式添加到 Regional 和 CloudFront 范围内的正则表达式模式集中。

CloudFront 是与 Amazon CloudFront 搭配使用的资源的全球范围。Regional 是指在 AWS Default Region 集成参数中配置的特定 AWS 区域。

运行时间

此操作不会对实体执行。

操作执行结果

脚本结果
脚本结果名称 值选项 示例
is_success True/False is_success:False
案例墙
结果类型 值/说明 类型
输出消息*

操作不应失败,也不应停止 playbook 执行:

如果成功且至少有一个模式已添加到某个正则表达式模式集(is_success = true):“Successfully added the following patterns to the {0} Regex Pattern Set '{1}' in AWS WAF: \n {2}”。format("区域"/"Cloudfront", name, list of patterns)

如果未能找到其中一个集合 (is_success = true):t "Action wasn't able to find the following '{0}' Regex Pattern Sets in the AWS WAF:\n {1}".format("区域"/Cloudfront",list of regular expression pattern sets that were not found in that scope).

如果未能在所选范围内找到所有提供的集合 (is_success=false):“操作未找到提供的正则表达式模式集。”

操作应失败并停止 playbook 执行:

如果发生严重错误、SDK 错误(例如凭据错误、无法连接到服务器等),则显示:“执行‘向正则表达式模式集添加模式’操作时出错。Reason: {0}''.format(error.Stacktrace)

常规

从 Web ACL 中移除规则

从 AWS WAF 中的 Web ACL 中移除规则。

参数

参数显示名称 类型 默认值 为必填项 说明
Web ACL 名称 CSV 是

指定以英文逗号分隔的 Web ACL 名称列表。示例:name_1,name_2

范围 DDL

CloudFront

可能的值:

  • CloudFront
  • 区域
  • 两者
是 指定移除 Web ACL 的范围。如果选择“两者”,该操作将移除 Regional 和 CloudFront 范围内的 Web ACL。

CloudFront 是与 Amazon CloudFront 搭配使用的资源的全球范围。Regional 是指在 AWS Default Region 集成参数中配置的特定 AWS 区域。

规则名称 字符串

不适用

是 指定应删除的规则的名称。

运行时间

此操作不会对实体执行。

操作执行结果

脚本结果
脚本结果名称 值选项
is_success is_success=False
is_success is_success=True
案例墙
结果类型 值/说明 类型
输出消息*

操作不应失败,也不应停止 playbook 执行:

如果成功且至少从一个规则组中移除了一个规则:输出“Successfully removed a rule from the following {0} Web ACLs '{1}' in AWS WAF.”。format("区域"/"Cloudfront", list of names)

如果一个规则组未成功:输出“Action wasn't able to remove a rule from the following {0} Web ACLs '{1}' in AWS WAF.”。格式(“区域”/“Cloudfront”,名称列表)

如果因在某个 ACL 中找不到规则而导致该 Web ACL 失败:输出“Action wasn't able to find the specified rule in the following {0} Web ACLs '{1}' in AWS WAF.”。format("区域"/"Cloudfront", list of names Web ACL)

如果未能找到某个规则组:输出“Action wasn't able to find the following '{0}' Web ACLs in the AWS WAF:\n {1}”。format("区域"/Cloudfront", list of Rule Group that were not found in that scope)

如果未能在所需范围内找到所有提供的集合:输出“Action didn't find the provided Web ACLs.”(操作未找到提供的 Web ACL)。

操作应失败并停止 playbook 执行:

如果发生严重错误、SDK 错误(例如凭据错误、无法连接到服务器等):输出“Error executing action "Remove Rule From Web ACL". Reason: {0}''.format(error.Stacktrace)

常规

列出 Web ACL

列出 AWS WAF 中的可用 Web ACL。

参数

参数显示名称 类型 默认值 为必填项 说明
范围 DDL

CloudFront

可能的值:

  • CloudFront
  • 区域
  • 两者
指定 Web ACL 列表的范围。

CloudFront 是与 Amazon CloudFront 搭配使用的资源的全球范围。Regional 是指在 AWS Default Region 集成参数中配置的特定 AWS 区域。

要返回的 Web ACL 数量上限 整数 50 否 指定要返回的 Web ACL 数量。默认值为 50。最大值为 100。

运行时间

此操作不会对实体执行。

操作执行结果

脚本结果
脚本结果名称 值选项
is_success is_success=False
is_success is_success=True
JSON 结果
[
    {
        "Name": "example",
        "Id": "ID",
        "Description": "example",
        "LockToken": "7e76581b-f152-4448-aafe-b733a33c8fa2",
        "ARN": "arn:aws:wafv2:us-east-1:regional/ipset/example/ID"
    }
]
"CloudFront": [
    {
        "Name": "example",
        "Id": "ID",
        "Description": "example",
        "LockToken": "7e76581b-f152-4448-aafe-b733a33c8fa2",
        "ARN": "arn:aws:wafv2:us-east-1:regional/ipset/example/ID"
    }
]
案例墙
结果类型 值/说明 类型(实体 \ 常规)
输出消息*

操作不应失败,也不应停止 playbook 执行:

如果成功列出了可用的 IP 集,并且“范围”==“两者”:“已成功列出区域和 Cloudfront 范围内的可用 Web ACL。”

如果成功列出了可用的 IP 集(is_success = true) 且“Scope”==“区域”:“Successfully listed available Web ACLs in 区域 scope.”

如果成功列出了可用的 IP 集(is_success = true) 且“Scope”==“Cloudfront”:“Successfully listed available Web ACLs in Cloudfront scope.”

如果没有可用值(is_success = false) 且“Scope”==“Both”:“No available Web ACLs were found in 区域 and Cloudfront scopes.”

如果没有可用值 (is_success = false) 且“Scope”==“Regional”:“在区域范围内未找到可用的 Web ACL。”

If no available values(is_success = false) and "Scope" == "Cloudfront": "No available Web ACLs were found in Cloudfront scope."

操作应失败并停止 playbook 执行:

如果出现严重错误、SDK 错误(例如凭据错误、无法连接到服务器等),则会显示:“Error executing action "List Web ACLs". Reason: {0}''.format(error.Stacktrace)

常规

案例墙表格

(如果“范围”==“区域”或“两者”)

表名称:Regional Rule ACLs

表列:

  • 名称
  • ID
  • 说明
  • 锁定令牌
  • ARN
常规

案例墙表格

(如果“Scope”==“CloudFront”或“Both”)

表名称:CloudFront 规则 ACL

表列:

  • 姓名
  • ID
  • 说明
  • 锁定令牌
  • ARN
常规

从规则组中移除规则

从 AWS WAF 中的规则组中移除规则。

参数

参数显示名称 类型 默认值 为必填项 说明
规则组名称 CSV 是 指定以逗号分隔列表形式的规则组名称。示例:name_1,name_2
范围 DDL

CloudFront

可能的值:

  • CloudFront
  • 区域
  • 两者
是 指定规则组的移除范围。如果选择“两者”,该操作将移除 Regional 和 CloudFront 范围内的规则组。

CloudFront 是与 Amazon CloudFront 搭配使用的资源的全球范围。Regional 是指在 AWS Default Region 集成参数中配置的特定 AWS 区域。

规则名称 字符串

不适用

是 指定应删除的规则的名称。

运行时间

此操作不会对实体执行。

操作执行结果

脚本结果
脚本结果名称 值选项
is_success is_success=False
is_success is_success=True
案例墙
结果类型 值/说明 类型
输出消息*

操作不应失败,也不应停止 playbook 执行:

如果成功,并且至少从一个规则组中移除了一个规则:“Successfully removed a rule from the following {0} Rule Groups '{1}' in AWS WAF.”。format("区域"/"Cloudfront", list of names)

如果一个规则组不成功:“操作无法从 AWS WAF 中的以下 {0} 规则组‘{1}’中移除规则。”。format("区域"/"Cloudfront", list of names)

如果因在某个规则组中找不到规则而导致该规则组执行失败:“Action wasn't able to find the specified rule in the following {0} Rule Groups '{1}' in AWS WAF.”。format("区域"/"Cloudfront", list of rule group names)

如果找不到某个规则组:“Action wasn't able to find the following '{0}' Rule Groups in the AWS WAF:\n {1}”。format("区域"/Cloudfront", list of Rule Group that were not found in that scope)

如果未能在所需范围内找到所有提供的集合:“操作未找到提供的规则组。”

操作应失败并停止 playbook 执行:

如果报告了严重错误、SDK 错误(例如凭据错误、无法连接到服务器等):“执行操作‘从规则组中移除规则’时出错。Reason: {0}''.format(error.Stacktrace)

常规

列出规则组

列出 AWS WAF 中的可用规则组。

参数

参数显示名称 类型 默认值 为必填项 说明
范围 DDL

CloudFront

可能的值:

  • CloudFront
  • 区域
  • 两者
指定规则组列表的范围。

CloudFront 是与 Amazon CloudFront 搭配使用的资源的全球范围。Regional 是指在 AWS Default Region 集成参数中配置的特定 AWS 区域。

要返回的规则组数量上限 整数 50 否 指定要返回的规则组数量。默认值为 50。最大值为 100。

运行时间

此操作不会对实体执行。

操作执行结果

脚本结果
脚本结果名称 值选项
is_success is_success=False
is_success is_success=True
JSON 结果
[
    {
        "Name": "example",
        "Id": "ID",
        "Description": "example",
        "LockToken": "7e76581b-f152-4448-aafe-b733a33c8fa2",
        "ARN": "arn:aws:wafv2:us-east-1:regional/ipset/example/ID"
    }
]
"CloudFront": [
    {
        "Name": "example",
        "Id": "ID",
        "Description": "example",
        "LockToken": "7e76581b-f152-4448-aafe-b733a33c8fa2",
        "ARN": "arn:aws:wafv2:us-east-1:regional/ipset/example/ID"
    }
]
案例墙
结果类型 值/说明 类型(实体 \ 常规)
输出消息*

操作不应失败,也不应停止 playbook 执行:

如果成功列出了可用的 IP 集,并且“范围”==“两者”:“已成功列出区域和 Cloudfront 范围内的可用规则组。”

如果成功列出了可用的 IP 集,并且“Scope”==“Regional”:“已成功列出区域范围内的可用规则组。”

如果成功列出了可用的 IP 集,并且“Scope”==“Cloudfront”:“已成功列出 Cloudfront 范围内的可用规则组。”>

如果没有可用值,且“Scope”==“Both”:“No available Rule groups were found in 区域 and Cloudfront scopes.”

如果没有可用值且“范围”==“区域”:“在区域范围内未找到可用的规则组。”

如果没有可用值且“范围”==“Cloudfront”:“在 Cloudfront 范围内未找到可用的规则组。”

操作应失败并停止 playbook 执行:

如果报告了严重错误、SDK 错误(例如凭据错误、无法连接到服务器等),则会显示以下消息:“Error executing action 'List Rule Groups'. Reason: {0}''.format(error.Stacktrace)

常规

外壳壁表

(如果“范围”==“区域”或“两者”)

表名称:Regional Rule Groups

表列:

  • 名称
  • ID
  • 说明
  • 锁定令牌
  • ARN
常规

外壳壁表

(如果“范围”==“CloudFront”或“两者”)

表名称:CloudFront 规则组

表列:

  • 名称
  • ID
  • 说明
  • 锁定令牌
  • ARN
常规

列出 IP 集

列出 AWS WAF 中的可用 IP 集。

参数

参数显示名称 类型 默认值 为必填项 说明
范围 DDL

CloudFront

可能的值:

  • CloudFront
  • 区域
  • 两者
指定 IP 集列表的作用域。

CloudFront 是与 Amazon CloudFront 搭配使用的资源的全球范围。Regional 是指在 AWS Default Region 集成参数中配置的特定 AWS 区域。

要返回的 IP 集数上限 整数 50 否 指定要返回的 IP 集数量。默认值为 50。最大值为 100。

运行时间

此操作不会对实体执行。

操作执行结果

脚本结果
脚本结果名称 值选项
is_success is_success=False
is_success is_success=True
JSON 结果
[
    {
        "Name": "example",
        "Id": "ID",
        "Description": "example",
        "LockToken": "7e76581b-f152-4448-aafe-b733a33c8fa2",
        "ARN": "arn:aws:wafv2:us-east-1:regional/ipset/example/ID"
    }
]
"CloudFront": [
    {
        "Name": "example",
        "Id": "ID",
        "Description": "example",
        "LockToken": "7e76581b-f152-4448-aafe-b733a33c8fa2",
        "ARN": "arn:aws:wafv2:us-east-1:regional/ipset/example/ID"
    }
]
案例墙
结果类型 值/说明 类型(实体 \ 常规)
输出消息*

操作不应失败,也不应停止 playbook 执行:

如果成功列出了可用的 IP 集,并且“范围”==“两者”:“已成功列出区域和 Cloudfront 范围内的可用 IP 集。”

如果成功列出了可用的 IP 集,并且“Scope”==“区域”:“Successfully listed available IP sets in 区域 scope.”

如果成功列出了可用的 IP 集,并且“Scope”==“Cloudfront”:“Successfully listed available IP sets in Cloudfront scope.”(已成功列出 Cloudfront 范围内的可用 IP 集。)

如果没有可用值且“Scope”==“Both”:输出“No available IP Sets were found in 区域 and Cloudfront scopes.”

如果没有可用值且“范围”==“区域”:“在区域范围内未找到可用的 IP 集。”

如果没有可用值且“Scope”==“Cloudfront”:“No available IP Sets were found in Cloudfront scope.”

操作应失败并停止 playbook 执行:

如果报告了严重错误、SDK 错误(例如凭据错误、无法连接到服务器等),则会显示以下消息:“Error executing action "List IP Sets". Reason: {0}''.format(error.Stacktrace)

常规

外壳壁表

(如果“范围”==“区域”或“两者”)

表名称:Regional Rule Groups

表列:

  • 名称
  • ID
  • 说明
  • 锁定令牌
  • ARN
常规

外壳壁表

(如果“范围”==“CloudFront”或“两者”)

表名称:CloudFront 规则组

表列:

  • 名称
  • ID
  • 说明
  • 锁定令牌
  • ARN
常规

从正则表达式模式集中移除模式

从 AWS WAF 中的正则表达式集中移除模式。

参数

参数显示名称 类型 默认值 为必填项 说明
正则表达式模式集名称 CSV 是 指定以英文逗号分隔的正则表达式集名称列表,例如 name_1,name_2。
模式 CSV 是 指定应从正则表达式集中移除的模式的逗号分隔列表,例如 pattern_1,pattern_2。
范围 DDL

CloudFront

可能的值:

  • CloudFront
  • 区域
  • 两者
是 集合的范围。如果选择“Both”,该操作会从 Regional 和 CloudFront 范围内的正则表达式集中移除模式。

CloudFront 是与 Amazon CloudFront 搭配使用的资源的全球范围。Regional 是指在 AWS Default Region 集成参数中配置的特定 AWS 区域。

运行时间

此操作不会对实体执行。

操作执行结果

脚本结果
脚本结果名称 值选项
is_success is_success=False
is_success is_success=True
案例墙
结果类型 值/说明 类型
输出消息*

操作不应失败,也不应停止 playbook 执行:

如果成功,并且至少从一个正则表达式集中移除了一个模式集:“Successfully removed the following patterns from the {0} Regex Pattern Set '{1}' in AWS WAF: \n {2}”。format("区域"/"Cloudfront", full_name, list of entity patterns)

如果模式从未存在于该模式集中:“在 AWS WAF 的 {0} 正则表达式模式集‘{1}’中找不到以下模式:\n {2}”。format("区域"/"Cloudfront", full_name, list of patterns)

如果未能从所有正则表达式模式集中移除所有模式:“未从提供的正则表达式模式集中移除任何模式。”

如果未能找到某个模式集:“Action wasn't able to find the following '{0}' Regex Pattern Sets in the AWS WAF:\n {1}”。format("区域"/Cloudfront",list of sets that were not found in that scope)

如果未能在所需范围内找到所有提供的正则表达式模式集:“操作未找到提供的正则表达式模式集。”

操作应失败并停止 playbook 执行:

如果报告了严重错误、SDK 错误(例如凭据错误、无法连接到服务器等):“执行‘从正则表达式模式集中移除模式’操作时出错。Reason: {0}''.format(error.Stacktrace)

常规

从 IP 集中移除 IP

从 AWS WAF 中的 IP 集中移除 IP 地址。

参数

参数显示名称 类型 默认值 为必填项 说明
IP 集名称 CSV 是 指定以英文逗号分隔的 IP 集名称列表。示例:name_1,name_2
范围 DDL

CloudFront

可能的值:

  • CloudFront
  • 区域
  • 两者
是 指定 IP 集的范围。如果选择“两者”,该操作将从 Regional 和 CloudFront 范围内的 IP 集中移除 IP 地址。

CloudFront 是与 Amazon CloudFront 搭配使用的资源的全球范围。Regional 是指在 AWS Default Region 集成参数中配置的特定 AWS 区域。

运行时间

此操作在 IP 实体上运行。

操作执行结果

脚本结果
脚本结果名称 值选项
is_success is_success=False
is_success is_success=True
案例墙
结果类型 值/说明 类型
输出消息*

操作不应失败,也不应停止 playbook 执行:

如果成功,并且至少有一个 IP 地址已从一个 IP 集中移除:“Successfully removed the following IPs from the {0} IP Set '{1}' in AWS WAF: \n {2}”。format("区域"/"Cloudfront", full_name, entity.identifier list)

如果 IP 从未存在于该 IP 集中:“以下 IP 不属于 AWS WAF 中的 {0} IP 集‘{1}’:\n {2}”。format("区域"/"Cloudfront", full_name, entity.identifier list)

如果未能从所有 IP 集移除所有实体:“未从提供的 IP 集中移除任何 IP。”

如果未能找到其中一个 IP 集:P“Action wasn't able to find the following '{0}' IP Sets in the AWS WAF:\n {1}”。format(“区域”/“Cloudfront”,在该范围内未找到的 IP 集列表)

如果未能在所需范围内找到所有提供的 IP 集:“操作未找到提供的 IP 集。”

操作应失败并停止 playbook 执行:

如果报告了严重错误、SDK 错误(例如凭据错误、无法连接到服务器等):“Error executing action "Remove IP From IP Set". Reason: {0}''.format(error.Stacktrace)

常规

列出正则表达式模式集

列出 AWS WAF 中可用的正则表达式集。

参数

参数显示名称 类型 默认值 为必填项 说明
范围 DDL

CloudFront

可能的值:

  • CloudFront
  • 区域
  • 两者
指定 IP 集列表的作用域。
要返回的正则表达式模式集数上限 整数 5 否 指定要返回的正则表达式集的数量。默认值为 5。最大值为 10。

CloudFront 是与 Amazon CloudFront 搭配使用的资源的全球范围。Regional 是指在 AWS Default Region 集成参数中配置的特定 AWS 区域。

运行时间

此操作不会对实体执行。

操作执行结果

脚本结果
脚本结果名称 值选项
is_success is_success=False
is_success is_success=True
JSON 结果
[
    {
        "Name": "example",
        "Id": "ID",
        "Description": "example",
        "LockToken": "7e76581b-f152-4448-aafe-b733a33c8fa2",
        "ARN": "arn:aws:wafv2:us-east-1:regional/ipset/example/ID"
    }
]
"CloudFront": [
    {
        "Name": "example",
        "Id": "ID",
        "Description": "example",
        "LockToken": "7e76581b-f152-4448-aafe-b733a33c8fa2",
        "ARN": "arn:aws:wafv2:us-east-1:regional/ipset/example/ID"
    }
]
案例墙
结果类型 值/说明 类型(实体 \ 常规)
输出消息*

操作不应失败,也不应停止 playbook 执行:

如果成功列出了可用的正则表达式集,并且“Scope”==“Both”:“Successfully listed available Regex Pattern sets in 区域 and Cloudfront scopes.”

如果成功列出了可用的 IP 集,并且“Scope”==“区域”:“Successfully listed available Regex Pattern sets in 区域 scope.”

如果成功列出了可用的 IP 集,并且“Scope”==“Cloudfront”:“Successfully listed available Regex Pattern sets in Cloudfront scope.”

如果没有可用值且“Scope”==“Both”:“No available Regex Pattern sets were found in 区域 and Cloudfront scopes.”

如果没有可用值且“范围”==“区域”:“在区域范围内未找到可用的正则表达式模式集。”

如果没有可用值且“Scope”==“Cloudfront”:“在 Cloudfront 范围内未找到可用的正则表达式模式集。”

操作应失败并停止 playbook 执行:

如果报告了严重错误、SDK 错误(例如凭据错误、无法连接到服务器等),则会显示以下消息:“Error executing action "List Regex Pattern Sets". Reason: {0}''.format(error.Stacktrace)

常规

外壳壁表

(如果“范围”==“区域”或“两者”)

表名称:Regional Rule Groups

表列:

  • 名称
  • ID
  • 说明
  • 锁定令牌
  • ARN
常规

外壳壁表

(如果“范围”==“CloudFront”或“两者”)

表名称:CloudFront 规则组

表列:

  • 名称
  • ID
  • 说明
  • 锁定令牌
  • ARN
常规

从正则表达式模式集中移除实体

从 AWS WAF 中设置的正则表达式中移除基于实体的字符串模式。

参数

参数显示名称 类型 默认值 为必填项 说明
正则表达式模式集名称 CSV 是 指定以英文逗号分隔的正则表达式集名称列表,例如 name_1,name_2。
范围 DDL

CloudFront

可能的值:

  • CloudFront
  • 区域
  • 两者
是 集合的范围。如果选择“两者”,则该操作会根据 Regional 和 CloudFront 范围内的正则表达式集中的实体移除模式。

CloudFront 是与 Amazon CloudFront 搭配使用的资源的全球范围。Regional 是指在 AWS Default Region 集成参数中配置的特定 AWS 区域。

网域格式 复选框 正确 否

如果启用,该操作会从网址中检索网域部分,并在正则表达式集中搜索基于这些网址的正则表达式,例如 http://test.com/folder 变为 ^(http|https)(:\/\/)(\Qtest.com\E).*。

IP 格式 复选框 正确 否 如果启用,该操作会搜索 IP 地址(而非原始值)中的正则表达式,例如 10.0.0.1 会变为 ^(http|https)(:\/\/)(\Q10.0.1\E).*。

运行时间

此操作将在以下实体上运行:

  • IP 地址
  • 网址

操作执行结果

脚本结果
脚本结果名称 值选项
is_success is_success=False
is_success is_success=True
案例墙
结果类型 值/说明 类型(实体 \ 常规)
输出消息*

操作不应失败,也不应停止 playbook 执行:

如果成功且至少有一个实体已从一个 IP 集移除:“Successfully removed the following entity patterns from the {0} Regex Pattern Set '{1}' in AWS WAF: \n {2}”。format(“区域”/“Cloudfront”、full_name、实体模式列表)

如果实体从未存在于该正则表达式模式集中:“在 AWS WAF 的{0}正则表达式模式集‘{1}’中找不到以下模式:\n {2}”。format(“区域”/“Cloudfront”、全名、实体模式列表)

如果未能移除所有 IP 集中的所有实体:“未从提供的正则表达式模式集中移除任何模式。”

如果未能找到其中一个 IP 集:“Action wasn't able to find the following '{0}' Regex Pattern Sets in the AWS WAF:\n {1}”。format(“区域”/“Cloudfront”,在该范围内未找到的 IP 集列表)

如果未能在所需范围内找到所有提供的正则表达式模式集:“操作未找到提供的正则表达式模式集。”

操作应失败并停止 playbook 执行:

如果报告了严重错误、SDK 错误(例如凭据错误、无法连接到服务器等):“执行操作‘从正则表达式模式集中移除实体’时出错。Reason: {0}''.format(error.Stacktrace)

常规

需要更多帮助?获得社区成员和 Google SecOps 专业人士的解答。