Skip to content

Commit 6ed6415

Browse files
committed
fix: add oidc logger and replace console logging
1 parent d0d36a9 commit 6ed6415

File tree

2 files changed

+13
-6
lines changed

2 files changed

+13
-6
lines changed

backend/logger.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,5 +9,6 @@ module.exports = {
99
ssl: new Signale({scope: 'SSL '}),
1010
import: new Signale({scope: 'Importer '}),
1111
setup: new Signale({scope: 'Setup '}),
12-
ip_ranges: new Signale({scope: 'IP Ranges'})
12+
ip_ranges: new Signale({scope: 'IP Ranges'}),
13+
oidc: new Signale({scope: 'OIDC '})
1314
};

backend/routes/api/oidc.js

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ const crypto = require('crypto');
22
const error = require('../../lib/error');
33
const express = require('express');
44
const jwtdecode = require('../../lib/express/jwt-decode');
5+
const logger = require('../../logger').oidc;
56
const oidc = require('openid-client');
67
const settingModel = require('../../models/setting');
78
const internalToken = require('../../internal/token');
@@ -25,7 +26,7 @@ router
2526
* OAuth Authorization Code flow initialisation
2627
*/
2728
.get(jwtdecode(), async (req, res) => {
28-
console.log('oidc: init flow');
29+
logger.info('Initializing OAuth flow');
2930
settingModel
3031
.query()
3132
.where({id: 'oidc-config'})
@@ -49,7 +50,7 @@ router
4950
* Oauth Authorization Code flow callback
5051
*/
5152
.get(jwtdecode(), async (req, res) => {
52-
console.log('oidc: callback');
53+
logger.info('Processing callback');
5354
settingModel
5455
.query()
5556
.where({id: 'oidc-config'})
@@ -137,13 +138,18 @@ let validateCallback = async (req, settings) => {
137138
const params = client.callbackParams(req);
138139
const tokenSet = await client.callback(settings.meta.redirectURL, params, { state, nonce });
139140
let claims = tokenSet.claims();
140-
console.log('oidc: authentication successful for email', claims.email);
141+
142+
if (!claims.email) {
143+
throw new error.AuthError('The Identity Provider didn\'t send the \'email\' claim');
144+
} else {
145+
logger.info('Successful authentication for email ' + claims.email);
146+
}
141147

142148
return internalToken.getTokenFromOAuthClaim({ identity: claims.email });
143149
};
144150

145151
let redirectToAuthorizationURL = (res, params) => {
146-
console.log('oidc: init flow > url > ', params.url);
152+
logger.info('Authorization URL: ' + params.url);
147153
res.cookie('npm_oidc', params.state + '--' + params.nonce);
148154
res.redirect(params.url);
149155
};
@@ -154,7 +160,7 @@ let redirectWithJwtToken = (res, token) => {
154160
};
155161

156162
let redirectWithError = (res, error) => {
157-
console.log('oidc: callback error: ', error);
163+
logger.error('Callback error: ' + error.message);
158164
res.cookie('npm_oidc_error', error.message);
159165
res.redirect('/login');
160166
};

0 commit comments

Comments
 (0)