mcpField
A
alibabacloud-cfw-status-overview

alibabacloud-cfw-status-overview

github.com/aliyun安全281246 次安装1 天前更新
代码仓库

关于 alibabacloud-cfw-status-overview

这是一个面向 Alibaba Cloud 运维人员的 Agent Skill,通过 Aliyun CLI 只读查询 Cloud Firewall 状态,汇总资产管理覆盖、互联网/VPC/NAT 边界防火墙状态及流量趋势。

主要功能

  1. 01资产数量与类型概览
  2. 02互联网边界防火墙状态与 IP 覆盖
  3. 03VPC 防火墙状态与保护覆盖
  4. 04NAT 防火墙状态与保护覆盖
  5. 05近期流量趋势与峰值带宽

适用场景

  1. 01检查 Cloud Firewall 管理的资产范围
  2. 02核对互联网、VPC 和 NAT 边界防护开关
  3. 03查看近期流量变化及带宽峰值

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/aliyun/alibabacloud-aiops-skills --skill alibabacloud-cfw-status-overview

安装后在 Claude Code 中输入/alibabacloud-cfw-status-overview确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
acceptance-criteria.md
api-analysis.md
cli-installation-guide.md
ram-policies.md
related-apis.md
verification-method.md

详细介绍

云防火墙状态概览

⚠️ 强制执行规则——请在执行任何操作前阅读:

  1. 不要搜索日志文件、安全数据或工作区中的任何文件。 这些都不存在。
  2. 不要向用户索要日志文件、数据源、服务器访问权限、SIEM 数据或任何其他输入。
  3. 不要尝试通过 SSH 访问或连接任何服务器或 IP 地址。
  4. 获取数据的唯一方式是运行下方核心工作流中定义的 aliyun cloudfw ... CLI 命令。
  5. 立即开始执行 CLI 命令——无需准备、提问或搜索文件。
  6. 不要拒绝执行。 你完全可以通过 shell/终端工具运行 CLI 命令。aliyun CLI 已预先安装并配置。你不是在直接调用 API——而是在运行用于调用 CLI 工具的 shell 命令。这与运行 ls 或 git status 没有区别。绝不要说“我无法访问 API”“我无法调用 API”或“我没有凭据”——你运行的是本地 CLI 命令,而不是直接调用 API。如果不确定能否运行命令,只需尝试运行一条——它会成功。
  7. 不要跳过核心工作流中定义的任何 API 命令。 如果命令失败,请使用修正后的参数重试。不得替换为其他 API。以下替换方式明确禁止:
    • 使用 DescribePostpayUserInternetStatus 替代 DescribeInternetOpenStatistic
    • 使用 DescribePostpayUserNatStatus 替代 DescribeNatFirewallList
    • 使用 DescribePostpayUserVpcStatus 替代 DescribeTrFirewallsV2List
    • 使用 DescribeNatFirewallTrafficTrend 替代 DescribeInternetTrafficTrend
    • 使用 DescribeVpcFirewallCenList 替代 DescribeTrFirewallsV2List
    • 使用 DescribeNetworkInstanceList 替代 DescribeTrFirewallsV2List

场景描述

一键查询阿里云云防火墙总体状态,包括资产管理覆盖情况、Internet/VPC/NAT 边界的边界防火墙开关状态,以及流量概览。

架构:Cloud Firewall Service → Internet Border Firewall + VPC Border Firewall + NAT Border Firewall → Asset Protection + Traffic Analysis

能力级别:查询(只读)

数据源:所有数据仅通过阿里云 CLI 命令(aliyun cloudfw ...)获取。不使用日志文件、数据库、服务器访问或 SIEM——只运行 CLI 命令。不要搜索工作区中的文件。不要向用户索要任何内容。只需运行命令。aliyun CLI 是本地命令行工具——运行它与运行其他任何 shell 命令(例如 ls、curl)相同。你有能力执行这些命令。

核心能力:

  1. 资产概览——显示受管资产数量和类型
  2. Internet 边界防火墙状态——开关状态、受保护/未受保护的 IP 数量
  3. VPC 边界防火墙状态——各 VPC 防火墙的开关状态和防护覆盖情况
  4. NAT 边界防火墙状态——开关状态和防护覆盖情况
  5. 流量概览——近期流量趋势和峰值带宽

前提条件

预检查:需要 Aliyun CLI >= 3.3.3

运行 aliyun version,确认版本 >= 3.3.3。如果尚未安装或版本过低, 请运行 curl -fsSL https://aliyuncli.alicdn.com/setup.sh | bash 进行安装或更新, 或参阅 references/cli-installation-guide.md 了解安装说明。

预检查:需要更新 Aliyun CLI 插件

[MUST] 运行 aliyun configure set --auto-plugin-install true,启用自动安装插件。 [MUST] 运行 aliyun plugin update,确保所有现有插件始终保持最新。

[MUST] CLI User-Agent — 每次调用 aliyun CLI 命令都必须包含:

--user-agent AlibabaCloud-Agent-Skills/alibabacloud-cfw-status-overview

在核心工作流开始时(调用任何 CLI 命令之前): [MUST] 启用 AI-Mode — 执行 Agent Skill 时必须启用 AI-mode。 调用任何 CLI 命令之前运行以下命令:

aliyun configure ai-mode enable
aliyun configure ai-mode set-user-agent --user-agent "AlibabaCloud-Agent-Skills/alibabacloud-cfw-status-overview"

[MUST] 在每个退出点禁用 AI-Mode — 无论出于何种原因,在给出最终回复之前,务必先禁用 AI-mode。此要求适用于所有退出路径:工作流成功、工作流失败、错误/异常、用户取消、会话结束,或任何其他不会再执行 CLI 命令的情况。 AI-mode 仅用于调用 Agent Skill 的场景,Skill 停止运行后不得保持启用状态。

aliyun configure ai-mode disable

身份验证

预检查:需要 Alibaba Cloud 凭证

安全规则:

  • 在任何情况下都不得读取、回显、打印、使用 cat 命令输出或显示 AK/SK 值
  • 以任何形式输出 AK/SK 值都绝对禁止,包括掩码、部分或脱敏形式(例如 LTAI5tXXX****)。日志、报告或对话输出中不得包含 AK ID 的前缀、后缀或任何子字符串。
  • 不得要求用户在对话或命令行中直接输入 AK/SK
  • 不得使用 aliyun configure set 设置字面凭证值
  • 只能使用 aliyun configure list 检查凭证状态。报告结果时只能说“已配置凭证”或“未找到有效凭证”——不得引用凭证输出中的任何内容。
aliyun configure list

检查输出中是否存在有效配置(AK、STS 或 OAuth 身份)。

如果不存在有效配置,请在此处停止。

  1. 从 Alibaba Cloud 控制台 获取凭证
  2. 在本会话之外配置凭证(在终端中运行 aliyun configure,或在 shell 配置文件中设置环境变量)
  3. 返回并在 aliyun configure list 显示有效配置后重新运行

RAM 策略

[MUST] RAM 权限预检查: 执行任何命令之前,验证当前用户是否拥有所需权限。

  1. 使用 ram-permission-diagnose Skill 获取当前用户的权限
  2. 对照 references/ram-policies.md 进行检查
  3. 如果缺少任何权限,请中止并提示用户

最低所需权限——完整策略 JSON 请参阅 references/ram-policies.md。

也可以附加系统策略:AliyunYundunCloudFirewallReadOnlyAccess


参数确认

重要:参数确认——在执行任何命令或 API 调用之前, 请检查用户是否已在请求中提供必要参数。

  • 如果用户的请求明确提及某个参数值(例如,“检查 cn-hangzhou 中的防火墙状态”表示 RegionId=cn-hangzhou),请直接使用该值,无需询问确认。
  • 对于具有合理默认值的可选参数(PageSize、CurrentPage、时间范围),使用默认值,无需询问,除非用户另有说明。
  • 不要再次询问用户已明确说明的参数。
参数名称必填/可选描述默认值
RegionId必填Cloud Firewall 的地域。仅有两个值:cn-hangzhou 表示中国大陆,ap-southeast-1 表示香港/海外。cn-hangzhou(直接使用,无需询问;仅当用户明确提到香港/海外/国际时才使用 ap-southeast-1)

地域不匹配处理:如果用户指定的地域不是 cn-hangzhou 或 ap-southeast-1(例如 cn-shenzhen、cn-beijing),你必须告知用户:“Cloud Firewall 仅支持两个地域:cn-hangzhou(中国大陆)和 ap-southeast-1(香港/海外)。你请求的地域 {user_region} 不受支持。将改用 cn-hangzhou(中国大陆),该地域覆盖所有中国大陆资源。” 不要在不告知用户的情况下默默回退。 | PageSize | 可选 | 分页 API 每页返回的项目数 | 10(直接使用,无需询问) | | CurrentPage | 可选 | 分页 API 的页码 | 1(直接使用,无需询问) | | StartTime | 可选 | 流量趋势查询的开始时间(Unix 时间戳,单位为秒) | 7 天前(直接使用,无需询问) | | EndTime | 可选 | 流量趋势查询的结束时间(Unix 时间戳,单位为秒) | 当前时间(直接使用,无需询问) |


错误处理与工作流韧性

关键:失败时继续。 如果任何单个 API 调用失败,请勿停止整个工作流。 记录该步骤的错误,然后继续下一步。呈现已成功收集的所有数据。

重试逻辑

对于每次 API 调用:

  1. 如果调用因暂时性错误失败(网络超时、限流 Throttling.User、ServiceUnavailable、HTTP 500/502/503),请最多重试 2 次,每次重试间隔 3 秒。
  2. 如果调用因永久性错误失败(例如 InvalidParameter、Forbidden、InvalidAccessKeyId),请勿重试。记录错误并继续。
  3. 所有重试均失败后,记录“[Step X] Failed: {error message}”,然后继续下一步。
服务未开通

如果 DescribeUserBuyVersion(步骤 1)返回的错误表明服务未开通(错误代码为 ErrorFirewallNotActivated,或类似“未购买/未激活”的消息):

  1. 告知用户:“此地域尚未开通 Cloud Firewall 服务。请前往 https://yundun.console.aliyun.com/?p=cfwnext 激活。”
  2. 跳过所有后续步骤,因为该服务不可用。
  3. 如果用户请求了多个地域,请继续处理下一个地域。
步骤独立性

工作流步骤具有以下依赖关系:

  • 步骤 1(实例信息)必须先成功——如果服务未开通,则跳过其余步骤。
  • 步骤 2–6 相互独立——任何一个步骤失败都不应阻止其他步骤执行。
  • 在步骤 2 中,子步骤 2.1 和子步骤 2.2 相互独立。
  • 在步骤 4 中,子步骤 4.1、4.2 和 4.3 相互独立。
  • 在步骤 6 中,子步骤 6.1 和 6.2 相互独立。
部分结果

生成最终摘要报告时:

  • 对于成功的步骤,正常显示收集到的数据。
  • 对于失败的步骤,在相应部分显示“N/A(错误:{简要错误})”。
  • 即使部分步骤失败,也始终生成摘要报告——部分数据总比没有数据好。

核心工作流

所有 API 调用均使用 Aliyun CLI cloudfw 插件。

地域:通过全局标志 --region {RegionId} 指定

上下文管理(必须)

关键:流量趋势 API 会产生大量输出。 DescribeInternetDropTrafficTrend 和 DescribeInternetTrafficTrend 在查询 7 天数据时会返回数百个数据点,可能超出上下文窗口。这两个 API 的输出必须通过 jq 提取汇总值(数据点数量、最大值、平均值、时间范围)。jq 筛选器已包含在下文的步骤 3.2 和步骤 6.2 中——必须完全按原样使用。

其他 API 返回的数据适中,无需使用 jq 筛选。

关键:立即执行,不要询问。 触发此技能后,立即从步骤 1 开始执行。 不要询问用户要调用哪些 API、执行哪些步骤或使用哪些数据源。 所有数据均来自下文定义的 Aliyun CLI 命令——直接运行即可。

强制要求:执行所有步骤。 必须尝试执行步骤 1 至步骤 6 的每一步(包括所有子步骤)。生成最终摘要报告前,请确认已尝试调用以下所有 API:

  1. DescribeUserBuyVersion
  2. DescribeAssetStatistic
  3. DescribeAssetList
  4. DescribeInternetOpenStatistic
  5. DescribeInternetDropTrafficTrend
  6. DescribeTrFirewallsV2List
  7. DescribeVpcFirewallCenList
  8. DescribeVpcFirewallList
  9. DescribeNatFirewallList
  10. DescribePostpayTrafficTotal
  11. DescribeInternetTrafficTrend

如果尚未尝试调用其中任何一个,请在生成报告前立即执行。仅当步骤 1 表明服务未激活时,才允许跳过步骤。

时间参数

部分 API(步骤 3.2、步骤 6.2)需要 StartTime 和 EndTime 参数(Unix 秒级时间戳)。

获取时间戳的方法:运行 date +%s 获取当前时间戳,运行 date -d '7 days ago' +%s 获取 7 天前的时间戳。然后在 CLI 命令中直接使用返回的数字。

重要:不要在 CLI 命令中使用 $(date +%s) 这类 Bash 变量替换——某些执行环境会阻止 $(...)。应先分别运行 date 命令并记下返回值,然后将其作为字面数字填入 --StartTime 和 --EndTime 参数。

步骤 1:查询实例信息(云防火墙版本)
aliyun cloudfw describe-user-buy-version \
  --region {RegionId} \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cfw-status-overview

关键响应字段:Version(版本代码)、InstanceId、ExpireTime、IpNumber(最大受保护 IP 数量)、AclExtension(ACL 配额)。

版本代码与版本名称对应关系——API 返回的是数字代码。使用此表在报告中显示易读的版本名称:

版本代码版本名称
1高级版 (高级版)
2企业版 (企业版)
3旗舰版 (旗舰版)
10按量付费版 (按量付费版)

如果返回的代码不在此表中,请报告为:"Unknown edition (code: {Version})"。

重要:请勿推断或臆造字段值。 如果任一关键响应字段(例如 AclExtension、IpNumber)在 JSON 响应中缺失(键不存在)或其值为 null,请在摘要中将其报告为 “N/A (not returned by API)”。但是,值 0 是有效值,不代表字段缺失——请报告为 0。请勿根据版本类型的常识填写数值。只能使用 API 响应 JSON 中 明确提供 的值。

请避免以下常见的臆造示例:

  • 响应中没有 AclExtension → 请勿写“ACL 规则上限为 10000”或任何其他猜测的数字。请写“N/A (not returned by API)”。
  • 响应中没有 IpNumber → 请勿写“最大公网 IP 配额为 200”。请写“N/A (not returned by API)”。
  • 响应中没有任何字段 → 请勿根据版本类型推断(例如,“旗舰版最多支持 X”)。只能报告 API 实际返回的内容。
步骤 2:资产概览
2.1 查询资产统计信息
aliyun cloudfw describe-asset-statistic \
  --region {RegionId} \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cfw-status-overview

关键响应字段:资产总数、受保护数量、未受保护数量,以及按资源类型划分的数量(EIP、SLB、ECS 等)。

2.2 查询资产列表(分页)
aliyun cloudfw describe-asset-list \
  --CurrentPage 1 \
  --PageSize 10 \
  --region {RegionId} \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cfw-status-overview

关键响应字段:Assets[],包含 InternetAddress、IntranetAddress、ResourceType、ProtectStatus、RegionID、Name。

2.2.1 查询未受保护的资产

重要:当用户询问未受保护/未托管的资产、防火墙未覆盖的资产或防护缺口时,必须使用设为 "close" 的 Status 筛选参数,仅查询未受保护的资产:

aliyun cloudfw describe-asset-list \
  --CurrentPage 1 \
  --PageSize 50 \
  --Status close \
  --region {RegionId} \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cfw-status-overview

查询未受保护资产时,使用 PageSize: "50" 以获取更多结果。如果响应中的 TotalCount 超过 PageSize,请递增 CurrentPage 并遍历所有页面,直到获取全部资产。

Status 请求参数的筛选值:

值含义
close未受保护的资产(未启用防火墙)
open受保护的资产(已启用防火墙)
opening正在启用的资产

注意:请求参数使用 close(不带“d”),而响应字段 ProtectStatus 使用 closed(带“d”)。筛选请求参数时请使用 close,检查响应数据时请检查 closed。

步骤 3:互联网边界防火墙状态
3.1 查询互联网暴露统计信息

重要:此步骤必须使用 DescribeInternetOpenStatistic。 请勿替换为 DescribePostpayUserInternetStatus 或其他 API。DescribePostpayUserInternetStatus 仅检查开关状态,而 DescribeInternetOpenStatistic 提供暴露统计信息(公网 IP、开放端口、风险等级)。

aliyun cloudfw describe-internet-open-statistic \
  --region {RegionId} \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cfw-status-overview

关键响应字段:公网 IP 总数、开放端口数量、风险等级分布、近期暴露的资产。

3.2 查询互联网防御流量趋势

必需参数:--StartTime、--EndTime、--SourceCode 和 --Direction 都是必填项。缺少任何一项都会导致 HTTP 400 错误(例如 ErrorDirectionError)。请先分别计算时间戳(参见“时间参数”部分),再将其作为数字字面值传入。--SourceCode 必须严格为 China 或 Other(区分大小写)。--Direction 必须严格为 in 或 out。

aliyun cloudfw describe-internet-drop-traffic-trend \
  --StartTime {StartTime} \
  --EndTime {EndTime} \
  --SourceCode China \
  --Direction in \
  --region {RegionId} \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cfw-status-overview \
  | jq '{DataPoints: (.DataList // [] | length), MaxDropBps: ([.DataList[]?.DropBps // 0] | max), MaxDropPps: ([.DataList[]?.DropPps // 0] | max), FirstTime: (.DataList // [] | first | .Time), LastTime: (.DataList // [] | last | .Time)}'

SourceCode 的取值:China(中国大陆)、Other(海外)。 Direction 的取值:in(入站)、out(出站)。默认使用 in。

步骤 4:VPC 边界防火墙状态
4.1 查询 CEN 企业版(TR 防火墙)

此步骤必须使用 DescribeTrFirewallsV2List。 请勿替换为 DescribeVpcFirewallCenList、DescribePostpayUserVpcStatus、DescribeNetworkInstanceList 或任何其他 API。DescribeVpcFirewallCenList 用于 CEN 基础版(步骤 4.2),不适用于 CEN 企业版 TR 防火墙。

aliyun cloudfw describe-tr-firewalls-v2-list \
  --CurrentPage 1 \
  --PageSize 20 \
  --region {RegionId} \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cfw-status-overview

关键响应字段:VpcTrFirewalls[],包含 FirewallSwitchStatus(opened/closed/opening/closing)、CenId、RegionNo、VpcId。

4.2 查询 CEN 基础版 VPC 防火墙
aliyun cloudfw describe-vpc-firewall-cen-list \
  --CurrentPage 1 \
  --PageSize 20 \
  --region {RegionId} \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cfw-status-overview

关键响应字段:VpcFirewalls[],包含 FirewallSwitchStatus、CenId、LocalVpc、PeerVpc。

4.3 查询高速通道 VPC 防火墙
aliyun cloudfw describe-vpc-firewall-list \
  --CurrentPage 1 \
  --PageSize 20 \
  --region {RegionId} \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cfw-status-overview

关键响应字段:VpcFirewalls[],包含 FirewallSwitchStatus、VpcFirewallId、LocalVpc、PeerVpc、Bandwidth。

步骤 5:NAT 边界防火墙状态

重要:此步骤必须使用 DescribeNatFirewallList。 请勿替换为 DescribePostpayUserNatStatus 或任何其他 API。DescribePostpayUserNatStatus 仅检查开关状态,而 DescribeNatFirewallList 会提供 NAT 防火墙实例的详细信息。

aliyun cloudfw describe-nat-firewall-list \
  --region {RegionId} \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cfw-status-overview

关键响应字段:NatFirewalls[],包含 ProxyStatus(configuring/normal/deleting)、NatGatewayId、NatGatewayName、VpcId、RegionId。

步骤 6:流量概览
6.1 查询总流量统计
aliyun cloudfw describe-postpay-traffic-total \
  --region {RegionId} \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cfw-status-overview
6.2 查询互联网流量趋势

此 API 必须分两步执行:

  1. 首次尝试必须包含 --TrafficType TotalTraffic。不得跳过此步骤。请严格按照下方所示执行命令。
  2. 仅当首次尝试返回 HTTP 400 时,才在重试时省略 --TrafficType。
  3. 不要直接执行重试命令。首次尝试时不得省略 TrafficType。

其他必需参数:--StartTime、--EndTime、--SourceCode(规则与步骤 3.2 相同)。请勿改用 DescribeNatFirewallTrafficTrend 或任何其他 API。

# Step 1 - MUST run first (with TrafficType):
aliyun cloudfw describe-internet-traffic-trend \
  --StartTime {StartTime} \
  --EndTime {EndTime} \
  --SourceCode China \
  --TrafficType TotalTraffic \
  --region {RegionId} \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cfw-status-overview \
  | jq '{DataPoints: (.DataList // [] | length), MaxBps: ([.DataList[]?.TotalBps // 0] | max), AvgBps: (([.DataList[]?.TotalBps // 0] | add) / ([.DataList // [] | length] | if . == 0 then 1 else . end)), FirstTime: (.DataList // [] | first | .Time), LastTime: (.DataList // [] | last | .Time)}'

仅当且只有当上述命令返回 HTTP 400 时,才省略 --TrafficType 并重试:

# Step 2 - ONLY run if Step 1 returned HTTP 400:
aliyun cloudfw describe-internet-traffic-trend \
  --StartTime {StartTime} \
  --EndTime {EndTime} \
  --SourceCode China \
  --region {RegionId} \
  --user-agent AlibabaCloud-Agent-Skills/alibabacloud-cfw-status-overview \
  | jq '{DataPoints: (.DataList // [] | length), MaxBps: ([.DataList[]?.TotalBps // 0] | max), AvgBps: (([.DataList[]?.TotalBps // 0] | add) / ([.DataList // [] | length] | if . == 0 then 1 else . end)), FirstTime: (.DataList // [] | first | .Time), LastTime: (.DataList // [] | last | .Time)}'

TrafficType 的取值(支持时):TotalTraffic、InTraffic、OutTraffic。

**流量趋势数据验证:**收到流量趋势响应后,请检查数据点数量及其时间跨度。如果响应包含的数据点少于 10 个,或第一个与最后一个数据点之间的时间跨度不到 1 天,请在报告中添加说明:"注意:流量趋势数据较为稀疏(共 {N} 个数据点,覆盖 {timespan})。这可能表示查询时段内没有受保护资产或流量极少。7 天趋势可能无法充分代表实际情况。" 如果实际数据点覆盖的时间跨度明显更短,请勿声称数据覆盖了 7 天。

输出摘要格式

收集完所有数据后,生成摘要报告。即使某些步骤失败,也始终生成此报告——对于无法完成的步骤,将值替换为“N/A”。

============================================
   Cloud Firewall Status Overview Report
============================================

1. Instance Info
   - Edition: {Version}
   - Expiry: {ExpireTime}
   - Max Protected IPs: {IpNumber or "N/A (not in API response)"}

2. Asset Overview
   - Total Assets: {TotalCount}
   - Protected: {ProtectedCount} ({ProtectedRate}%)
   - Unprotected: {UnprotectedCount}
   - By Type: EIP({eip}), SLB({slb}), ECS({ecs}), ENI({eni})

3. Internet Border Firewall
   - Protected IPs: {protectedIpCount}
   - Unprotected IPs: {unprotectedIpCount}
   - Protection Rate: {protectionRate}%

4. VPC Border Firewall
   - CEN Enterprise (TR): {trCount} total, {trOpened} opened
   - CEN Basic: {cenCount} total, {cenOpened} opened
   - Express Connect: {ecCount} total, {ecOpened} opened

5. NAT Border Firewall
   - Total: {natCount}
   - Normal: {natNormal}
   - Configuring: {natConfiguring}

6. Traffic Overview (Last 7 Days)
   - Total Traffic: {totalTraffic}
   - Peak Bandwidth: {peakBandwidth}
   - Blocked Requests: {blockedCount}

[Steps with errors (if any)]
   - {Step X}: {error message}
============================================

注意:对于任何失败的步骤,在该部分的数据字段中显示“N/A (error: {brief error})”,并在底部部分列出所有错误。

重要:错误报告准确性。摘要报告必须准确反映执行期间遇到的所有错误,包括通过重试解决的错误。对于重试后成功的调用,请报告为:“Step X: {API name} initially failed with {error code/message}, succeeded on retry {N}”。如果执行期间任何调用曾返回错误,请勿声称“所有 API 调用均已成功完成”。错误部分应按以下类别列出遇到的所有错误:

  • 通过重试解决:重试后最终成功的错误
  • 未解决:所有重试后仍然存在的错误

成功验证

详细验证步骤请参阅 references/verification-method.md。

快速验证:如果所有 CLI 命令都返回有效的 JSON 响应,且没有错误代码,则表示技能执行成功。


API 和命令表

API 表和命令映射请以 references/related-apis.md 为唯一事实来源。


最佳实践

  1. 失败后继续——如果任何步骤(2-6)失败,记录错误并继续。始终根据已收集的数据生成摘要。
  2. 使用分页——常规查询默认 PageSize=10,筛选查询(例如,未受保护的资产)默认 PageSize=50。
  3. 选择时间范围——默认查询最近 7 天。分别运行 date 命令,然后将返回值作为字面数字用于 --StartTime/--EndTime。请勿在 CLI 命令中使用 $(...)。
  4. 关注区域——Cloud Firewall 仅有两个区域:cn-hangzhou(中国大陆)和 ap-southeast-1(香港/海外)。默认使用 cn-hangzhou。
  5. 安全——绝不暴露、记录、回显或显示 AK/SK 值。

参考链接

参考资料说明
references/related-apis.md包含参数的完整 API 表
references/ram-policies.md所需的 RAM 权限和策略 JSON
references/verification-method.md分步验证命令
references/acceptance-criteria.md正确/错误的使用模式
references/cli-installation-guide.mdAliyun CLI 安装指南

评论

支持 Markdown