
${http.request.uri.path}、${http.request.method}などがあり、リクエスト内の特定の情報を抽出するために使用されます。[ ]で囲む必要があります。例えば['POST']または[100, 200]です。名前 | キーワード | サポートされるデータ型 | 例 | サポートされる機能モジュール |
値が集合内にある | in | String、Number 説明: Numberは整数型と浮動小数点型をサポートします。 コレクションは定数と変数をサポートします。 | ${http.request.file_extension} in ["jpg", "png"] | サイトアクセラレーション、エッジ関数、Webプロテクション |
正規表現マッチング | matches | Stringのみをサポートします。 説明: 常値文字列で定義された正規表現のみをサポートします。 | ${http.request.uri.path} matches "^/admin/" | サイトアクセラレーション、エッジ関数、Webプロテクション |
存在 | exists | データ型は制限されません。 説明: この演算子はフィールド(キー / 属性)が存在するかどうかを確認し、フィールド値は確認しません。 | ${http.request.uri.args["status"]} exists | サイトアクセラレーション、エッジ関数、Webプロテクション |
ワイルドカードマッチング | like | Stringのみをサポートします。 | ${http.request.uri.path} like ["/staging/*", "/prod/*"] | Web防护 |
包含マッチング | contain | Stringのみをサポートします。 | ${http.request.uri.path} contain ["api", "login"] | Web防护 |
より大きい | > | Numberのみをサポートします。 | length(${http.request.headers["user-agent"]}) > 30 | Web防护 |
より小さい | < | Numberのみをサポートします。 | length(${http.request.headers["user-agent"]}) < 10 | Web防护 |
A and B)。 A or B)。 not A)。//「A条件を満たし、かつ(B条件を満たすか、またはC条件を満たさない)」ことを表します。${A} and (${B} or not ${C})
${}で囲む必要があります。内部ではドット形式およびインデックス形式のアクセスをサポートします。例えば${http.request.headers['User-Agent']}、${security.ip_group['123'@'zone-xyz']}などです。 in ['value1','value2']です。数値は直接記述できます。例えば> 100です。空値は特殊キーワードnullを使用します(特殊変数を参照)。 in ['POST']またはin [200]です。 @、.など)が含まれている場合、追加のエスケープは不要です。 and、or、not、in、like、contain)。フィールド名は大文字と小文字を区別します(例:User-Agentとuser-agentは異なります)。lower(${http.request.uri.args['Test']}) in ['a', 'b']。/api/v3/testまたは/api/v3/submitであり、かつHTTPリクエストメソッドがPOSTの場合にトリガーされます。${http.request.uri.path} in ['/api/v3/test','/api/v3/submit'] and ${http.request.method} in ['POST']
1.1.1.1であるか、サブネット10.10.10.0/24に属するか、またはその自律システム番号(ASN)が132203であるリクエストをマッチングします。${http.request.ip} in ['1.1.1.1','10.10.10.0/24'] or ${http.request.ip.asn} in ['132203']
one.example.comであるリクエストをマッチングします。${http.request.headers['referer']} in ['one.example.com']
length(${http.request.body}) < 30
/a/wildcard/path/または/another/wildcard/path/で始まるリクエストパスをマッチングします。${http.request.uri.path} like ['/a/wildcard/path/*','/another/wildcard/path/*']
${http.request.uri.path} contain ['api','test']
not ${http.request.headers['Accepts']} exists and ${http.request.headers['CustomHeader']} in ['']
Esta página foi útil?
Você também pode entrar em contato com a Equipe de vendas ou Enviar um tíquete em caso de ajuda.
comentários