[Default]modify ajp-listener to allow specifying pattern for ajp request attributes
Overview
Since UNDERTOW-1667 one can set additional AJP request attribute parsing permission via env variable. However there is no way to set it in WFLY config/model. This RFE’s goal is to make it possible. NOTE: this is promotion from Community to Default level.
User Stories
N/A
Issue Metadata
Related Issues
Affected Projects or Components
<List the projects or components that are affected by the feature. List them using their Git repositories.>
Other Interested Projects
Relevant Installation Types
-
Traditional standalone server (unzipped or provisioned by Galleon)
-
Managed domain
-
OpenShift Source-to-Image (S2I)
-
Bootable jar
Requirements
-
Being able to configure pattern via model/xml.
<subsystem xmlns="urn:jboss:domain:undertow:14.0" default-server="some-server" default-servlet-container="myContainer" default-virtual-host="default-virtual-host" instance-id="some-id" statistics-enabled="true"> ... <server default-host="other-host" name="some-server" servlet-container="myContainer"> ... <ajp-listener ... allowed_request_attr_pattern="(?:apple|banana)" .../> ... </server> ... </subsystem>
Parameters will be present in undertow server element(for standalone: /subsystem=undertow/server=default-server/ajp-listener=myListener): * allowed_request_attr_pattern Default: null Type: String(regex - java.util.regex.Pattern)
Changed requirements
N/A
Non-Requirements
N/A
Future Work
None
Backwards Compatibility
Possibly. Subsystem transformers should be able to handle it.
Default Configuration
No change
Importing Existing Configuration
No steps should suffice, as it would mean defaulting to 'null', which is default value in undertow source.
Deployments
Not affected.
Interoperability
N/A
Implementation Plan
N/A
Admin Clients
HAL pick up those values and mark as stability dependent. CLI use model.
Security Considerations
Possibly. UNDERTOW-1667 is a CVE, so this RFE should be documented well, in order to warn users of potential exposure. However, by defualt undertow will ignore non-standard and not matching attributes, hence user is failure point.
Test Plan
Test Plan 752 Unit tests should cover new functionality(there is already test case covering AjpListener).
Community Documentation
Task for WFLY documentation already exist - WFLY-15453. HOwever, this is model change and there is model reference doc generated, so its unclear which approach is better?
Release Note Content
Allow configuration of AJP request attribute pattern with model entry, rather than only via system property.(promotion to default stability)