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
- Group JA3/JA4 config under a 'fingerprint' sub-struct in both the
ContourConfiguration CRD (EnvoyTLS.Fingerprint) and the YAML config
file (ProtocolParameters.Fingerprint) for cleaner API design.
- Refactor TLSInspector() to be a no-arg function for backward
compatibility, and add TLSInspectorWithConfig(enableJA3, enableJA4)
for the configurable variant.
- Refactor secureProxyProtocol() to accept the full ListenerConfig
struct instead of individual boolean parameters.
- Add access log support: register TLS_JA3_FINGERPRINT and
TLS_JA4_FINGERPRINT as Envoy access log operators, add
tls_ja3_fingerprint/tls_ja4_fingerprint JSON field aliases, and
fix commandOperatorRegexp to support digits in operator names.
- Add dynamic request header support: allow TLS_JA3_FINGERPRINT and
TLS_JA4_FINGERPRINT variables in header policy values so fingerprints
can be forwarded to backend services.
- Add comprehensive tests: unit tests for TLSInspector/WithConfig,
access log field validation, header policy passthrough, and feature
tests covering JA3-only, JA4-only, both, and with PROXY protocol.
- Add documentation: access log usage guide, request header variable
list, and updated changelog.
Signed-off-by: Muxian Wu <muxianw@twitter.com>
Make it possible to enable TLS fingerprinting in Envoy's TLS Inspector Listener filter, useful for security monitoring, analytics, and bot detection. Provides independent control over JA3 and JA4 fingerprinting methods.
2
+
3
+
Fingerprints can be consumed by:
4
+
- Logging in access logs using `%TLS_JA3_FINGERPRINT%` / `%TLS_JA4_FINGERPRINT%` format operators or the `tls_ja3_fingerprint` / `tls_ja4_fingerprint` JSON log fields.
5
+
- Setting dynamic request headers to forward fingerprints to backend services (e.g. `%TLS_JA3_FINGERPRINT%` / `%TLS_JA4_FINGERPRINT%` in header policy values).
0 commit comments