Package org.mockserver.fixture
Class FixtureRedactor
java.lang.Object
org.mockserver.fixture.FixtureRedactor
Masks sensitive data in recorded expectations before they are written to fixture files.
Operates on copies: the live event log is never mutated. Header values for a configurable set of header names are replaced with a placeholder ("***REDACTED***").
Default sensitive headers: Authorization, x-api-key, api-key,
Cookie, Set-Cookie, Proxy-Authorization.
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionCreate a redactor with the default sensitive header list and no body-field redaction.FixtureRedactor(Collection<String> sensitiveHeaders) Create a redactor with a custom sensitive header list and no body-field redaction.FixtureRedactor(Collection<String> sensitiveHeaders, Collection<String> sensitiveBodyFields) Create a redactor with custom sensitive headers and JSON body field names. -
Method Summary
Modifier and TypeMethodDescriptionThe default sensitive header names (case-insensitive), as an unmodifiable set, so callers can reuse them when constructing a redactor with additional body fields without re-declaring the list.redact(Expectation[] expectations) Redact sensitive headers in an array of expectations.
-
Field Details
-
REDACTED_PLACEHOLDER
- See Also:
-
-
Constructor Details
-
FixtureRedactor
public FixtureRedactor()Create a redactor with the default sensitive header list and no body-field redaction. -
FixtureRedactor
Create a redactor with a custom sensitive header list and no body-field redaction.- Parameters:
sensitiveHeaders- header names to redact (case-insensitive)
-
FixtureRedactor
Create a redactor with custom sensitive headers and JSON body field names. Body fields are matched case-insensitively at any depth of a JSON request/response body; their values are replaced with the placeholder.- Parameters:
sensitiveHeaders- header names to redact (case-insensitive)sensitiveBodyFields- JSON field names to redact in bodies (case-insensitive)
-
-
Method Details
-
defaultSensitiveHeaders
The default sensitive header names (case-insensitive), as an unmodifiable set, so callers can reuse them when constructing a redactor with additional body fields without re-declaring the list. -
redact
Redact sensitive headers in an array of expectations. Returns new Expectation objects; the originals are not modified.- Parameters:
expectations- the expectations to redact- Returns:
- new expectations with sensitive header values replaced
-