Skip to content

Commit 72aad62

Browse files
authored
Merge pull request #3721 from NationalSecurityAgency/t#3720/clear_thread_local
#3720 - use try/finally to ensure the USER_ID ThreadLocal is cleared
2 parents 1a89500 + 865de27 commit 72aad62

File tree

1 file changed

+11
-10
lines changed

1 file changed

+11
-10
lines changed

service/src/main/java/skills/TomcatConfig.groovy

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -89,18 +89,19 @@ class TomcatConfig implements WebServerFactoryCustomizer<TomcatServletWebServerF
8989

9090
@Override
9191
String convert(IAccessEvent accessEvent) {
92-
String dn = getSubjectDN(accessEvent)
93-
if (dn) {
94-
return dn
95-
}
96-
97-
String userIdForLogging = UserIdLoggingFilter.USER_ID.get()
98-
if (userIdForLogging) {
92+
try {
93+
String dn = getSubjectDN(accessEvent)
94+
if (dn) {
95+
return dn
96+
}
97+
String userIdForLogging = UserIdLoggingFilter.USER_ID.get()
98+
if (userIdForLogging) {
99+
return userIdForLogging
100+
}
101+
return IAccessEvent.NA
102+
} finally {
99103
UserIdLoggingFilter.USER_ID.remove()
100-
return userIdForLogging
101104
}
102-
103-
return IAccessEvent.NA
104105
}
105106

106107
private static String getSubjectDN(IAccessEvent accessEvent) {

0 commit comments

Comments
 (0)