Skip to content

Commit a96c532

Browse files
authored
Bugfix/auth header log fix (#3674)
* Fjerner bearer token som persisteres til logg gjennom instrumentering
1 parent 23828f6 commit a96c532

File tree

1 file changed

+10
-19
lines changed

1 file changed

+10
-19
lines changed

libs/reactive-core/src/main/java/no/nav/testnav/libs/reactivecore/logging/TestnavLogbackEncoder.java

+10-19
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,8 @@
3333
public class TestnavLogbackEncoder extends LogstashEncoder {
3434

3535
// matches exactly 11 digits (\\d{11}) that are not immediately preceded ((?<!\\d)) or followed ((?!\\d)) by another digit.
36-
private final Pattern pattern = Pattern.compile("(?<!\\d)\\d{11}(?!\\d)");
37-
36+
private final Pattern identNummer = Pattern.compile("(?<!\\d)\\d{11}(?!\\d)");
37+
private final Pattern bearer = Pattern.compile("Bearer [a-zA-Z0-9\\-_.]+");
3838
@Setter
3939
private int maxStackTraceLength = 480;
4040

@@ -113,24 +113,15 @@ private void appendStackTraceCauses(ThrowableProxy exception, StringWriter write
113113
}
114114

115115
private String formatMessage(String message) {
116-
var matcher = pattern.matcher(message);
117-
118-
if (!matcher.find()) {
119-
return message;
120-
}
121-
122-
matcher.reset();
123-
var result = new StringBuilder();
124-
125-
while (matcher.find()) {
126-
var match = matcher.group();
127-
if (match.charAt(2) == '0' || match.charAt(2) == '1') {
128-
var replacement = match.substring(0, 6) + "xxxxx";
129-
matcher.appendReplacement(result, replacement);
116+
message = identNummer.matcher(message).replaceAll(match -> {
117+
if (match.group().charAt(2) == '0' || match.group().charAt(2) == '1') {
118+
return match.group().substring(0, 6) + "xxxxx";
130119
}
131-
}
132-
matcher.appendTail(result);
120+
return match.group();
121+
});
122+
123+
message = bearer.matcher(message).replaceAll("REDACTED_BEARER");
133124

134-
return result.toString();
125+
return message;
135126
}
136127
}

0 commit comments

Comments
 (0)