Bạn đang xem tài liệu về Apigee Edge.
Chuyển đến
Tài liệu về Apigee X. thông tin
Nội dung
Trích xuất thông tin từ một thông báo (ví dụ: Đường dẫn URI, Tham số truy vấn, Tiêu đề, Tham số biểu mẫu, Biến, Tải trọng XML hoặc Tải trọng JSON) và đánh giá nội dung đó dựa trên nội dung thông thường được xác định trước biểu thức. Nếu bất kỳ biểu thức chính quy nào được chỉ định có kết quả là true thì thông báo sẽ được coi là đe doạ và bị từ chối.
Video
Hãy xem các video sau để tìm hiểu thêm về chính sách Bảo vệ biểu thức chính quy.
Video | Mô tả |
---|---|
Bảo vệ chống lại các cuộc tấn công chèn SQL (cạnh mới) | Chống lại các cuộc tấn công chèn SQL bằng chính sách Bảo vệ biểu thức chính quy trong giao diện người dùng trải nghiệm New Edge. |
Bảo vệ chống lại các cuộc tấn công chèn SQL (cạnh cổ điển) | Chống lại các cuộc tấn công chèn SQL bằng chính sách Bảo vệ biểu thức chính quy trong giao diện người dùng Classic Edge. |
Mẫu
GitHub
Bảo vệ biểu thức chính quy mẫu trên GitHub minh hoạ cách bẫy các cuộc tấn công chèn SQL có thể được phát hành thông qua tham số truy vấn. Ngoài ra, mẫu này minh hoạ phương pháp hay để thiết lập giá trị chung 400 trạng thái lỗi để ngăn chặn tin tặc thu được bất kỳ thông tin hữu ích nào từ phản hồi.
JavaScript có tính năng bảo vệ chống tấn công
<RegularExpressionProtection name="JsonPathRegExProtection"> <DisplayName>Regular Expression Protection 1</DisplayName> <Source>request</Source> <JSONPayload escapeSlashCharacter="true"> <JSONPath> <Expression>$</Expression> <Pattern><\s*script\b[^>]*>[^<]+<\s*\/\s*script\s*> </Pattern> <Pattern>n\s*\\\\\s*slash</Pattern> <Pattern>n\s*\/\s*slash</Pattern> <Pattern>n\s*\\"\s*quotes</Pattern> <Pattern>n\s*\\b\s*space</Pattern> <Pattern>n\s*\\f\s*forwardfeed</Pattern> <Pattern>n\s*\\n\s*newline</Pattern> <Pattern>n\s*\\r\s*carria</Pattern> <Pattern>n\s*\\t\s*tab</Pattern> <Pattern>n\s*\\uFFFF\s*hex</Pattern> </JSONPath> </JSONPayload> </RegularExpressionProtection>
Mẫu ở trên minh hoạ cách sử dụng chính sách RegularExpressionProtection để đánh giá
Tải trọng JSON cho JavaScript bao gồm cả các cuộc tấn công. Cụ thể, nội dung được trích xuất bởi
<JSONPath>
/<Expression>
được đánh giá theo
biểu thức chính quy trong <JSONPath>
/<Pattern>
.
Nếu biểu thức chính quy trong
<JSONPath>
/<Pattern>
bao gồm các ký tự dành riêng cho XML
(", &, ', < hoặc .), bạn phải mã hoá XML trước khi đưa mã đó vào XML của chính sách
tệp cấu hình. Ví dụ: trong mẫu ở trên, biểu thức chính quy
<\s*script\b[^>]*>[^<]+<\s*\/\s*script\s*>
đã được
Được mã hoá XML thành
<\s*script\b[^>]*>[^<]+<\s*\/\s*script\s*>
Ngoài ra, nếu biểu thức chính quy có dấu gạch chéo lên (/), bạn phải thoát
bằng cách đặt <JSONPayload>
escapeSlashCharacter
cho true
.
Kiểu khớp không phân biệt chữ hoa chữ thường
Đây là một trường hợp sử dụng phổ biến để so khớp không phân biệt chữ hoa chữ thường. Dưới đây là ví dụ về cách bạn có thể
thực hiện điều đó theo biểu thức chính quy bằng cách sử dụng cấu trúc (?i)
. Trong phần này
Ví dụ: DELETE
, delete
và Delete
sẽ
đánh giá thành đúng.
<Pattern>[\s]*(?i)((delete)|(exec)|(drop\s*table)|(insert)|(shutdown)|(update)|(\bor\b))</Pattern>
Giới thiệu về chính sách Bảo vệ biểu thức chính quy
Apigee Edge cho phép bạn định cấu hình các biểu thức chính quy có thể được đánh giá dựa trên lưu lượng truy cập API trong thời gian chạy để xác định các mối đe doạ phổ biến ở cấp nội dung một số mẫu hình nhất định.
Biểu thức chính quy (viết tắt là regex) là một tập hợp các chuỗi chỉ định mẫu trong chuỗi. Biểu thức chính quy cho phép nội dung được lập trình đánh giá mẫu. Có thể sử dụng biểu thức chính quy để đánh giá địa chỉ email để đảm bảo rằng mã được cấu trúc chính xác. Để biết thêm thông tin, hãy xem phần Thông thường Biểu thức trong Hướng dẫn Java.
Cách sử dụng phổ biến nhất của RegularExpressionProtection là đánh giá JSON và XML cho nội dung độc hại.
Không có biểu thức chính quy nào có thể loại bỏ mọi cuộc tấn công dựa trên nội dung và nhiều cơ chế nên được kết hợp để bảo vệ theo chiều sâu. Phần này mô tả một số mẫu được đề xuất cho loại trừ nội dung.
Ví dụ về tiêu chí loại trừ mẫu
Biểu thức chính quy phải được mã hoá XML trong tệp cấu hình XML của chính sách.
Tên | Cụm từ thông dụng |
---|---|
Chèn SQL |
[\s]*((delete)|(exec)|(drop\s*table)|(insert)|(shutdown)|(update)|(\bor\b)) |
Chèn bao gồm phía máy chủ |
<!--#(include|exec|echo|config|printenv)\s+.* XML được mã hoá: <!--#(include|exec|echo|config|printenv)\s+.* |
Chèn cú pháp viết tắt của q |
(/(@?[\w_?\w:\*]+(\[[^]]+\])*)?)+ |
Chèn cú pháp mở rộng q |
/?(ancestor(-or-self)?|descendant(-or-self)?|following(-sibling)) |
Chèn JavaScript |
<\s*script\b[^>]*>[^<]+<\s*/\s*script\s*> XML được mã hoá: <\s*script\b[^>]*>[^<]+<\s*/\s*script\s*> |
Chèn ngoại lệ Java |
.*?Exception in thread.* |
Đặt tiêu đề Loại nội dung trong yêu cầu có tải trọng XML hoặc JSON
Tải trọng của Chính sách bảo vệ biểu thức chính quy có thể bao gồm thông tin sau phần tử:
-
Phần tử
<XMLPayload>
: Xác định thông tin cần được trích xuất tải trọng XML và được đánh giá theo biểu thức chính quy đã cung cấp.Nếu bạn sử dụng
<XMLPayload>
trong chính sách này, thì giá trị Tiêu đềContent-Type
của yêu cầu phải là loại nội dung XML, chẳng hạn nhưapplication/xml
hoặctext/xml
. -
Phần tử
<JSONPayload>
: Xác định thông tin cần được trích xuất từ tải trọng JSON và được đánh giá theo biểu thức chính quy đã cung cấp.Nếu bạn sử dụng
<JSONPayload>
trong chính sách này, thì giá trị Tiêu đềContent-Type
của yêu cầu phải là loại nội dung JSON, chẳng hạn nhưapplication/json
.
Thông thường, bạn thiết kế một API để chấp nhận XML hoặc JSON. Tuy nhiên, vẫn có thể xảy ra trường hợp
trong đó API chấp nhận cả hai. Sau đó, bạn có thể xác định chính sách Bảo vệ biểu thức chính quy
sử dụng cả phần tử <XMLPayload>
và <JSONPayload>
.
Chỉ một phần tử sẽ áp dụng cho một yêu cầu cụ thể dựa trên giá trị của
Tiêu đề Content-Type
.
Tham chiếu phần tử
Tham chiếu phần tử mô tả các phần tử và thuộc tính của 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>
<RegularExpressionProtection> thuộc tính
<RegularExpressionProtection async="false" continueOnError="false" enabled="true" name="Regular-Expression-Protection-1">
Bảng sau đây mô tả những thuộc tính chung cho tất cả phần tử mẹ của chính sách:
Thuộc tính | Mô tả | Mặc định | Sự hiện diện |
---|---|---|---|
name |
Tên nội bộ của chính sách. Giá trị của thuộc tính (Không bắt buộc) Bạn có thể dùng phần tử |
Không áp dụng | Bắt buộc |
continueOnError |
Đặt thành Đặt thành |
false | Không bắt buộc |
enabled |
Hãy đặt thành Đặt thành |
đúng | Không bắt buộc |
async |
Thuộc tính này không được dùng nữa. |
false | Không được dùng nữa |
<DisplayName> phần tử
Hãy sử dụng cùng với thuộc tính name
để gắn nhãn chính sách trong phần
trình chỉnh sửa proxy giao diện người dùng quản lý có tên ngôn ngữ tự nhiên khác.
<DisplayName>Policy Display Name</DisplayName>
Mặc định |
Không áp dụng Nếu bạn bỏ qua phần tử này, giá trị của thuộc tính |
---|---|
Sự hiện diện | Không bắt buộc |
Loại | Chuỗi |
<Source> phần tử
Cho biết thông báo mà thông tin cần được trích xuất.
Nếu bạn bỏ qua phần tử <Source>
, giá trị mặc định là
message
Ví dụ: <Source>message</Source>
. Khi đặt thành
message
, chính sách này sử dụng thông báo yêu cầu làm nguồn khi đính kèm vào một yêu cầu
luồng. Tương tự, chính sách này cũng sử dụng thông báo phản hồi khi được đính kèm vào quy trình phản hồi.
Nếu thông báo nguồn không thể được phân giải hoặc nếu thông báo đó chuyển thành một loại không phải là thông báo, thì chính sách sẽ trả về một lỗi.
<Source>response</Source>
Mặc định: | Không áp dụng |
Sự hiện diện: | Không bắt buộc |
Loại: | Chuỗi |
<IgnoreUnresolvedVariables> phần tử
Xác định xem chính sách có trả về lỗi hay không khi gặp một biến không thể giải quyết được.
Nếu bạn đặt thành false
(giá trị mặc định), chính sách sẽ trả về lỗi khi không thể giải quyết được
biến sẽ gặp phải. Nếu bạn đặt thành true
, biến chưa được giải quyết sẽ được coi là trống
chuỗi (Null).
<IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables>
Mặc định: | false |
Sự hiện diện: | Không bắt buộc |
Loại: | Boolean |
<URIPath> phần tử
Chỉ định rằng thông tin cần được trích xuất từ đường dẫn URI yêu cầu và được đánh giá
dựa vào biểu thức chính quy đã cung cấp. Bạn phải cung cấp ít nhất một
Phần tử <Pattern>
chỉ định mẫu biểu thức chính quy để so khớp.
<URIPath> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </URIPath>
Mặc định: | Không áp dụng |
Sự hiện diện: | Không bắt buộc |
Loại: | Không áp dụng |
<QueryParam> phần tử
Chỉ định rằng thông tin cần được trích xuất từ tham số truy vấn yêu cầu và
được đánh giá theo biểu thức chính quy đã cung cấp. Bạn phải cung cấp ít nhất một
Phần tử <Pattern>
chỉ định mẫu biểu thức chính quy để so khớp.
<QueryParam name="a-query-param"> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </QueryParam>
Mặc định: | Không áp dụng |
Sự hiện diện: | Không bắt buộc |
Loại: | Không áp dụng |
Thuộc tính
Thuộc tính | Mô tả | Mặc định | Sự hiện diện |
---|---|---|---|
tên | Tên của tham số truy vấn yêu cầu mà thông tin cần được trích xuất dựa trên các biểu thức chính quy được cung cấp. | Không áp dụng | Bắt buộc |
<Header> phần tử
Chỉ định thông tin cần được trích xuất từ các tiêu đề của yêu cầu, phản hồi và
được đánh giá theo biểu thức chính quy đã cung cấp. Bạn phải cung cấp ít nhất một
Phần tử <Pattern>
chỉ định mẫu biểu thức chính quy để so khớp.
<Header name="a-header"> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </Header>
Mặc định: | Không áp dụng |
Sự hiện diện: | Không bắt buộc |
Loại: | Không áp dụng |
Thuộc tính
Thuộc tính | Mô tả | Mặc định | Sự hiện diện |
---|---|---|---|
tên |
Tên của yêu cầu và tiêu đề phản hồi mà thông tin cần được trích xuất để đánh giá theo biểu thức chính quy được cung cấp. |
Không áp dụng | Bắt buộc |
<FormParam> phần tử
Chỉ định rằng thông tin cần được trích xuất từ tham số biểu mẫu yêu cầu và được đánh giá
dựa vào biểu thức chính quy đã cung cấp. Bạn phải cung cấp ít nhất một
Phần tử <Pattern>
chỉ định mẫu biểu thức chính quy để so khớp.
<FormParam name="a-form-param"> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </FormParam>
Mặc định: | Không áp dụng |
Sự hiện diện: | Không bắt buộc |
Loại: | Không áp dụng |
Thuộc tính
Thuộc tính | Mô tả | Mặc định | Sự hiện diện |
---|---|---|---|
tên |
Tên của thông số biểu mẫu yêu cầu mà thông tin cần được trích xuất dựa trên các biểu thức chính quy được cung cấp. |
Không áp dụng | Bắt buộc |
<Variable> phần tử
Chỉ định rằng thông tin cần được trích xuất từ một biến nhất định và được đánh giá dựa trên biểu thức chính quy đã cung cấp.
<Variable name="request.content"> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </Variable>
Mặc định: | Không áp dụng |
Sự hiện diện: | Không bắt buộc |
Loại: | Không áp dụng |
Thuộc tính
Thuộc tính | Mô tả | Mặc định | Sự hiện diện |
---|---|---|---|
tên |
Tên của biến mà thông tin cần được trích xuất để đánh giá dựa vào biểu thức chính quy đã cung cấp. |
Không áp dụng | Bắt buộc |
<XMLPayload> phần tử
Chỉ định rằng thông tin cần được trích xuất từ một tải trọng XML và được đánh giá theo đã cung cấp biểu thức chính quy.
<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>
Mặc định: | Không áp dụng |
Sự hiện diện: | Không bắt buộc |
Loại: | Không áp dụng |
<XMLPayload>/<Namespaces> phần tử
Chỉ định không gian tên sẽ dùng trong quá trình đánh giá NETWORK.
<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>
Mặc định: | Không áp dụng |
Sự hiện diện: | Không bắt buộc |
Loại: | Chuỗi |
<XMLPayload>/<Namespaces>/<Namespace> phần tử
Chỉ định từng không gian tên để sẽ được dùng trong đánh giá q.<Namespaces> <Namespace prefix="apigee">http://www.apigee.com</Namespace> </Namespaces>
Mặc định: | Không áp dụng |
Sự hiện diện: | Không bắt buộc |
Loại: | Chuỗi |
Thuộc tính
Thuộc tính | Mô tả | Mặc định | Sự hiện diện |
---|---|---|---|
tiền tố |
Cung cấp tiền tố để giúp đáp ứng điều kiện cho một vùng chứa tên nhất định. |
Không áp dụng | Bắt buộc |
<XMLPayload>/<XPath> phần tử
Chỉ định ng cần đánh giá.<XPath> <Expression>/apigee:Greeting/apigee:User</Expression> <Type>string</Type> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </XPath>
Mặc định: | Không áp dụng |
Sự hiện diện: | Không bắt buộc |
Loại: | Không áp dụng |
<XMLPayload>/<XPath>/<Expression> phần tử
Chỉ định biểu thức Wi-Fi được xác định cho biến. Chỉ biểu thức NETWORK 1.0 được hỗ trợ. Ví dụ:<Expression>/company/employee[@age>=$request.header.age]</Expression>
trích xuất thông tin chi tiết về nhân viên có tuổi lớn hơn hoặc bằng giá trị được chỉ định trong
request.header.age
<XPath> <Expression>/apigee:Greeting/apigee:User</Expression> <Type>string</Type> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </XPath>
Mặc định: | Không áp dụng |
Sự hiện diện: | Không bắt buộc |
Loại: | Chuỗi |
<XMLPayload>/<XPath>/<Type> phần tử
Chỉ định kiểu dữ liệu.<XPath> <Expression>/apigee:Greeting/apigee:User</Expression> <Type>string</Type> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </XPath>
Mặc định: | string |
Sự hiện diện: | Không bắt buộc |
Loại: | Chuỗi |
Giá trị hợp lệ: |
Chuỗi. Các giá trị hợp lệ bao gồm |
<XMLPayload>/<XPath>/<Pattern> phần tử
Xác định mẫu biểu thức chính quy. Nếu một biểu thức chính quy trong
phần tử<Pattern>
của bạn bao gồm các ký tự dành riêng cho XML (", &, ', < hoặc
.), bạn phải mã hoá XML trước khi thêm vào.
<XPath> <Expression>/apigee:Greeting/apigee:User</Expression> <Type>string</Type> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </XPath>
Mặc định: | Không áp dụng |
Sự hiện diện: | Bắt buộc |
Loại: | Chuỗi |
<JSONPayload> phần tử
Chỉ định rằng thông tin cần được trích xuất từ tải trọng JSON và được đánh giá dựa trên đã cung cấp biểu thức chính quy.
<JSONPayload> <JSONPath> <Expression>$.store.book[*].author</Expression> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </JSONPath> </JSONPayload>
Mặc định: | Không áp dụng |
Sự hiện diện: | Không bắt buộc |
Loại: | Không áp dụng |
Thuộc tính
Thuộc tính | Mô tả | Mặc định | Sự hiện diện |
---|---|---|---|
escapeSlashCharacter |
Đặt thành |
đúng | Không bắt buộc |
<JSONPayload>/<JSONPath>/<Expression> phần tử
Chỉ định biểu thức JSONPath được xác định cho biến.
<JSONPath> <Expression>$.store.book[*].author</Expression> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </JSONPath>
Mặc định: | Không áp dụng |
Sự hiện diện: | Không bắt buộc |
Loại: | Chuỗi |
<JSONPayload>/<JSONPath>/<Pattern> phần tử
Xác định mẫu biểu thức chính quy. Nếu một biểu thức chính quy trong
Phần tử <Pattern>
chứa các ký tự dành riêng cho XML (", &, ', < hoặc .),
bạn phải mã hoá XML trước khi đưa vào.
<JSONPath> <Expression>$.store.book[*].author</Expression> <Pattern>REGEX PATTERN</Pattern> <Pattern>REGEX PATTERN</Pattern> </JSONPath>
Mặc định: | Không áp dụng |
Sự hiện diện: | Bắt buộc |
Loại: | Chuỗi |
Tham chiếu lỗi
Phần này mô tả các mã lỗi và thông báo được trả về cũng như các biến lỗi do Edge đặt ra khi chính sách này kích hoạt lỗi. Thông tin này đóng vai trò quan trọng trong việc phát triển các quy tắc lỗi để xử lý lỗi. Nếu bạn muốn phát hiện lỗi và báo lỗi tuỳ chỉnh của riêng mình, hãy đặt thuộc tính continueOnError="true"
trên thành phần gốc của chính sách.
Để tìm hiểu thêm, hãy xem bài viết
Những điều bạn cần biết về lỗi về chính sách và Xử lý lỗi.
Lỗi được trả về từ chính sách Edge theo một định dạng nhất quán như mô tả trong Tài liệu tham khảo mã lỗi.
Lỗi thời gian chạy
Những lỗi này có thể xảy ra khi thực thi chính sách.
Mã lỗi | Thông điệp |
---|---|
ExecutionFailed | Không thể thực thi RegularExpressionProtection StepDefinition {0}. Lý do: {1} |
InstantiationFailed | Không thể tạo thực thể của RegularExpressionProtection StepDefinition {0} |
NonMessageVariable | Biến {0} không phân giải thành Thông báo |
SourceMessageNotAvailable | {0} thông báo không có sẵn cho RegularExpressionProtection StepDefinition {1} |
ThreatDetected | Phát hiện mối đe doạ sử dụng biểu thức chính quy trong {0}: regex: {1} đầu vào: {2} |
VariableResolutionFailed | Không phân giải được biến {0} |
Lỗi triển khai
Mã lỗi | Thông điệp | Khắc phục |
---|---|---|
CannotBeConvertedToNodeset | RegularExpressionProtection {0}: Không thể chuyển đổi kết quả của xpath {1} thành tập hợp nút. Ngữ cảnh {2} | build |
DuplicatePrefix | RegularExpressionProtection {0}: Tiền tố trùng lặp {1} | build |
EmptyJSONPathExpression | RegularExpressionProtection {0}: Biểu thức JSONPath trống | build |
EmptyXPathExpression | RegularExpressionProtection {0}: Biểu thức XPath trống | build |
InvalidRegularExpression | Biểu thức chính quy chính quy {0}: Biểu thức chính quy không hợp lệ {1}, Ngữ cảnh {2} | build |
JSONPathCompilationFailed | RegularExpressionProtection {0}: Không thể biên dịch jsonpath {1}. Ngữ cảnh {2} | build |
NONEmptyPrefixMappedToEmptyURI | RegularExpressionProtection {0}: Không thể ánh xạ tiền tố không trống {1} tới uri trống | build |
NoPatternsToEnforce | RegularExpressionProtection {0}: Không có mẫu nào để thực thi trong {1} | build |
NothingToEnforce | RegularExpressionProtection {0}: ít nhất một trong các URIPath, QueryParam, Header, formParam, XMLPayload, JSONPayload là bắt buộc | build |
XPathCompilationFailed | RegularExpressionProtection {0}: Không biên dịch được xpath {1}. Ngữ cảnh {2} | build |
Biến lỗi
Các biến này được đặt khi chính sách này kích hoạt lỗi. Để biết thêm thông tin, hãy xem Những điều bạn cần biết về lỗi chính sách.
Biến | Trong đó | Ví dụ: |
---|---|---|
fault.name="fault_name" |
fault_name là tên của lỗi, như được liệt kê trong bảng trên. | fault.name Matches "ThreatDetected" |
regularexpressionprotection.policy_name.failed |
policy_name là tên của chính sách báo lỗi do người dùng chỉ định. | regularexpressionprotection.Regular-Expressions-Protection-1.failed = true |