You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Fix trailing whitespace in t/plugin/acl.t line 877 (eclint failure)
- Fix TEST 36 error_log pattern: use eval qr// to properly escape regex
metacharacters ([, (, )) in the expected PCRE error message
- Rename extra_values_* -> extract_values_* for clarity
- Change core.log.info -> core.log.debug for label logging to avoid
leaking sensitive user/tenant attributes
- Only apply external_user parser/sep config for ctx.external_user,
not ctx.consumer, to prevent consumer label matching breakage
- Fix TEST 51/52: change external_user_label_field_key to
external_user_label_field_separator in test configs and expected
response bodies so they actually test the separator field validation
- Fix typo in comment: 'dose' -> 'does'
- Clarify docs: external_user_label_field accepts JSONPath or plain
field name (both English and Chinese docs)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copy file name to clipboardExpand all lines: docs/en/latest/plugins/acl.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -51,7 +51,7 @@ At least one of `allow_labels` or `deny_labels` must be configured. When both ar
51
51
| deny_labels | object | False*||| Labels to deny. Keys are label names, values are arrays of denied label values. At least one of `allow_labels` or `deny_labels` must be configured. |
52
52
| rejected_code | integer | False | 403 | >= 200 | HTTP status code returned when the request is rejected. |
53
53
| rejected_msg | string | False ||| Custom rejection message body. If not set, defaults to `{"message":"The consumer is forbidden."}`. |
54
-
| external_user_label_field | string | False |`groups`|| JSONPath expression used to extract the label value from `ctx.external_user`. |
54
+
| external_user_label_field | string | False |`groups`|| JSONPath expression or plain field name used to extract the label value from `ctx.external_user`. For example, `$..groups` (JSONPath) or `groups` (plain field name). |
55
55
| external_user_label_field_key | string | False ||| The label key name used for the extracted value. Defaults to the value of `external_user_label_field`. |
56
56
| external_user_label_field_parser | string | False ||`segmented_text`, `json`, `table`| How to parse the extracted field value. If not set, the Plugin auto-detects the format. |
57
57
| external_user_label_field_separator | string | False ||| Separator regex for the `segmented_text` parser. Required when `external_user_label_field_parser` is `segmented_text`. |
{"error_msg":"failed to check the configuration of plugin acl err: property \"external_user_label_field_key\" validation failed: string too short, expected at least 1, got 0"}
1400
+
{"error_msg":"failed to check the configuration of plugin acl err: property \"external_user_label_field_separator\" validation failed: string too short, expected at least 1, got 0"}
0 commit comments