GetWafRule - 获取单个WAF规则详情

获取Web应用防火墙(WAF)中单个规则的详细信息。通过此接口,用户可以查询特定规则的配置和状态。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用前面加 * 表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
esa:GetWafRuleget
*Site
acs:esa:{#regionId}:{#accountId}:site/{#SiteId}

请求参数

名称类型必填描述示例值
Idlong

WAF 规则的 ID,可通过调用 ListWafRules 接口获取。

20000001
SiteIdlong

站点 ID,可通过调用 ListSites 接口获取。

1

返回参数

名称类型描述示例值
object

Schema of Response

RequestIdstring

请求 ID。

36af3fcc-43d0-441c-86b1-428951dc8225
UpdateTimestring

规则的最后修改时间。

2024-01-01T00:00:00Z
Idlong

WAF 规则的 ID,可通过调用 ListWafRules 接口获取。

2000001
Positionlong

规则在规则集中所处的位置顺序。

1
Namestring

规则名称。

example
Statusstring

规则状态。

on
Phasestring

WAF 运行阶段。

http_custom
ConfigWafRuleConfig

规则配置。

示例

正常返回示例

JSON格式

{
  "RequestId": "36af3fcc-43d0-441c-86b1-428951dc8225",
  "UpdateTime": "2024-01-01T00:00:00Z",
  "Id": 2000001,
  "Position": 1,
  "Name": "example",
  "Status": "on",
  "Phase": "http_custom",
  "Config": {
    "Status": "on",
    "Action": "deny",
    "Actions": {
      "Response": {
        "Id": 50000001,
        "Code": 403
      },
      "Bypass": {
        "Skip": "part",
        "RegularRules": [
          100001
        ],
        "CustomRules": [
          20000001
        ],
        "RegularTypes": [
          "sqli"
        ],
        "Tags": [
          "http_custom"
        ]
      }
    },
    "ManagedList": "intelligence_crawler",
    "ManagedRulesets": [
      {
        "ProtectionLevel": 4,
        "Action": "deny",
        "ManagedRules": [
          {
            "Status": "on",
            "Action": "deny",
            "Id": 100001
          }
        ],
        "AttackType": 11,
        "NumberTotal": 100,
        "NumberEnabled": 50
      }
    ],
    "Sigchl": [
      "sig"
    ],
    "Name": "example",
    "AppSdk": {
      "CustomSign": {
        "Value": "examplesignvalue",
        "Key": "sign"
      },
      "CustomSignStatus": "on",
      "FeatureAbnormal": [
        "wxbb_invalid_sign"
      ]
    },
    "RateLimit": {
      "Characteristics": {
        "Logic": "and",
        "Criteria": [
          {
            "Logic": "and",
            "Criteria": [
              {
                "Logic": "and",
                "Criteria": [
                  {
                    "MatchType": "ip.src",
                    "MatchOperator": "eq",
                    "MatchValue": "1.1.1.1",
                    "Negate": true,
                    "ConvertToLower": true
                  }
                ],
                "MatchType": "ip.src",
                "MatchOperator": "eq",
                "MatchValue": "1.1.1.1",
                "Negate": true,
                "ConvertToLower": true
              }
            ],
            "MatchType": "ip.src",
            "MatchOperator": "eq",
            "MatchValue": "1.1.1.1",
            "Negate": true,
            "ConvertToLower": true
          }
        ],
        "MatchType": "ip.src",
        "MatchOperator": "eq",
        "MatchValue": "1.1.1.1",
        "Negate": true,
        "ConvertToLower": true
      },
      "OnHit": true,
      "TTL": 10,
      "Threshold": {
        "ManagedRulesBlocked": 10,
        "DistinctManagedRules": 10,
        "ResponseStatus": {
          "Ratio": 10,
          "Count": 10,
          "Code": 404
        },
        "Traffic": "10Gb",
        "Request": 10
      },
      "Interval": 10
    },
    "Type": "http_custom",
    "AppPackage": {
      "PackageSigns": [
        {
          "Sign": "sign",
          "Name": "name"
        }
      ]
    },
    "ManagedGroupId": 30000001,
    "Timer": {
      "Scopes": "permanent",
      "Zone": 8,
      "Periods": [
        {
          "Start": "2025-01-01T00:00:00Z",
          "End": "2025-01-01T01:00:00Z"
        }
      ],
      "WeeklyPeriods": [
        {
          "Days": 1,
          "DailyPeriods": [
            {
              "Start": "00:00:00",
              "End": "01:00:00"
            }
          ]
        }
      ]
    },
    "Expression": "ip.src eq 10.0.0.1",
    "SecurityLevel": {
      "Value": "low"
    },
    "Value": "10.0.0.1",
    "Id": 20000001,
    "Notes": "example notes"
  },
  "RulesetId": 0
}

错误码

HTTP status code错误码错误信息描述
400InvalidParameterThe specified parameter is invalid.输入参数规范校验失败。
400InternalExceptionFailed to call the service. Try again later or contact technical support.调用服务失败,请稍后重试或联系客服咨询详情。

访问错误中心查看更多错误码。

变更历史

变更时间变更内容概要操作
2024-09-25OpenAPI 错误码发生变更查看变更详情