Skip to content

Commit 2000d5d

Browse files
committed
feat(api): add monitoring for some token validation problems (audience, revocation)
1 parent a810eb2 commit 2000d5d

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

Diff for: api/lib/infrastructure/authentication.js

+12
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import { revokedUserAccessRepository } from '../../src/identity-access-managemen
55
import { getForwardedOrigin } from '../../src/identity-access-management/infrastructure/utils/network.js';
66
import { config } from '../../src/shared/config.js';
77
import { tokenService } from '../../src/shared/domain/services/token-service.js';
8+
import { monitoringTools } from '../../src/shared/infrastructure/monitoring-tools.js';
89

910
const { find } = lodash;
1011

@@ -88,11 +89,22 @@ async function validateUser(decodedAccessToken, { request, revokedUserAccessRepo
8889
if (config.featureToggles.isUserTokenAudConfinementEnabled && userId) {
8990
const revokedUserAccess = await revokedUserAccessRepository.findByUserId(userId);
9091
if (revokedUserAccess.isAccessTokenRevoked(decodedAccessToken)) {
92+
monitoringTools.logWarnWithCorrelationIds({
93+
message: 'Revoked user AccessToken usage',
94+
decodedAccessToken,
95+
});
96+
9197
return { isValid: false };
9298
}
9399

94100
const audience = getForwardedOrigin(request.headers);
95101
if (decodedAccessToken.aud !== audience) {
102+
monitoringTools.logWarnWithCorrelationIds({
103+
message: 'User AccessToken audience mismatch',
104+
audience,
105+
decodedAccessToken,
106+
});
107+
96108
return { isValid: false };
97109
}
98110
}

0 commit comments

Comments
 (0)