Halaman ini berlaku untuk Apigee dan Apigee hybrid.
Lihat dokumentasi Apigee Edge.
Apa
Mengekstrak informasi dari pesan (misalnya, Jalur URI, Parameter Kueri, Header, Parameter Form, Variabel, Payload XML, atau Payload JSON) dan mengevaluasi konten tersebut berdasarkan ekspresi reguler yang telah ditentukan. Jika ekspresi reguler yang ditentukan bernilai benar, pesan akan dianggap sebagai ancaman, dan kebijakan akan menampilkan error.
Kebijakan ini adalah Kebijakan yang dapat diperluas dan penggunaan kebijakan ini mungkin memiliki implikasi biaya atau penggunaan, bergantung pada lisensi Apigee Anda. Untuk informasi tentang jenis kebijakan dan implikasi penggunaan, lihat Jenis kebijakan.
Video
Tonton video berikut untuk mempelajari lebih lanjut kebijakan Perlindungan Ekspresi Reguler.
Video | Deskripsi |
---|---|
Melindungi dari serangan injeksi SQL | Lindungi dari serangan injeksi SQL menggunakan kebijakan Perlindungan Ekspresi Reguler di UI Apigee. |
Sampel
GitHub
Contoh perlindungan ekspresi reguler di GitHub mengilustrasikan cara menjebak potensi serangan injection SQL yang dikeluarkan melalui parameter kueri yang mungkin berisi kode berbahaya dalam tag <script>
.
Contoh ini juga mengilustrasikan praktik terbaik untuk menetapkan status error 400 umum
guna mencegah peretas mendapatkan informasi yang berguna dari respons.
Perlindungan serangan menyertakan JavaScript
<RegularExpressionProtection name="JsonPathRegExProtection"> <Source>request</Source> <JSONPayload escapeSlashCharacter="true"> <JSONPath> <Expression>$</Expression> <Pattern><![CDATA[ <\s*script\b[^>]*>[^<]+<\s*\/\s*script\s*> ]]></Pattern> </JSONPath> </JSONPayload> </RegularExpressionProtection>
Contoh di atas mengilustrasikan cara menggunakan kebijakan RegularExpressionProtection untuk mengevaluasi
payload JSON untuk serangan yang menyertakan JavaScript. Secara khusus, konten yang diekstrak oleh
<JSONPath>
/<Expression>
dievaluasi berdasarkan
ekspresi reguler di <JSONPath>
/<Pattern>
.
Jika ekspresi reguler di
<JSONPath>
/<Pattern>
Anda menyertakan karakter yang dicadangkan XML
(", &, ', <, atau >), Anda harus menggabungkannya dalam bagian CDATA (data karakter), seperti yang ditunjukkan
dalam contoh di atas, atau mengenkode karakter yang dicadangkan dengan XML: misalnya, dengan mengganti
<
dengan <
dan >
dengan >
.
Selain itu, jika ekspresi reguler Anda menyertakan garis miring (/), Anda harus meng-escapenya
dengan menetapkan atribut <JSONPayload>
escapeSlashCharacter
ke true
.
Pencocokan tidak peka huruf besar/kecil
Kasus penggunaan yang umum adalah melakukan pencocokan yang tidak peka huruf besar/kecil. Berikut adalah contoh cara melakukannya dalam ekspresi reguler menggunakan konstruksi (?i)
. Dalam contoh
ini, misalnya, DELETE
, delete
, dan Delete
akan
bernilai benar.
<Pattern>[\s]*(?i)((delete)|(exec)|(drop\s*table)|(insert)|(shutdown)|(update)|(\bor\b))</Pattern>
Pemeriksaan parameter formulir
<RegularExpressionProtection name="REP-Formparam"> <Source>request</Source> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <FormParam name="firstname"> <Pattern><![CDATA[[-+=$%&]]]></Pattern> </FormParam> <FormParam name="lastname"> <Pattern><![CDATA[[-+=$%&]]]></Pattern> </FormParam> </RegularExpressionProtection>
Konfigurasi kebijakan RegularExpressionProtection ini akan mengevaluasi parameter formulir untuk mengetahui kemunculan karakter khusus, dalam [-+=$%&]
yang ditetapkan.
Kebijakan ini hanya akan berlaku jika header jenis konten dalam permintaan
adalah application/x-www-form-urlencoded
. Konfigurasi kebijakan menggunakan
bagian CDATA (data karakter) untuk menggabungkan ekspresi reguler, karena adanya
karakter &, yang bersifat khusus dalam XML.
Tentang kebijakan Perlindungan Ekspresi Reguler
Apigee memungkinkan Anda mengonfigurasi ekspresi reguler yang dapat dievaluasi terhadap traffic API saat runtime untuk mengidentifikasi ancaman tingkat konten umum yang mengikuti pola tertentu.
Ekspresi reguler, atau regex, adalah kumpulan string yang menentukan pola dalam string. Ekspresi reguler memungkinkan konten dievaluasi secara terprogram untuk pola. Ekspresi reguler dapat digunakan, misalnya, untuk mengevaluasi alamat email guna memastikan alamat tersebut terstruktur dengan benar. Untuk informasi selengkapnya, lihat Ekspresi Reguler di Tutorial Java.
Penggunaan RegularExpressionProtection yang paling umum adalah evaluasi payload JSON dan XML untuk konten berbahaya.
Tidak ada ekspresi reguler yang dapat menghilangkan semua serangan berbasis konten, dan beberapa mekanisme harus digabungkan untuk mengaktifkan pertahanan menyeluruh. Bagian ini menjelaskan beberapa pola yang direkomendasikan untuk mengecualikan konten.
Contoh pola pengecualian
Ekspresi reguler harus dienkode XML dalam file konfigurasi XML kebijakan. Lihat juga Antipola: Menggunakan kuantifiser rakus dalam kebijakan RegularExpressionProtection.
Nama | Regular Expression |
---|---|
Injeksi SQL |
[\s]*((delete)|(exec)|(drop\s*table)|(insert)|(shutdown)|(update)|(\bor\b)) |
Injeksi Server Side Include |
<!--#(include|exec|echo|config|printenv)\s+.* XML dienkode: <!--#(include|exec|echo|config|printenv)\s+.* |
Injeksi Sintaksis Singkat XPath |
(/(@?[\w_?\w:\*]+(\[[^]]+\])*)?)+ |
Injeksi Sintaksis XPath yang Diperluas |
/?(ancestor(-or-self)?|descendant(-or-self)?|following(-sibling)) |
Injeksi JavaScript |
<\s*script\b[^>]*>[^<]+<\s*/\s*script\s*> XML dienkode: <\s*script\b[^>]*>[^<]+<\s*/\s*script\s*> |
Menetapkan header Content-Type dalam permintaan dengan payload XML atau JSON
Payload kebijakan Perlindungan Ekspresi Reguler dapat mencakup elemen berikut:
-
Elemen
<XMLPayload>
: Menentukan bahwa informasi perlu diekstrak dari payload XML dan dievaluasi berdasarkan ekspresi reguler yang diberikan.Jika Anda menggunakan
<XMLPayload>
dalam kebijakan, headerContent-Type
permintaan harus berupa jenis konten XML sepertiapplication/xml
atautext/xml
. -
Elemen
<JSONPayload>
: Menentukan bahwa informasi perlu diekstrak dari payload JSON dan dievaluasi berdasarkan ekspresi reguler yang diberikan.Jika Anda menggunakan
<JSONPayload>
dalam kebijakan, headerContent-Type
permintaan harus berupa jenis konten JSON sepertiapplication/json
.
Biasanya, Anda mendesain API untuk menerima XML atau JSON. Namun, mungkin ada skenario
saat API menerima keduanya. Kemudian, Anda dapat menentukan kebijakan Perlindungan Ekspresi Reguler
yang menggunakan elemen <XMLPayload>
dan <JSONPayload>
.
Hanya satu elemen yang akan berlaku untuk permintaan tertentu berdasarkan nilai header Content-Type
.
Referensi elemen
Referensi elemen menjelaskan elemen dan atribut kebijakan RegularExpressionProtection.
<RegularExpressionProtection async="false" continueOnError="false" enabled="true" name="Regular-Expression-Protection-1"> <DisplayName>Regular Expression Protection 1</DisplayName> <Source>response</Source> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <URIPath> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </URIPath> <QueryParam name="a-query-param"> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </QueryParam> <Header name="a-header"> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </Header> <FormParam name="a-form-param"> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </FormParam> <Variable name="request.content"> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </Variable> <XMLPayload> <Namespaces> <Namespace prefix="apigee">http://www.apigee.com</Namespace> </Namespaces> <XPath> <Expression>/apigee:Greeting/apigee:User</Expression> <Type>string</Type> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </XPath> </XMLPayload> <JSONPayload> <JSONPath> <Expression>$.store.book[*].author</Expression> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </JSONPath> </JSONPayload> </RegularExpressionProtection>
Atribut <RegularExpressionProtection>
<RegularExpressionProtection async="false" continueOnError="false" enabled="true" name="Regular-Expression-Protection-1">
Tabel berikut menjelaskan atribut yang umum untuk semua elemen induk kebijakan:
Atribut | Deskripsi | Default | Kehadiran |
---|---|---|---|
name |
Nama internal kebijakan. Nilai atribut Secara opsional, gunakan elemen |
T/A | Wajib |
continueOnError |
Tetapkan ke Tetapkan ke |
false | Opsional |
enabled |
Tetapkan ke Tetapkan ke |
benar | Opsional |
async |
Atribut ini tidak digunakan lagi. |
false | Tidak digunakan lagi |
Elemen <DisplayName>
Gunakan selain atribut name
untuk melabeli kebijakan di editor proxy UI pengelolaan dengan nama bahasa alami yang berbeda.
<DisplayName>Policy Display Name</DisplayName>
Default |
T/A Jika Anda menghapus elemen ini, nilai atribut |
---|---|
Kehadiran | Opsional |
Jenis | String |
Elemen <Source>
Menunjukkan pesan yang informasinya perlu diekstrak.
Jika elemen <Source>
dihilangkan, nilai defaultnya adalah
message
. Misalnya, <Source>message</Source>
. Jika disetel ke
message
, kebijakan akan menggunakan pesan permintaan sebagai sumber saat dilampirkan ke alur
permintaan. Demikian pula, kebijakan menggunakan pesan respons saat dilampirkan ke alur respons.
Jika pesan sumber tidak dapat di-resolve atau jika di-resolve ke jenis non-pesan, kebijakan akan menampilkan error.
<Source>response</Source>
Default: | T/A |
Kehadiran: | Opsional |
Jenis: | String |
Elemen <IgnoreUnresolvedVariables>
Menentukan apakah kebijakan menampilkan error saat menemukan variabel yang tidak dapat di-resolve.
Jika ditetapkan ke false
(default), kebijakan akan menampilkan error saat variabel yang tidak dapat di-resolve ditemukan. Jika ditetapkan ke true
, variabel yang tidak terselesaikan akan diperlakukan sebagai string kosong (Null).
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
Default: | false |
Kehadiran: | Opsional |
Jenis: | Boolean |
Elemen <URIPath>
Menentukan bahwa informasi perlu diekstrak dari jalur URI permintaan dan dievaluasi
terhadap ekspresi reguler yang disediakan. Anda harus menyediakan setidaknya satu elemen <Pattern>
yang menentukan pola ekspresi reguler yang akan dicocokkan.
<URIPath> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </URIPath>
Default: | T/A |
Kehadiran: | Opsional |
Jenis: | T/A |
Elemen <QueryParam>
Menentukan bahwa informasi perlu diekstrak dari parameter kueri permintaan dan
dievaluasi berdasarkan ekspresi reguler yang diberikan. Anda harus menyediakan setidaknya satu elemen <Pattern>
yang menentukan pola ekspresi reguler yang akan dicocokkan.
<QueryParam name="a-query-param"> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </QueryParam>
Default: | T/A |
Kehadiran: | Opsional |
Jenis: | T/A |
Atribut
Atribut | Deskripsi | Default | Kehadiran |
---|---|---|---|
nama | Nama parameter kueri permintaan tempat informasi perlu diekstrak untuk evaluasi terhadap ekspresi reguler yang diberikan. | T/A | Wajib |
Elemen <Header>
Menentukan bahwa informasi perlu diekstrak dari header permintaan dan respons serta
dievaluasi berdasarkan ekspresi reguler yang diberikan. Anda harus menyediakan setidaknya satu elemen <Pattern>
yang menentukan pola ekspresi reguler yang akan dicocokkan.
<Header name="a-header"> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </Header>
Default: | T/A |
Kehadiran: | Opsional |
Jenis: | T/A |
Atribut
Atribut | Deskripsi | Default | Kehadiran |
---|---|---|---|
nama |
Nama header permintaan dan respons tempat informasi perlu diekstrak untuk dievaluasi berdasarkan ekspresi reguler yang diberikan. |
T/A | Wajib |
Elemen <FormParam>
Menentukan bahwa informasi perlu diekstrak dari parameter formulir permintaan dan dievaluasi
terhadap ekspresi reguler yang diberikan. Anda harus menyediakan setidaknya satu elemen <Pattern>
yang menentukan pola ekspresi reguler yang akan dicocokkan.
<FormParam name="a-form-param"> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </FormParam>
Default: | T/A |
Kehadiran: | Opsional |
Jenis: | T/A |
Atribut
Atribut | Deskripsi | Default | Kehadiran |
---|---|---|---|
nama |
Nama parameter formulir permintaan tempat informasi perlu diekstrak untuk evaluasi terhadap ekspresi reguler yang diberikan. |
T/A | Wajib |
Elemen <Variable>
Menentukan bahwa informasi perlu diekstrak dari variabel yang diberikan dan dievaluasi terhadap ekspresi reguler yang diberikan.
<Variable name="request.content"> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </Variable>
Default: | T/A |
Kehadiran: | Opsional |
Jenis: | T/A |
Atribut
Atribut | Deskripsi | Default | Kehadiran |
---|---|---|---|
nama |
Nama variabel tempat informasi perlu diekstrak untuk dievaluasi terhadap ekspresi reguler yang diberikan. |
T/A | Wajib |
Elemen <XMLPayload>
Menentukan bahwa informasi perlu diekstrak dari payload XML dan dievaluasi berdasarkan ekspresi reguler yang diberikan.
<XMLPayload> <Namespaces> <Namespace prefix="apigee">http://www.apigee.com</Namespace> </Namespaces> <XPath> <Expression>/apigee:Greeting/apigee:User</Expression> <Type>string</Type> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </XPath> </XMLPayload>
Default: | T/A |
Kehadiran: | Opsional |
Jenis: | T/A |
Elemen <XMLPayload>/<Namespaces>
Menentukan namespace yang akan digunakan dalam evaluasi XPath.
<XMLPayload> <Namespaces> <Namespace prefix="apigee">http://www.apigee.com</Namespace> </Namespaces> <XPath> <Expression>/apigee:Greeting/apigee:User</Expression> <Type>string</Type> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </XPath> </XMLPayload>
Default: | T/A |
Kehadiran: | Opsional |
Jenis: | String |
Elemen <XMLPayload>/<Namespaces>/<Namespace>
Menentukan setiap namespace yang akan digunakan dalam evaluasi XPath.<Namespaces> <Namespace prefix="apigee">http://www.apigee.com</Namespace> </Namespaces>
Default: | T/A |
Kehadiran: | Opsional |
Jenis: | String |
Atribut
Atribut | Deskripsi | Default | Kehadiran |
---|---|---|---|
awalan |
Memberikan awalan untuk membantu memenuhi syarat namespace tertentu. |
T/A | Wajib |
Elemen <XMLPayload>/<XPath>
Menentukan XPath yang akan dievaluasi.<XPath> <Expression>/apigee:Greeting/apigee:User</Expression> <Type>string</Type> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </XPath>
Default: | T/A |
Kehadiran: | Opsional |
Jenis: | T/A |
Elemen <XMLPayload>/<XPath>/<Expression>
Menentukan ekspresi XPath yang ditentukan untuk variabel. Hanya ekspresi XPath 1.0 yang didukung. Misalnya,<Expression>/company/employee[@age>=$request.header.age]</Expression>
mengekstrak detail untuk karyawan yang usianya lebih besar dari atau sama dengan nilai yang ditentukan dalam
request.header.age
.<XPath> <Expression>/apigee:Greeting/apigee:User</Expression> <Type>string</Type> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </XPath>
Default: | T/A |
Kehadiran: | Opsional |
Jenis: | String |
Elemen <XMLPayload>/<XPath>/<Type>
Menentukan jenis data output yang diinginkan.
Biasanya, Anda akan menggunakan "string" atau "nodeset". Gunakan "string" jika Anda yakin bahwa kueri xpath Anda akan menghasilkan maksimal satu nilai, atau jika Anda ingin memeriksa maksimal satu nilai. Jika kueri xpath Anda dapat menampilkan beberapa nilai, tentukan "nodeset" untuk memeriksa semua nilai.
Misalnya, pertimbangkan ekspresi XPath //*/@*
. Atribut ini cocok dengan semua
atribut di semua elemen. Jika Anda menentukan "string" sebagai Type
, Apigee akan
mengubah hasil kueri ini menjadi satu string; string ini akan menjadi nilai salah satu
atribut pada salah satu elemen dalam dokumen XML, tetapi atribut dan elemen mana
yang tidak ditentukan. Apigee kemudian akan melakukan pencocokan pola terhadap nilai satu atribut tersebut. Hal ini mungkin bukan yang Anda inginkan.
Sebaliknya, jika Anda menentukan "nodeset" sebagai Type
untuk ekspresi XPath tersebut, Apigee
akan melakukan pencocokan pola terhadap setiap nilai atribut pada setiap elemen dalam dokumen
XML.
<XPath> <Expression>/apigee:Greeting/apigee:User</Expression> <Type>string</Type> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </XPath>
Default: | string |
Kehadiran: | Opsional |
Jenis: | String |
Nilai yang valid: |
Salah satu kata kunci berikut: |
Elemen <XMLPayload>/<XPath>/<Pattern>
Menentukan pola ekspresi reguler. Jika ekspresi reguler dalam
elemen<Pattern>
Anda menyertakan karakter yang dicadangkan XML (", &, ', <, atau
.), Anda harus mengenkodenya dalam XML sebelum menyertakannya.
<XPath> <Expression>/apigee:Greeting/apigee:User</Expression> <Type>string</Type> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </XPath>
Default: | T/A |
Kehadiran: | Wajib |
Jenis: | String |
Elemen <JSONPayload>
Menentukan bahwa informasi perlu diekstrak dari payload JSON dan dievaluasi berdasarkan ekspresi reguler yang disediakan.
<JSONPayload> <JSONPath> <Expression>$.store.book[*].author</Expression> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </JSONPath> </JSONPayload>
Default: | T/A |
Kehadiran: | Opsional |
Jenis: | T/A |
Atribut
Atribut | Deskripsi | Default | Kehadiran |
---|---|---|---|
escapeSlashCharacter |
Tetapkan ke |
benar | Opsional |
Elemen <JSONPayload>/<JSONPath>/<Expression>
Menentukan ekspresi JSONPath yang ditentukan untuk variabel.
<JSONPath> <Expression>$.store.book[*].author</Expression> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </JSONPath>
Default: | T/A |
Kehadiran: | Opsional |
Jenis: | String |
Elemen <JSONPayload>/<JSONPath>/<Pattern>
Menentukan pola ekspresi reguler. Jika ekspresi reguler dalam elemen <Pattern>
Anda menyertakan karakter yang dicadangkan XML (", &, ', <, atau .), Anda harus mengenkodenya dalam XML sebelum menyertakannya.
<JSONPath> <Expression>$.store.book[*].author</Expression> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </JSONPath>
Default: | T/A |
Kehadiran: | Wajib |
Jenis: | String |
Referensi error
Bagian ini menjelaskan kode dan pesan error yang ditampilkan serta variabel error
yang ditetapkan oleh Apigee saat kebijakan ini memicu error. Informasi ini penting untuk diketahui jika
Anda mengembangkan aturan error untuk menangani error. Jika Anda ingin menangkap error dan menampilkan error kustom
Anda sendiri, tetapkan atribut continueOnError="true"
pada elemen root kebijakan.
Untuk mempelajari lebih lanjut, lihat
Yang perlu Anda ketahui tentang error kebijakan dan Menangani
error.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode Error | Pesan |
---|---|
ExecutionFailed |
Failed to execute the RegularExpressionProtection StepDefinition {0}. Reason: {1} |
InstantiationFailed |
Failed to instantiate the RegularExpressionProtection StepDefinition {0} |
NonMessageVariable |
Variable {0} does not resolve to a Message |
SourceMessageNotAvailable |
{0} message is not available for RegularExpressionProtection StepDefinition {1} |
ThreatDetected |
Regular Expression Threat Detected in {0}: regex: {1} input: {2} |
VariableResolutionFailed |
Failed to resolve variable {0} |
Error saat deployment
Kode Error | Pesan | Perbaiki |
---|---|---|
CannotBeConvertedToNodeset |
RegularExpressionProtection {0}: Result of xpath {1} cannot be converted to nodeset.
Context {2} |
build |
DuplicatePrefix |
RegularExpressionProtection {0}: Duplicate prefix {1} |
build |
EmptyJSONPathExpression |
RegularExpressionProtection {0}: Empty JSONPath expression |
build |
EmptyXPathExpression |
RegularExpressionProtection {0}: Empty XPath expression |
build |
InvalidRegularExpression |
RegularExpressionProtection {0}: Invalid Regular Expression {1}, Context {2} |
build |
JSONPathCompilationFailed |
RegularExpressionProtection {0}: Failed to compile jsonpath {1}. Context {2} |
build |
NONEmptyPrefixMappedToEmptyURI |
RegularExpressionProtection {0}: Non-empty prefix {1} cannot be mapped to empty
uri |
build |
NoPatternsToEnforce |
RegularExpressionProtection {0}: No patterns to enforce in {1} |
build |
NothingToEnforce |
RegularExpressionProtection {0}: at least one of URIPath, QueryParam, Header,
FormParam, XMLPayload, JSONPayload is mandatory |
build |
XPathCompilationFailed |
RegularExpressionProtection {0}: Failed to compile xpath {1}. Context {2} |
build |
Variabel error
Variabel ini ditetapkan saat kebijakan ini memicu error. Untuk mengetahui informasi selengkapnya, lihat Yang perlu Anda ketahui tentang error kebijakan.
Variabel | Dari mana | Contoh |
---|---|---|
fault.name="fault_name" |
fault_name adalah nama error, seperti yang tercantum dalam tabel di atas. | fault.name Matches "ThreatDetected" |
regularexpressionprotection.policy_name.failed |
policy_name adalah nama kebijakan yang ditentukan pengguna yang menampilkan error. | regularexpressionprotection.Regular-Expressions-Protection-1.failed = true |
Skema
Topik terkait
Kebijakan Perlindungan Ancaman JSON
Kebijakan Perlindungan Ancaman XML