Rules match request values the way backends read them
Proxy v0.27.0 reads request values the way common backends do, so requests can't slip past a rule by spelling a value differently:
- Domain rules match the normalized host, so
STAGING.example.com,staging.example.com., andstaging.example.com:443all match a rule forstaging.example.com. - Header, user agent, query parameter, and cookie rules check every value of a repeated field. Negated operators match only when no value matches.
- Query parameters and cookies that backends accept are no longer dropped before matching, and cookie values are also matched percent-decoded.
- Raw path rules see the path as sent, so encoded sequences such as
%2e%2ecan be matched.
Proxy v0.26.1 also stops clients from spoofing their IP address with their own X-Forwarded-For values behind a trusted proxy.