Consulta as regras configuradas em um módulo de proteção do WAF, como prevenção contra intrusão web, segurança de dados, gerenciamento de bots, controle de acesso ou limitação de taxa e lista de permissões.
Descrição da operação
Esta operação permite consultas paginadas de regras nos seguintes módulos de proteção do WAF: prevenção contra intrusão web, segurança de dados, gerenciamento de bots, controle de acesso ou limitação de taxa e lista de permissões.
Defina DefenseType para especificar o módulo de proteção a consultar.
Limites
Limite de 50 chamadas por segundo por conta. Exceder esse limite aciona a limitação de taxa, o que pode afetar o serviço.
Depuração
Parâmetros de solicitação
|
Parâmetro |
Tipo |
Obrigatório |
Exemplo |
Descrição |
|
Action |
String |
Sim |
DescribeProtectionModuleRules |
Operação a executar. Defina o valor como DescribeProtectionModuleRules. |
|
InstanceId |
String |
Sim |
waf_elasticity-cn-0xldbqt\\\\ |
ID da instância do WAF. Chame DescribeInstanceInfo para obter o ID da instância. |
|
DefenseType |
String |
Sim |
ac_highfreq |
Módulo de proteção a consultar. Valores válidos: waf-codec (configuração de decodificação do mecanismo de regras de proteção), tamperproof (proteção contra adulteração de site), dlp (prevenção contra vazamento de dados), ng_account (segurança de conta), bot_crawler (rastreadores permitidos), bot_intelligence (inteligência de ameaças de bots), antifraud (controle de risco de dados), antifraud_js (configuração de plug-in JavaScript para controle de risco de dados), bot_algorithm (algoritmo inteligente), bot_wxbb_pkg (proteção de versão para proteção de aplicativo), bot_wxbb (proteção de caminho para proteção de aplicativo), ac_blacklist (lista de bloqueios de endereços IP), ac_highfreq (bloqueio de ataques web de alta frequência), ac_dirscan (proteção contra varredura), ac_custom (política de proteção personalizada), whitelist (lista de permissões). |
|
Domain |
String |
Não |
www.aliyundoc.com |
Nome de domínio a consultar. Obrigatório quando DefenseType tem qualquer valor diferente de ng_account. Se DefenseType for ng_account, deixe este parâmetro em branco; especificar um valor retorna erro. Chame DescribeDomainList para obter todos os nomes de domínio protegidos pelo WAF. |
|
PageNumber |
Integer |
Não |
1 |
Número da página. Valor padrão: 1. |
|
PageSize |
Integer |
Não |
10 |
Número de entradas por página. Valor padrão: 10. |
|
Query |
String |
Não |
e2ZpbHRlcjp7InJ1bGVJZCI6NDI3NTV9LG9yZGVyQnk6ImdtdF9tb2RpZmllZCIsZGVzYzp0cnVlfQ== |
Critérios de filtro e ordenação da consulta, codificados em Base64. O valor decodificado é uma string json com os campos: filter (opcional, objeto json), orderBy (opcional, string), desc (opcional, booleano). Consulte a seção Query parameter structure para obter detalhes. |
|
Lang |
String |
Não |
zh |
Idioma do nome da regra. Valores válidos: zh (chinês), en (inglês), ja (japonês). |
|
ResourceGroupId |
String |
Não |
rg-acfm2pz25js\\\\ |
ID do grupo de recursos ao qual a instância do WAF pertence no Resource Management. Se não especificado, a instância do WAF pertence ao grupo de recursos padrão. |
Para parâmetros de solicitação comuns, consulte Parâmetros comuns.
Estrutura do parâmetro Query
O valor do parâmetro Query deve estar codificado em Base64. O valor decodificado é uma string json com os seguintes campos.
filter (opcional, objeto json) — condições de filtro:
|
Campo |
Tipo |
Descrição |
|
nameId |
String |
Filtra regras cujo id corresponde ao valor ou cujo nome contém o valor. |
|
scene |
String |
Módulo de proteção usado como filtro. Os valores válidos são os mesmos de DefenseType. |
|
enabled |
Boolean |
Filtra pelo status da regra. true: ativada. false: desativada. |
|
status |
Integer |
Filtra pelo status da regra. 1: ativada. 0: desativada. Equivale a enabled. |
|
ruleId |
Integer |
id da regra usada como filtro. |
|
ruleIdList |
Array |
Lista de ids de regras usadas como filtro. Separe vários ids com vírgulas (,). |
|
sceneList |
Array |
Lista de módulos de proteção usados como filtro. Separe vários módulos com vírgulas (,). Os valores válidos são os mesmos de DefenseType. |
|
originList |
Array |
Lista de origens de regras usadas como filtro. Separe várias origens com vírgulas (,). Valores válidos: system (gerado pelo sistema), custom (criado pelo usuário). |
|
tag |
String |
Aplicável quando DefenseType é whitelist. Filtra regras da lista de permissões pelos módulos ignorados. Consulte a estrutura Content da lista de permissões para valores válidos. |
|
origin |
String |
Aplicável quando DefenseType é whitelist. Defina como ai para retornar apenas regras adicionadas automaticamente pelo recurso de hospedagem inteligente de regras. Se não definido, todas as regras da lista de permissões serão retornadas. |
|
category |
String |
Aplicável quando DefenseType é whitelist. Filtra pelo tipo de lista de permissões. Valores válidos: waf (lista de permissões de site), ws (lista de permissões de prevenção contra intrusão web), ac (lista de permissões de controle de acesso/limitação de taxa), ds (lista de permissões de segurança de dados). |
orderBy (opcional, String) — campo de ordenação. Valores válidos:
gmt_modified: hora da última modificação da regra (padrão)
action: ação executada quando a regra corresponde (aplica-se apenas a regras personalizadas)
name: nome da regra
status: status da regra
desc (opcional, Boolean) — ordem de classificação. true: decrescente (padrão). false: crescente.
Parâmetros de resposta
|
Parâmetro |
Tipo |
Exemplo |
Descrição |
|
RequestId |
String |
D7861F61-5B61-46CE-A47C-6B19160D5EB0 |
ID da solicitação. |
|
TotalCount |
Integer |
1 |
Número total de regras retornadas. |
|
Rules |
Array of Rule |
Lista de regras. Cada regra contém os campos descritos abaixo. |
Campos de Rule:
|
Campo |
Tipo |
Exemplo |
Descrição |
|
RuleId |
Long |
42755 |
id da regra. |
|
Status |
Long |
1 |
Status da regra. 1: ativada. 0: desativada. |
|
Time |
Long |
1570700044 |
Hora de criação da regra, como timestamp UNIX em segundos. |
|
Version |
Long |
2 |
Versão da regra. |
|
Content |
Map |
Conteúdo da regra. A estrutura varia conforme DefenseType. Consulte a seção Content parameter structures. |
Estruturas do parâmetro Content
A estrutura do campo Content varia conforme o valor de DefenseType.
waf-codec
|
Campo |
Tipo |
Obrigatório |
Descrição |
|
codecList |
String |
Sim |
Itens de decodificação ativados. |
Exemplo:
{
"codecList": ["url", "base64"]
}
tamperproof
|
Campo |
Tipo |
Obrigatório |
Descrição |
|
name |
String |
Sim |
Nome da regra. |
|
uri |
String |
Sim |
url a proteger. |
|
status |
Integer |
Não |
Status da regra. 1: ativada. 0: desativada (padrão). |
Exemplo:
{
"name": "example",
"uri": "http://www.example.com/example",
"status": 1
}
dlp
|
Campo |
Tipo |
Obrigatório |
Descrição |
|
name |
String |
Sim |
Nome da regra. |
|
conditions |
Array |
Sim |
Condições de correspondência (até duas, combinadas com E lógico). Cada condição é um objeto json com os campos: key (item de correspondência: 0 para url, 10 para dados sensíveis, 11 para código de status HTTP), operation (fixo como 1, significando INCLUDES), value (array de valores de correspondência). Em cada entrada de valor: v aplica-se quando key é 0 ou 11 (string de url ou código de status HTTP: 400–404, 405–499, 500–504, 505–599); k aplica-se quando key é 10 (100: números de cartão de identidade, 101: números de cartão de crédito, 102: números de telefone, 103: palavras sensíveis padrão). |
|
action |
Integer |
Sim |
Ação a executar quando a regra corresponder. 3: gera alertas. 10: filtra dados sensíveis (aplica-se apenas quando key é 10). 11: retorna a página de bloqueio integrada (aplica-se apenas quando key é 11). |
Exemplo:
{
"name": "example",
"conditions": [
{"key": 11, "operation": 1, "value": [{"v": 401}]},
{"key": "0", "operation": 1, "value": [{"v": "www.example.com"}]}
],
"action": 3
}
ng_account
|
Campo |
Tipo |
Obrigatório |
Descrição |
|
domain |
String |
Sim |
Nome de domínio protegido pelo WAF. |
|
method |
String |
Sim |
Métodos de solicitação a detectar. Valores válidos: POST, GET, PUT, DELETE. Separe vários valores com vírgulas (,). |
|
url_path |
String |
Sim |
Caminho da url a detectar. Deve começar com barra (/). |
|
account_left |
String |
Sim |
Parâmetro da conta. |
|
password_left |
String |
Não |
Parâmetro da senha. |
|
action |
String |
Sim |
Ação a executar quando a regra corresponder. monitor: gera alertas. block: bloqueia solicitações. |
Exemplo:
{
"domain": "www.example.com",
"method": "GET,POST",
"url_path": "/example",
"account_left": "aaa",
"action": "monitor"
}
bot_crawler
|
Campo |
Tipo |
Obrigatório |
Descrição |
|
Status |
Integer |
Sim |
Status da regra. 1: ativada. 0: desativada. |
|
Version |
Integer |
Sim |
Versão da regra. |
|
Content |
String (json) |
Sim |
Detalhes da regra. Contém: name (nome da regra), conditions (condições de caminho de url; fixo como vazio para bot_crawler, indicando que todos os caminhos estão protegidos), expressions (expressões condicionais), bypassTags (fixo como antibot para bot_crawler), tags (fixo como |
|
RuleId |
Integer |
Sim |
id da regra. |
|
Time |
String |
Sim |
Timestamp UNIX da última modificação, em segundos. |
Exemplo:
{
"Status": 0,
"Version": 1,
"Content": {
"name": "Baidu Spider whitelist",
"conditions": [],
"expressions": ["remote_addr inl 'ioc.210d077a-cf34-49ad-a9b3-0aa48095c595' && uri =^ '/'"],
"bypassTags": "antibot",
"tags": ["antibot"]
},
"RuleId": 20384,
"Time": 1585818161
}
bot_intelligence
|
Campo |
Tipo |
Obrigatório |
Descrição |
|
Status |
Integer |
Sim |
Status da regra. 1: ativada. 0: desativada. |
|
Version |
Integer |
Sim |
Versão da regra. |
|
Content |
String (json) |
Sim |
Detalhes da regra. Contém: name (nome da regra), action (ação a executar: monitor, captcha, captcha_strict, js para desafio JavaScript, block), urlList (até 10 caminhos de url protegidos, cada um com mode (eq, prefix-match ou regex) e url começando com /), keyType (tipo de biblioteca de inteligência: ip para biblioteca de endereços IP, ua para biblioteca de fingerprints). |
|
RuleId |
Integer |
Sim |
id da regra. |
|
Time |
String |
Sim |
Timestamp UNIX da última modificação, em segundos. |
Exemplo:
{
"Status": 1,
"Version": 1,
"Content": {
"name": "IDC IP Address Library-Tencent Cloud",
"action": "captcha_strict",
"urlList": [
{"mode": "prefix-match", "url": "/indexa"},
{"mode": "regex", "url": "/"},
{"mode": "eq", "url": "/"}
],
"keyType": "ip"
},
"RuleId": 922777,
"Time": 1585907112
}
antifraud
|
Campo |
Tipo |
Obrigatório |
Descrição |
|
uri |
String |
Sim |
url a proteger. |
Exemplo:
{
"uri": "http://1.example.com/example"
}
antifraud_js
|
Campo |
Tipo |
Obrigatório |
Descrição |
|
uri |
String |
Sim |
Caminho da url da página web onde o plug-in JavaScript para controle de risco de dados é inserido. Deve começar com barra (/). O sistema insere o plug-in em todas as páginas sob o caminho especificado. |
Exemplo:
{
"uri": "/example/example"
}
bot_algorithm
|
Campo |
Tipo |
Obrigatório |
Descrição |
|
Status |
Integer |
Sim |
Status da regra. 1: ativada. 0: desativada. |
|
Version |
Integer |
Sim |
Versão da regra. |
|
Content |
String (json) |
Sim |
Detalhes da regra. Contém: name (nome da regra), timeInterval (intervalo de detecção em segundos; valores válidos: 30, 60, 120, 300, 600), action (monitor, captcha, js para desafio JavaScript, block; se definido como block, blocktime é obrigatório), blocktime (duração do bloqueio em minutos; valores válidos: 1–600), algorithmName (consulte os nomes de algoritmos abaixo), config (configuração específica do algoritmo). |
|
RuleId |
Integer |
Sim |
id da regra. |
|
Time |
String |
Sim |
Timestamp UNIX da última modificação, em segundos. |
Nomes de algoritmos para algorithmName:
|
Valor |
Descrição |
|
RR |
Identifica rastreadores de recursos |
|
PR |
Identifica rastreadores de caminho |
|
DPR |
Identifica rastreadores de parâmetro round-robin |
|
SR |
Identifica rastreadores de endereço IP dinâmico |
|
IND |
Identifica rastreadores de dispositivo proxy |
|
Periodicity |
Identifica rastreadores periódicos |
Campos de config por algoritmo:
RR: resourceType (Integer, opcional: 1 recursos dinâmicos, 2 recursos estáticos, -1 recursos personalizados com sufixos em extensions), minRequestCountPerIp (Integer, obrigatório; valores válidos: 5–10000), minRatio (Float, obrigatório; valores válidos: 0,01–1).
PR: keyPathConfiguration (Array, opcional; até 10 caminhos de url, cada um com method, url e matchType (all para correspondência exata, prefix para correspondência de prefixo, regex para expressão regular)), minRequestCountPerIp (Integer, obrigatório; valores válidos: 5–10000), minRatio (Float, obrigatório; valores válidos: 0,01–1).
DPR: method (String, obrigatório; valores válidos: POST, GET, PUT, DELETE, HEAD, OPTIONS), urlPattern (String, obrigatório; caminho com parâmetros-chave entre {}), minRequestCountPerIp (Integer, obrigatório; valores válidos: 5–10000), minRatio (Float, obrigatório; valores válidos: 0,01–1).
SR: maxRequestCountPerSrSession (Integer, obrigatório; valores válidos: 1–8; sessões com menos solicitações são consideradas anormais), minSrSessionCountPerIp (Integer, obrigatório; valores válidos: 5–300; endereços IP com mais sessões anormais que este limiar são sinalizados).
IND: minIpCount (Integer, obrigatório; valores válidos: 5–500; endereços IP acessados por mais IPs que este número através do mesmo dispositivo Wi-Fi são sinalizados), keyPathConfiguration (Array, opcional; mesma estrutura que PR).
Periodicity: minRequestCountPerIp (Integer, obrigatório; valores válidos: 5–10000), level (Integer, obrigatório: 0 óbvio, 1 moderado, 2 fraco).
Exemplo:
{
"Status": 1,
"Version": 1,
"Content": {
"name": "Dynamic IP address",
"timeInterval": 60,
"action": "warn",
"algorithmName": "IND",
"config": {
"minIpCount": 5,
"keyPathConfiguration": [{"method": "GET", "matchType": "prefix", "url": "/index"}]
}
},
"RuleId": 940180,
"Time": 1585832957
}
bot_wxbb_pkg
|
Campo |
Tipo |
Obrigatório |
Descrição |
|
Version |
Integer |
Sim |
Versão da regra. |
|
Content |
String (json) |
Sim |
Detalhes da regra. Contém: name (nome da regra), action (test: monitora solicitações, close: bloqueia solicitações), nameList (informações de versão para pacotes válidos, até 5 entradas; cada entrada tem name (nome do pacote) e signList (assinaturas, até 15 por pacote, separadas por vírgulas)). |
|
RuleId |
Integer |
Sim |
id da regra. |
|
Time |
String |
Sim |
Timestamp UNIX da última modificação, em segundos. |
Exemplo:
{
"Version": 0,
"Content": {
"nameList": [{"signList": ["xxxxxx", "xxxxx", "xxxx", "xx"], "name": "apk-xxxx"}],
"name": "test",
"action": "close"
},
"RuleId": 271,
"Time": 1585836143
}
bot_wxbb
|
Campo |
Tipo |
Obrigatório |
Descrição |
|
Version |
Integer |
Sim |
Versão da regra. |
|
Content |
String (json) |
Sim |
Detalhes da regra. Contém: name (nome da regra), uri (caminho da url a proteger; deve começar com /), matchType (all para correspondência exata, prefix para correspondência de prefixo, regex para expressão regular), arg (parâmetros incluídos; usado com matchType para especificar o caminho), action (test: monitora solicitações, close: bloqueia solicitações), blockInvalidSign (booleano; indica se deve agir sobre assinatura inválida), blockProxy (booleano; indica se deve agir sobre proxy), blockSimulator (booleano; indica se deve agir sobre simulador), wxbbVmpFieldType (Integer, opcional; tipo do campo de assinatura: 0 cabeçalho, 1 parâmetro, 2 cookie; retornado apenas quando campos de assinatura personalizados são configurados), wxbbVmpFieldValue (String, opcional; valor do campo de assinatura; retornado apenas quando campos de assinatura personalizados são configurados). |
|
RuleId |
Integer |
Sim |
id da regra. |
|
Time |
String |
Sim |
Timestamp UNIX da última modificação, em segundos. |
Exemplo:
{
"Version": 6,
"Content": {
"blockInvalidSign": true,
"wxbbVmpFieldValue": "test",
"blockSimulator": true,
"matchType": "all",
"arg": "test",
"name": "test",
"action": "close",
"blockProxy": true,
"uri": "/index",
"wxbbVmpFieldType": 1
},
"RuleId": 2585,
"Time": 1586241849
}
ac_blacklist
|
Campo |
Tipo |
Obrigatório |
Descrição |
|
empty |
Boolean |
Sim |
Indica se a lista de bloqueios de endereços IP está vazia. |
|
remoteAddr |
Array |
Sim |
Endereços IP na lista de bloqueios. |
|
area |
String |
Sim |
Regra de bloqueio de região, como string json contendo countryCodes, regionCodes e not (indica se permite acesso). Países e regiões bloqueados são retornados como códigos. Verifique os nomes correspondentes no console do WAF. |
Exemplo:
{
"empty": false,
"remoteAddr": ["1.XX.XX.1", "12.XX.XX.2"]
}
ac_highfreq
|
Campo |
Tipo |
Obrigatório |
Descrição |
|
interval |
Integer |
Sim |
Intervalo de detecção, em segundos. Valores válidos: 5–1800. |
|
ttl |
Integer |
Não |
Duração do bloqueio, em segundos. Valores válidos: 60–86400. |
|
count |
Integer |
Sim |
Limiar de contagem de ataques. Endereços IP que excederem esse número de ataques durante o intervalo de detecção serão bloqueados. Valores válidos: 2–50000. |
Exemplo:
{
"interval": 60,
"ttl": 300,
"count": 60
}
ac_dirscan
|
Campo |
Tipo |
Obrigatório |
Descrição |
|
interval |
Integer |
Sim |
Intervalo de detecção, em segundos. Valores válidos: 5–1800. |
|
ttl |
Integer |
Sim |
Duração do bloqueio, em segundos. |
|
count |
Integer |
Sim |
Número máximo de solicitações permitidas de um endereço IP. Valores válidos: 2–50000. |
|
weight |
Float |
Sim |
Limiar para a proporção de respostas HTTP 404 em relação ao total de solicitações. Valores válidos: (0, 1]. |
|
uriNum |
Integer |
Sim |
Número máximo de caminhos verificáveis. Valores válidos: 2–50000. |
Exemplo:
{
"interval": 10,
"ttl": 1800,
"count": 50,
"weight": 0.7,
"uriNum": 20
}
ac_custom
A estrutura de Content varia conforme o campo scene.
scene: custom_acl (Regra ACL)
|
Campo |
Tipo |
Obrigatório |
Descrição |
|
name |
String |
Sim |
Nome da regra. |
|
scene |
String |
Sim |
Tipo de política de proteção. Fixo como custom_acl. |
|
action |
String |
Sim |
Ação a executar quando a regra corresponder. Valores válidos: monitor (monitora solicitações), captcha (CAPTCHA deslizante), captcha_strict (CAPTCHA deslizante estrito), js (desafio JavaScript), block (bloqueia solicitações). |
|
conditions |
Array |
Sim |
Condições de correspondência. Cada condição é um objeto json com: key (item de correspondência: url, IP, Referer, User-Agent, Params, Cookie, Content-Type, Content-Length, X-Forwarded-For, Post-Body, Http-Method, Header, URLPath), opCode (relação lógica; consulte valores de opCode), values (valor de correspondência), contain (relação lógica; mesmos valores que opCode), opValue (descrição abreviada da relação lógica), pattern (mesmos valores que opValue). |
|
expressions |
Array |
Sim |
Expressões condicionais que representam todas as condições. |
Valores de opCode:
|
opCode |
Significado |
|
0 |
não inclui |
|
1 |
inclui |
|
2 |
não existe |
|
10 |
não é igual a |
|
11 |
igual a |
|
20 |
comprimento menor que |
|
21 |
comprimento igual a |
|
22 |
comprimento maior que |
|
41 |
igual a um de vários valores |
|
50 |
não é igual a nenhum valor |
|
51 |
inclui um de vários valores |
|
52 |
não inclui nenhum valor |
|
60 |
não corresponde a uma expressão regular |
|
61 |
corresponde a uma expressão regular |
|
72 |
corresponde a um prefixo |
|
80 |
conteúdo vazio |
|
81 |
corresponde a um sufixo |
|
82 |
existe |
Exemplo:
{
"name": "test2",
"action": "monitor",
"conditions": [{"contain": 1, "values": "login", "pattern": "contain", "opCode": 1, "opValue": "contain", "key": "URL"}],
"expressions": ["request_uri contains 'login'"],
"scene": "custom_acl"
}
scene: custom_cc (Regra de proteção contra flood HTTP)
|
Campo |
Tipo |
Obrigatório |
Descrição |
|
name |
String |
Sim |
Nome da regra. |
|
scene |
String |
Sim |
Tipo de política de proteção. Fixo como custom_cc. |
|
conditions |
Array |
Sim |
Condições de correspondência. Mesma estrutura das condições de custom_acl. |
|
expressions |
Array |
Sim |
Expressões condicionais que representam todas as condições. |
|
action |
String |
Sim |
Ação a executar quando a regra corresponder. Valores válidos: monitor, captcha, captcha_strict, js (desafio JavaScript), block. |
|
ratelimit |
String (json) |
Sim |
Configuração de limitação de taxa. Contém: target (tipo de objeto a medir: remote_addr para endereços IP, cookie.acw_tc para sessões, queryarg para parâmetros personalizados, cookie para cookies personalizados, header para cabeçalhos personalizados), subkey (obrigatório quando target é queryarg, cookie ou header; especifica o nome do parâmetro, cookie ou cabeçalho), interval (Integer; janela de medição em segundos), threshold (Integer; número máximo de solicitações permitidas por objeto na janela de medição), status (objeto json opcional com code (código de status HTTP), count (limiar para o número de vezes que o código de status é retornado; valores válidos: 1–999999999; mutuamente exclusivo com ratio), ratio (limiar para a porcentagem de vezes que o código de status é retornado; valores válidos: 1–100; mutuamente exclusivo com count))), scope (rule para objetos que correspondem às condições, domain para todas as solicitações de nome de domínio), ttl (Integer; duração da ação de bloqueio em segundos; valores válidos: 60–86400). |
Exemplo:
{
"name": "HTTP flood protection rule",
"conditions": [{"contain": 1, "values": "login", "pattern": "contain", "opCode": 1, "opValue": "contain", "key": "URL"}],
"expressions": ["request_uri contains 'login'"],
"action": "block",
"scene": "custom_cc",
"ratelimit": {
"target": "remote_addr",
"interval": 300,
"threshold": 2000,
"status": {
"code": 404,
"count": 200
},
"scope": "rule",
"ttl": 1800
}
}
whitelist
|
Campo |
Tipo |
Obrigatório |
Descrição |
|
name |
String |
Sim |
Nome da regra. |
|
tags |
Array |
Sim |
Módulos de proteção a ignorar. Valores válidos: waf (lista de permissões de site), cc (proteção contra flood HTTP), customrule (política de proteção personalizada), blacklist (lista de bloqueios de endereços IP), antiscan (proteção contra varredura), regular (mecanismo de regras de proteção), deeplearning (mecanismo de deep learning), antifraud (controle de risco de dados), dlp (prevenção contra vazamento de dados), tamperproof (proteção contra adulteração de site), bot_intelligence (inteligência de ameaças de bots), bot_algorithm (algoritmo inteligente), bot_wxbb (proteção de aplicativo). |
|
bypassTags |
String |
Sim |
Módulos de proteção que ignoram a detecção. |
|
origin |
String |
Não |
Origem da regra da lista de permissões. Se retornado como ai, a regra foi adicionada automaticamente pelo recurso de hospedagem inteligente de regras. Se não retornado, o resultado inclui regras adicionadas manual e automaticamente. |
|
conditions |
Array |
Sim |
Condições de correspondência. Mesma estrutura das condições de ac_custom. |
|
expressions |
Array |
Sim |
Expressões condicionais que representam todas as condições. |
Exemplo:
{
"name": "test",
"tags": ["cc", "customrule"],
"bypassTags": "antifraud,dlp,tamperproof",
"conditions": [{"contain": 1, "values": "login", "pattern": "contain", "opCode": 1, "opValue": "contain", "key": "URL"}],
"expressions": ["request_uri contains 'login'"]
}
Exemplos
Exemplo de solicitação:
http(s)://[Endpoint]/?Action=DescribeProtectionModuleRules
&InstanceId=waf_elasticity-cn-0xldbqt****
&Domain=www.example.com
&DefenseType=ac_highfreq
&<Common request parameters>
Exemplo de resposta de sucesso (XML):
HTTP/1.1 200 OK
Content-Type:application/xml
<?xml version="1.0" encoding="UTF-8" ?>
<DescribeProtectionModuleRulesResponse>
<TotalCount>1</TotalCount>
<Rules>
<Version>2</Version>
<Status>1</Status>
<Content>
<count>60</count>
<interval>60</interval>
<ttl>300</ttl>
</Content>
<RuleId>42755</RuleId>
<Time>1570700044</Time>
</Rules>
<RequestId>D7861F61-5B61-46CE-A47C-6B19160D5EB0</RequestId>
</DescribeProtectionModuleRulesResponse>
Exemplo de resposta de sucesso (json):
HTTP/1.1 200 OK
Content-Type:application/json
{
"TotalCount": 1,
"Rules": [{
"Version": 2,
"Status": 1,
"Content": {
"count": 60,
"interval": 60,
"ttl": 300
},
"RuleId": 42755,
"Time": 1570700044
}],
"RequestId": "D7861F61-5B61-46CE-A47C-6B19160D5EB0"
}
Códigos de erro
Para obter uma lista de códigos de erro, visite o API Error Center.