将 AWS WAF 与 Google SecOps 集成
本文档介绍了如何将 AWS WAF 与 Google Security Operations (Google SecOps) 集成。
集成版本:7.0
使用场景
有效操作 - 管理 IP 集、规则组、模式集、Web ACL。
集成参数
使用以下参数配置集成:
参数显示名称 | 类型 | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
实例名称 | 字符串 | 不适用 | 否 | 您打算为其配置集成的实例的名称。 |
说明 | 字符串 | 不适用 | 否 | 实例的说明。 |
AWS 访问密钥 ID | 字符串 | 不适用 | 是 | 要在集成中使用的 AWS 访问密钥 ID。 |
AWS 密钥 | 密码 | 不适用 | 是 | 要在集成中使用的 AWS 密钥。 |
AWS 默认区域 | 字符串 | 不适用 | 是 | 集成中要使用的 AWS 默认区域,例如 us-west-2。 |
远程运行 | 复选框 | 尚未核查 | 否 | 选中此字段,以便远程运行配置的集成。选中后,系统会显示用于选择远程用户(客服人员)的选项。 |
如需了解如何在 Google SecOps 中配置集成,请参阅配置集成。
如有需要,您可以在稍后阶段进行更改。配置集成实例后,您可以在剧本中使用该实例。如需详细了解如何配置和支持多个实例,请参阅支持多个实例。
操作
如需详细了解操作,请参阅 在工作台页面中处理待处理的操作和执行手动操作。
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_{名称}_{IP 类型}。名称必须包含 1-128 个字符。有效字符:A-Z、a-z、0-9、-(连字符)和 _(下划线)。 |
范围 | DDL | CloudFront 可能的值:
|
是 | 指定创建 IP 集的范围。如果选择“两者”,则操作将在区域范围和 Amazon CloudFront 范围内创建 IP 集。 |
说明 | 字符串 | 不适用 | 否 | 指定 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 集,并且至少有一个提供的实体用于创建 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):“操作无法使用以下 IP 来创建 AWS WAF IP 集:\n{0}”。format([entity.identifier]) 如果未能使用所有实体 (is_success = false):“No IP Sets were created. 原因:提供的 IP 实体均无效。” 如果所有集合已存在 (is_success=false) 或仅部分集合已存在 (is_success=true):“以下 {0} IP 模式集 '{1}' 已存在:\n.".format("区域/CloudFront", list_of_full_names) 操作应失败并停止 playbook 执行: 如果出现严重错误,例如凭据错误、无法连接到服务器等:“Error executing action "Create IP Set". 原因:{0}''.format(error.Stacktrace) |
将 IP 添加到 IP 集
将 IP 地址添加到 AWS WAF 中的 IP 集。
参数
参数显示名称 | 类型 | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
IP 集名称 | CSV | 不适用 | 是 | 指定以英文逗号分隔的 IP 集名称列表。示例:name_1,name_2 |
范围 | DDL | CloudFront 可能的值:
|
是 | 指定 IP 集的范围。如果选择“Both”,则操作会将 IP 地址添加到区域范围和 CloudFront 范围内的 IP 集。 |
运行于
此操作在 IP 地址实体上运行。
操作执行结果
脚本结果
脚本结果名称 | 值选项 | 示例 |
---|---|---|
is_success | True/False | is_success:False |
案例墙
结果类型 | 值 / 说明 | 类型 |
---|---|---|
输出消息* | 操作不应失败,也不应停止 playbook 执行: 如果成功且至少有一个 IP 地址已添加到某个 IP 集(is_success = true):“已成功将以下 IP 添加到 AWS WAF 中的 {0} IP 集‘{1}’:\n{2}”。format(“区域”/“Cloudfront”,full_name,entity.identifier 列表) 如果无法将特定实体添加到某个 IP 集(is_success = true):“操作无法将以下 IP 添加到 AWS WAF 中的 {0} IP 集 '{1}':\n{2}”。format("区域"/"Cloudfront", full_name,[entity.identifier]) 如果未能找到某个 IP 集(is_success = true):“操作无法在 AWS WAF 中找到以下‘{0}’IP 集:\n{1}”。format(“区域”/“Cloudfront”,未在相应范围内找到的 IP 集的列表) 如果无法在所选范围中找到所有提供的 IP 集(is_success=false):“操作未找到提供的 IP 集。” 操作应失败并停止 playbook 执行: 如果出现严重错误、SDK 错误(例如凭据错误、无法连接到服务器)或其他错误:“执行操作‘将 IP 添加到 IP 集’时出错。原因:{0}''.format(error.Stacktrace) |
常规 |
创建正则表达式模式集
在 AWS WAF 中基于实体创建正则表达式模式集。
每个正则表达式模式集只能包含 10 个模式,并且总共只能有 10 个正则表达式模式集。
参数
参数显示名称 | 类型 | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
名称 | 字符串 | 不适用 | 是 | 指定正则表达式模式集的名称。注意:名称的长度必须介于 1 到 128 个字符之间。有效字符:A-Z、a-z、0-9、-(连字符)和 _(下划线)。 |
范围 | DDL | CloudFront 可能的值:
|
是 | 指定创建正则表达式模式集的范围。如果选择“两者”,则该操作会在区域级和 CloudFront 范围内创建正则表达式模式集。 |
说明 | 字符串 | 不适用 | 否 | 指定正则表达式模式集的说明。 |
标记 | 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 个:“操作无法使用所有提供的实体创建正则表达式模式集,因为实体数量超出了限制。已跳过以下实体:{0}".format(entity.identifier) 如果设置已存在 (is_success=false):“{0} 正则表达式模式集 '{1}' 已存在。”。format("区域/CloudFront", name) 操作应失败并停止 playbook 执行: 如果出现严重错误、SDK 错误(例如凭据错误、无法连接到服务器)或其他错误:“Error executing action "Create Regex Pattern Set". 原因:{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 可能的值:
|
是 | 指定创建 Web ACL 的范围。如果选择“两者”,则操作将在区域范围和 CloudFront 范围中创建 Web ACL。 |
启用抽样请求 | 复选框 | 尚未核查 | 是 | 如果启用,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 区域 and Cloudfront scopes.”.format(name) 如果成功列出可用的 IP 集(is_success = true) 且“Scope”==“Regional”: “已在区域性范围内成功创建 Web ACL {0}。”.format(name) 如果成功列出了可用的 IP 集(is_success = true)且“Scope”==“Cloudfront”:“Successfully created Web ACL {0} in Cloudfront scope.".format(name) 如果 Web ACL 存在: 打印“The Web ACL {} already exists in {} scope.”。format(web ACL name, scope)。 如果未找到 IP 集 / 规则组:“操作无法创建 Web ACL。原因:在 AWS WAF 中找不到“{0} {1}”。format("IP Set/Rule Group", Rule Source Name) 操作应失败并停止 playbook 执行: 如果出现严重错误、SDK 错误(例如凭据错误、无法连接到服务器、其他错误):“Error executing action "Create Web ACL". 原因:{0}''.format(error.Stacktrace) |
向 Web ACL 添加规则
在 AWS WAF 中,基于 IP 集或规则组向 Web ACL 添加规则。Web ACL 最多可包含 1,500 条规则。
参数
参数显示名称 | 类型 | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
Web ACL 名称 | CSV | 不适用 | 是 | 指定 Web ACL 名称的英文逗号分隔列表。示例:name_1,name_2 |
规则来源类型 | DDL | IP 集 可能的值:
|
是 | 指定应使用哪种规则类型。 |
规则来源名称 | 字符串 | 不适用 | 是 | 指定要用于 Web ACL 的来源的名称。如果“规则来源类型”为“IP 集”,则操作将搜索具有该名称的 IP 集。如果“规则来源类型”为“规则组”,则操作将搜索具有该名称的规则组。 |
范围 | DDL | CloudFront 可能的值:
|
是 | 指定新规则的适用范围。如果选择“Both”,则操作会在区域级范围和 CloudFront 范围内的 Web ACL 中添加规则。 |
规则优先级 | 整数 | 不适用 | 是 | 指定规则的优先级。Web ACL 中的优先级应是唯一的。 |
IP 集操作 | DDL | 屏蔽 可能的值:
|
否 | 指定基于 IP 集的规则应采取的操作。 |
运行于
此操作不会在实体上运行。
操作执行结果
脚本结果
脚本结果名称 | 值选项 | 示例 |
---|---|---|
is_success | True/False | is_success:False |
案例墙
结果类型 | 值 / 说明 | 类型 |
---|---|---|
输出消息* | 操作不应失败,也不应停止 playbook 执行: 如果成功且至少向一个 Web ACL 添加了一条规则(is_success = true):“Successfully added a rule to the following {0} Web ACLs '{1}' in AWS WAF.”(已成功向 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。原因:以下 Web ACL 中已存在名称为“{1}”的 {0}:\n{2}".format( rule source type, rule source name, list Web ACL with scope - structure {0} - {1}.format(scope, web acl name)) 操作应失败并停止 playbook 执行: 如果出现严重错误、SDK 错误(例如凭据错误、无法连接到服务器、其他错误):“Error executing action "Add Rule To Web ACL". 原因:{0}''.format(error.Stacktrace) |
常规 |
创建规则组
在 AWS WAF 中创建规则组。
参数
参数显示名称 | 类型 | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
名称 | 字符串 | 不适用 | 是 | 指定规则组的名称。注意:名称的长度必须为 1-128 个字符。有效字符:A-Z、a-z、0-9、-(连字符)和 _(下划线)。 |
范围 | DDL | CloudFront 可能的值:
|
是 | 指定规则组的创建范围。如果选择“两者”,则操作将在区域范围和 CloudFront 范围中创建规则组。 |
容量 | 整数 | 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 区域 and Cloudfront scopes.”.format(name) >如果成功列出了可用的 IP 集(is_success = true) 且“Scope”==“区域”:“规则组 {} 已存在于 {} 范围中。”。format(web ACL 名称, 范围)。 如果成功列出了可用的 IP 集(is_success = true) 且“Scope”==“Cloudfront”:“Successfully created Rule Group {0} in Cloudfront scope.".format(name) 如果规则组存在:“已在 CloudFront 范围内成功创建规则组 {0}。”。format(name) 如果规则组创建失败,则会显示“Action was not able to create Rule Group {} in {} scope”(操作无法在 {} 范围内创建规则组 {})。format(Web ACL 名称, 范围)。 操作应失败并停止 playbook 执行: 如果出现严重错误、SDK 错误(例如凭据错误、无法连接到服务器)或其他错误:“执行操作‘创建规则组’时出错。原因:{0}''.format(error.Stacktrace) |
常规 |
向正则表达式模式集添加实体
根据实体向 AWS WAF 中的正则表达式模式集添加字符串模式。
每个正则表达式模式集只能包含 10 个模式。
参数
参数显示名称 | 类型 | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
正则表达式模式集名称 | CSV | 不适用 | 是 | 指定正则表达式模式集名称的英文逗号分隔列表,例如 name_1,name_2 。 |
范围 | DDL | CloudFront 可能的值:
|
是 | 所设置的正则表达式模式的范围。如果选择“两者”,则该操作会根据实体向区域级和 CloudFront 范围内的正则表达式模式集添加模式。 |
网域模式 | 复选框 | 勾选 | 否 | 如果启用,该操作会从网址中检索网域部分,并根据这些网域部分创建正则表达式模式,例如将 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 错误(例如凭据错误、无法连接到服务器)或其他错误:“执行操作‘将实体添加到正则表达式模式集’时出错。原因:{0}''.format(error.Stacktrace) |
常规 |
向正则表达式模式集添加模式
向 AWS WAF 中的正则表达式模式集添加字符串模式。
每个正则表达式模式集只能包含 10 个模式。
参数
参数显示名称 | 类型 | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
正则表达式模式集名称 | CSV | 不适用 | 是 | 指定正则表达式模式集名称的英文逗号分隔列表,例如 name_1,name_2 。 |
图案 | CSV | 不适用 | 是 | 指定要添加到正则表达式模式集的模式的英文逗号分隔列表,例如 pattern_1,pattern_2 。 |
范围 | DDL | CloudFront 可能的值:
|
是 | 所设置的正则表达式模式的范围。如果选择“两者”,则该操作会根据实体向区域级和 CloudFront 范围内的正则表达式模式集添加模式。 |
运行于
此操作不会在实体上运行。
操作执行结果
脚本结果
脚本结果名称 | 值选项 | 示例 |
---|---|---|
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 错误(例如凭据错误、无法连接到服务器)或其他错误:“Error executing action "Add Pattern To Regex Pattern Set". 原因:{0}''.format(error.Stacktrace) |
常规 |
从 Web ACL 中移除规则
从 AWS WAF 中的 Web ACL 中移除规则。
参数
参数显示名称 | 类型 | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
Web ACL 名称 | CSV | 是 | 指定 Web ACL 名称的英文逗号分隔列表。示例:name_1,name_2 |
|
范围 | DDL | CloudFront 可能的值:
|
是 | 指定应移除 Web ACL 的范围。如果选择“两者”,则操作将移除区域级和 CloudFront 范围内的 Web ACL。 |
规则名称 | 字符串 | 不适用 |
是 | 指定应删除的规则的名称。 |
运行于
此操作不会在实体上运行。
操作执行结果
脚本结果
脚本结果名称 | 值选项 |
---|---|
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.”(已成功从 AWS WAF 中的以下 {0} Web ACL '{1}' 中移除了一个规则)。format("区域"/"Cloudfront", list of names) 如果某个规则组的移除操作失败:打印“无法从 AWS WAF 中的以下 {0} Web ACL ‘{1}’中移除规则。”。format("区域"/"Cloudfront", list of names) 如果因在某个 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) 如果未能找到某个规则组:打印“操作无法在 AWS WAF 中找到以下‘{0}’Web ACL:\n{1}”。format(“区域”/Cloudfront”,未在相应范围内找到的规则组列表) 如果无法在所需范围或多个范围内找到所有提供的集合:打印“操作未找到提供的 Web ACL”。 操作应失败并停止 playbook 执行: 如果出现严重错误、SDK 错误(例如凭据错误、无法连接到服务器、其他错误):打印“Error executing action "Remove Rule From Web ACL"”。原因:{0}''.format(error.Stacktrace) |
常规 |
列出 Web ACL
列出 AWS WAF 中可用的 Web ACL。
参数
参数显示名称 | 类型 | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
范围 | DDL | CloudFront 可能的值:
|
指定列出 Web ACL 的范围。 | |
要返回的 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 集且“Scope”==“Both”:“Successfully listed available Web ACLs in 区域 and Cloudfront scopes.” 如果成功列出可用的 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) 且“范围”==“两者”:“在区域范围和 Cloudfront 范围中均未找到可用的 Web ACL。” 如果没有可用值 (is_success = false) 且“Scope”==“Regional”:“在区域范围内未找到可用的 Web ACL。” 如果没有可用值(is_success = false) 且“Scope”==“Cloudfront”:“在 Cloudfront 范围内未找到可用的 Web ACL。” 操作应失败并停止 playbook 执行: 如果出现严重错误、SDK 错误(例如凭据错误、无法连接到服务器、其他错误):“执行操作‘列出 Web ACL’时出错。原因:{0}''.format(error.Stacktrace) |
常规 |
“案例墙”表格 (如果“范围”为“区域”或“两者”) |
表格名称:区域规则 ACL 表格列:
|
常规 |
“案例墙”表格 (如果“范围”为“CloudFront”或“两者兼有”) |
表格名称:CloudFront 规则 ACL 表格列:
|
常规 |
从规则组中移除规则
从 AWS WAF 中的规则组中移除规则。
参数
参数显示名称 | 类型 | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
规则组名称 | CSV | 是 | 指定以英文逗号分隔的规则组名称列表。示例:name_1,name_2 | |
范围 | DDL | CloudFront 可能的值:
|
是 | 指定应在什么范围内移除规则组。如果选择“两者”,则操作将移除区域级范围和 CloudFront 范围内的规则组。 |
规则名称 | 字符串 | 不适用 |
是 | 指定应删除的规则的名称。 |
运行于
此操作不会在实体上运行。
操作执行结果
脚本结果
脚本结果名称 | 值选项 |
---|---|
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) 如果无法成功移除某个规则组中的规则:“Action wasn't able to remove a rule from the following {0} Rule Groups '{1}' in AWS WAF.".format("区域"/"Cloudfront", list of names) 如果因在一个规则组中找不到规则而导致操作失败:“操作无法在 AWS WAF 的以下 {0} 规则组‘{1}’中找到指定规则。”format(“区域”/“Cloudfront”,规则组名称列表) 如果找不到某个规则组,则会显示以下错误消息:“操作无法在 AWS WAF 中找到以下‘{0}’规则组:\n{1}”。format(“区域”/Cloudfront”,在该范围内未找到的规则组列表) 如果无法在所需范围中找到所有提供的集合:“操作未找到提供的规则组。” 操作应失败并停止 playbook 执行: 如果报告了严重错误、SDK 错误(例如凭据错误、无法连接到服务器)或其他错误:“Error executing action "Remove Rule From Rule Group". 原因:{0}''.format(error.Stacktrace) |
常规 |
列出规则组
列出 AWS WAF 中可用的规则组。
参数
参数显示名称 | 类型 | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
范围 | DDL | CloudFront 可能的值:
|
指定规则组列表的范围。 | |
要返回的规则组数量上限 | 整数 | 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 集且“范围”==“区域”:“已成功列出区域范围内的可用规则组。” 如果成功列出了可用的 IP 集,并且“Scope”==“Cloudfront”:“Successfully listed available Rule groups in Cloudfront scope.”> 如果没有可用值且“Scope”==“Both”:“在区域范围和 Cloudfront 范围中均未找到可用的规则组。” 如果没有可用值且“Scope”==“区域”:“No available Rule groups were found in 区域 scope.” 如果没有可用值且“Scope”==“Cloudfront”:“在 Cloudfront 范围内未找到任何可用的规则组。” 操作应失败并停止 playbook 执行: 如果报告了严重错误、SDK 错误(例如凭据错误、未连接到服务器)或其他错误:“Error executing action "List Rule Groups". 原因:{0}''.format(error.Stacktrace) |
常规 |
案例墙表 (如果“范围”为“区域”或“两者”) |
表格名称:区域规则组 表格列:
|
常规 |
案例墙表 (如果“范围”为“CloudFront”或“两者”) |
表格名称:CloudFront 规则组 表格列:
|
常规 |
列出 IP 集
列出 AWS WAF 中的可用 IP 集。
参数
参数显示名称 | 类型 | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
范围 | DDL | CloudFront 可能的值:
|
指定 IP 集的列出范围。 | |
要返回的 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 集且“范围”==“区域”:“已成功列出区域范围内的可用 IP 集。” 如果成功列出了可用的 IP 集,并且“范围”==“Cloudfront”:“成功列出了 Cloudfront 范围内的可用 IP 集。” 如果没有可用值且“范围”==“两者”:打印“在区域和 Cloudfront 范围内未找到任何可用的 IP 集。” 如果没有可用值且“范围”为“区域”:“在区域范围内未找到任何可用的 IP 集。” 如果没有可用值且“范围”==“Cloudfront”:“在 Cloudfront 范围内未找到任何可用的 IP 集。” 操作应失败并停止 playbook 执行: 如果报告了严重错误、SDK 错误(例如凭据错误、无法连接到服务器)或其他错误:“Error executing action "List IP Sets". 原因:{0}''.format(error.Stacktrace) |
常规 |
案例墙表 (如果“范围”为“区域”或“两者”) |
表格名称:区域规则组 表格列:
|
常规 |
案例墙表 (如果“范围”为“CloudFront”或“两者”) |
表格名称:CloudFront 规则组 表格列:
|
常规 |
从正则表达式模式集中移除模式
从 AWS WAF 中的正则表达式集中移除模式。
参数
参数显示名称 | 类型 | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
正则表达式模式集名称 | CSV | 是 | 指定正则表达式集名称的英文逗号分隔列表,例如 name_1,name_2 。 |
|
图案 | CSV | 是 | 指定应从正则表达式集中移除的模式的逗号分隔列表,例如 pattern_1,pattern_2 。 |
|
范围 | DDL | CloudFront 可能的值:
|
是 | 集合的范围。如果选择“两者”,则该操作会从区域级和 CloudFront 范围内的正则表达式集中移除相应模式。 |
运行于
此操作不会在实体上运行。
操作执行结果
脚本结果
脚本结果名称 | 值选项 |
---|---|
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) 如果相应模式从未出现在该模式集中:“The following patterns were not found in the {0} Regex Pattern Set '{1}' in AWS WAF: \n {2}".format("区域"/"Cloudfront", full_name, list of patterns) 如果未能移除所有正则表达式模式集中的所有模式:“未从提供的正则表达式模式集中移除任何模式。” 如果找不到某个模式集:“操作无法在 AWS WAF 中找到以下‘{0}’正则表达式模式集:\n{1}”。format(“区域”/“Cloudfront”,在该范围内未找到的集的列表) 如果无法在所需范围或多个范围内找到所有提供的正则表达式模式集:“操作未找到提供的正则表达式模式集。” 操作应失败并停止 playbook 执行: 如果报告了严重错误、SDK 错误(例如凭据错误、无法连接到服务器)或其他错误:“Error executing action "Remove Pattern From Regex Pattern Set". 原因:{0}''.format(error.Stacktrace) |
常规 |
从 IP 集中移除 IP
从 AWS WAF 中的 IP 集中移除 IP 地址。
参数
参数显示名称 | 类型 | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
IP 集名称 | CSV | 是 | 指定以英文逗号分隔的 IP 集名称列表。示例:name_1,name_2 | |
范围 | DDL | CloudFront 可能的值:
|
是 | 指定 IP 集的范围。如果选择“两者”,则操作会从区域范围和 CloudFront 范围内的 IP 集中移除 IP 地址。 |
运行于
此操作在 IP 实体上运行。
操作执行结果
脚本结果
脚本结果名称 | 值选项 |
---|---|
is_success | is_success=False |
is_success | is_success=True |
案例墙
结果类型 | 值 / 说明 | 类型 |
---|---|---|
输出消息* | 操作不应失败,也不应停止 playbook 执行: 如果成功从某个 IP 集中移除了至少一个 IP 地址:“已成功从 AWS WAF 中的 {0} IP 集‘{1}’中移除以下 IP:\n {2}”。format(“区域”/“Cloudfront”,完整名称,实体标识符列表) 如果 IP 从未存在于该 IP 集中:“以下 IP 不属于 AWS WAF 中的 {0} IP 集‘{1}’:\n {2}”。format("区域"/"Cloudfront", full_name, entity.identifier list) 如果无法移除所有 IP 集中的所有实体:“未从提供的 IP 集中移除任何 IP。” 如果未能找到某个 IP 集:P "操作无法在 AWS WAF 中找到以下“{0}”IP 集:\n{1}".format("区域"/Cloudfront",list of IP sets that were not found in that scope) 如果无法在所需范围中找到所有提供的 IP 集:“操作未找到提供的 IP 集。” 操作应失败并停止 playbook 执行: 如果报告了严重错误、SDK 错误(例如凭据错误、未连接到服务器、其他错误):“执行操作‘从 IP 集中移除 IP’时出错。原因:{0}''.format(error.Stacktrace) |
常规 |
列出正则表达式模式集
列出 AWS WAF 中可用的正则表达式集。
参数
参数显示名称 | 类型 | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
范围 | DDL | CloudFront 可能的值:
|
指定 IP 集的列出范围。 | |
要返回的正则表达式模式集数量上限 | 整数 | 5 | 否 | 指定要返回多少个正则表达式集。默认值为 5。最多 10 个。 |
运行于
此操作不会在实体上运行。
操作执行结果
脚本结果
脚本结果名称 | 值选项 |
---|---|
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 执行: 如果成功列出了可用的正则表达式集且“范围”==“两者”:“已成功列出区域和 Cloudfront 范围内的可用正则表达式模式集。” 如果成功列出可用的 IP 集且“范围”==“区域性”:“已成功列出区域性范围内的可用正则表达式模式集。” 如果成功列出了可用的 IP 集,并且“范围”==“Cloudfront”:“已成功列出 Cloudfront 范围内的可用正则表达式模式集。” 如果没有可用值且“Scope”==“Both”:“No available Regex Pattern sets were found in 区域 and Cloudfront scopes.” 如果没有可用值且“Scope”==“区域”:“No available Regex Pattern sets were found in 区域 scope.” 如果没有可用值且“范围”==“Cloudfront”:“在 Cloudfront 范围内未找到任何可用的正则表达式模式集。” 操作应失败并停止 playbook 执行: 如果报告了严重错误、SDK 错误(例如凭据错误、无法连接到服务器)或其他错误:“Error executing action "List Regex Pattern Sets". 原因:{0}''.format(error.Stacktrace) |
常规 |
案例墙表 (如果“范围”为“区域”或“两者”) |
表格名称:区域规则组 表格列:
|
常规 |
案例墙表 (如果“范围”为“CloudFront”或“两者”) |
表格名称:CloudFront 规则组 表格列:
|
常规 |
从正则表达式模式集中移除实体
根据 AWS WAF 中正则表达式集内的实体移除字符串模式。
参数
参数显示名称 | 类型 | 默认值 | 是否为必需属性 | 说明 |
---|---|---|---|---|
正则表达式模式集名称 | CSV | 是 | 指定正则表达式集名称的英文逗号分隔列表,例如 name_1,name_2 。 |
|
范围 | DDL | CloudFront 可能的值:
|
是 | 集合的范围。如果选择“两者”,则该操作会根据区域和 CloudFront 范围内的正则表达式集中的实体移除模式。 |
网域模式 | 复选框 | 正确 | 否 | 如果启用,该操作会从网址中检索网域部分,并在正则表达式集中搜索基于这些网域部分的正则表达式,例如 |
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, list of entity patterns) 如果实体从未存在于该正则表达式模式集中:“The following patterns were not found in the {0} Regex Pattern Set '{1}' in AWS WAF: \n {2}".format("区域"/"Cloudfront", full_name, list of entity patterns) 如果无法移除所有 IP 集中的所有实体:“未从提供的正则表达式模式集中移除任何模式。” 如果找不到某个 IP 集:“操作无法在 AWS WAF 中找到以下 '{0}' 正则表达式模式集:\n {1}”。format("区域"/Cloudfront",list of IP sets that were not found in that scope) 如果无法在所需范围或多个范围内找到所有提供的正则表达式模式集:“操作未找到提供的正则表达式模式集。” 操作应失败并停止 playbook 执行: 如果报告了严重错误、SDK 错误(例如凭据错误、无法连接到服务器)或其他错误:“Error executing action "Remove Entity From Regex Pattern Set". 原因:{0}''.format(error.Stacktrace) |
常规 |
需要更多帮助?从社区成员和 Google SecOps 专业人士那里获得解答。