@villedemontreal/jwt-validator 5.10.0 → 5.10.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -8,4 +8,5 @@ export * from './models/gluuUserType';
8
8
  export * from './models/jwtPayload';
9
9
  export * from './models/publicKey';
10
10
  export * from './userValidator';
11
+ export * from './utils/createIdentityFromJwt';
11
12
  export * from './utils/jwtMock';
package/dist/src/index.js CHANGED
@@ -29,5 +29,6 @@ __exportStar(require("./models/gluuUserType"), exports);
29
29
  __exportStar(require("./models/jwtPayload"), exports);
30
30
  __exportStar(require("./models/publicKey"), exports);
31
31
  __exportStar(require("./userValidator"), exports);
32
+ __exportStar(require("./utils/createIdentityFromJwt"), exports);
32
33
  __exportStar(require("./utils/jwtMock"), exports);
33
34
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,6CAA6C;AAC7C,gDAAgD;AAChD,6CAA6C;AAC7C,qCAAqC;AACrC,6CAA6C;AAC7C,gDAA8B;AAC9B,iDAA+B;AAC/B,6DAA2C;AAC3C,6EAA2D;AAC3D,0DAAwC;AACxC,wDAAsC;AACtC,sDAAoC;AACpC,qDAAmC;AACnC,kDAAgC;AAChC,kDAAgC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,6CAA6C;AAC7C,gDAAgD;AAChD,6CAA6C;AAC7C,qCAAqC;AACrC,6CAA6C;AAC7C,gDAA8B;AAC9B,iDAA+B;AAC/B,6DAA2C;AAC3C,6EAA2D;AAC3D,0DAAwC;AACxC,wDAAsC;AACtC,sDAAoC;AACpC,qDAAmC;AACnC,kDAAgC;AAChC,gEAA8C;AAC9C,kDAAgC"}
@@ -108,6 +108,9 @@ export type CitizenAttributes = CommonUserAttributes & {
108
108
  /**
109
109
  * The attributes of an employee: a user on the payroll of the city of Montreal.
110
110
  *
111
+ * Note that a generic user that has all the required attributes of an employee would be detected as such,
112
+ * for testing purposes.
113
+ *
111
114
  * The ID is mapped to the username.
112
115
  */
113
116
  export type EmployeeAttributes = CommonUserAttributes & {
@@ -151,12 +154,19 @@ export type EmployeeAttributes = CommonUserAttributes & {
151
154
  * The account profile that was selected upon logon.
152
155
  */
153
156
  accountProfile: AccountProfile;
157
+ /**
158
+ * Specifies if the account presented as an external user is a generic account, used for testing purposes.
159
+ */
160
+ isGeneric: boolean;
154
161
  };
155
162
  /**
156
163
  * The attributes of an external user: a user that is not on the payroll of the city of Montreal but actively collaborates
157
164
  * with the city and has his own internal email and short code (starting with the letter x).
158
-
159
- * The ID is mapped to the username.
165
+ *
166
+ * Note that a generic user that has all the required attributes of an external user would be detected as such,
167
+ * for testing purposes.
168
+ *
169
+ * The ID is mapped to the username.
160
170
  */
161
171
  export type ExternalUserAttributes = CommonUserAttributes & {
162
172
  type: 'external';
@@ -191,11 +201,19 @@ export type ExternalUserAttributes = CommonUserAttributes & {
191
201
  * The account profile that was selected upon logon.
192
202
  */
193
203
  accountProfile: AccountProfile;
204
+ /**
205
+ * Specifies if the account presented as an external user is a generic account, used for testing purposes.
206
+ */
207
+ isGeneric: boolean;
194
208
  };
195
209
  /**
196
210
  * The attributes of a generic user: a fake user used for testing only, that has the right profile or role to perform specific tasks.
197
-
198
- * The ID is mapped to the username.
211
+ *
212
+ * Note that if a generic user has all the required attributes of an employee or an external user, then it will be detected
213
+ * as such an employee or external user, for testing purposes, and not as a generic user.
214
+ * However, citizens and guest users cannot be generic.
215
+ *
216
+ * The ID is mapped to the username.
199
217
  */
200
218
  export type GenericUserAttributes = CommonUserAttributes & {
201
219
  type: 'generic';
@@ -51,7 +51,7 @@ function createIdentityFromJwt(jwt) {
51
51
  const env = getOptionalStringClaim(jwt, 'env');
52
52
  const userType = getOptionalStringClaim(jwt, 'userType') ?? 'citizen';
53
53
  const accessTokenIssuer = getOptionalStringClaim(jwt, 'accessTokenIssuer');
54
- const isGenericUser = jwt.isGenericAccount;
54
+ const isGenericUser = jwt.isGenericAccount === true;
55
55
  //----------< Anonymous user >-----------------------------------------
56
56
  if (userType === 'anonymous') {
57
57
  const type = 'anonymous';
@@ -169,39 +169,6 @@ function createIdentityFromJwt(jwt) {
169
169
  };
170
170
  return result;
171
171
  }
172
- //----------< Generic user >-----------------------------------------
173
- if (isGenericUser === true) {
174
- const type = 'user';
175
- const subType = 'generic-user';
176
- const username = getStringClaim(jwt, usernameClaimName, type, subType);
177
- const result = {
178
- type,
179
- id: username,
180
- displayName: getStringClaim(jwt, 'name', type, subType),
181
- attributes: {
182
- type: 'generic',
183
- username,
184
- email: getOptionalStringClaim(jwt, 'email'),
185
- department: getOptionalStringClaim(jwt, 'department'),
186
- firstName: getStringClaim(jwt, 'givenName', type, subType),
187
- lastName: getStringClaim(jwt, 'familyName', type, subType),
188
- accountProfile: getAccountProfile(jwt),
189
- },
190
- source: {
191
- aud,
192
- issuer,
193
- accessTokenIssuer,
194
- env,
195
- realm,
196
- claim: usernameClaimName,
197
- internalId: oid ?? sub,
198
- },
199
- toString() {
200
- return encodeComponents(this.type, this.attributes.type, this.id, this.displayName, this.attributes.email, this.attributes.department, this.attributes.accountProfile);
201
- },
202
- };
203
- return result;
204
- }
205
172
  //----------< Employee >-----------------------------------------
206
173
  if (userType === 'employee' && isEmployee(jwt)) {
207
174
  const type = 'user';
@@ -223,6 +190,7 @@ function createIdentityFromJwt(jwt) {
223
190
  firstName: getStringClaim(jwt, 'givenName', type, subType),
224
191
  lastName: getStringClaim(jwt, 'familyName', type, subType),
225
192
  accountProfile: getAccountProfile(jwt),
193
+ isGeneric: isGenericUser,
226
194
  },
227
195
  source: {
228
196
  aud,
@@ -259,6 +227,7 @@ function createIdentityFromJwt(jwt) {
259
227
  firstName: getStringClaim(jwt, 'givenName', type, subType),
260
228
  lastName: getStringClaim(jwt, 'familyName', type, subType),
261
229
  accountProfile: getAccountProfile(jwt),
230
+ isGeneric: isGenericUser,
262
231
  },
263
232
  source: {
264
233
  aud,
@@ -308,6 +277,39 @@ function createIdentityFromJwt(jwt) {
308
277
  };
309
278
  return result;
310
279
  }
280
+ //----------< Generic user >-----------------------------------------
281
+ if (isGenericUser) {
282
+ const type = 'user';
283
+ const subType = 'generic-user';
284
+ const username = getStringClaim(jwt, usernameClaimName, type, subType);
285
+ const result = {
286
+ type,
287
+ id: username,
288
+ displayName: getStringClaim(jwt, 'name', type, subType),
289
+ attributes: {
290
+ type: 'generic',
291
+ username,
292
+ email: getOptionalStringClaim(jwt, 'email'),
293
+ department: getOptionalStringClaim(jwt, 'department'),
294
+ firstName: getStringClaim(jwt, 'givenName', type, subType),
295
+ lastName: getStringClaim(jwt, 'familyName', type, subType),
296
+ accountProfile: getAccountProfile(jwt),
297
+ },
298
+ source: {
299
+ aud,
300
+ issuer,
301
+ accessTokenIssuer,
302
+ env,
303
+ realm,
304
+ claim: usernameClaimName,
305
+ internalId: oid ?? sub,
306
+ },
307
+ toString() {
308
+ return encodeComponents(this.type, this.attributes.type, this.id, this.displayName, this.attributes.email, this.attributes.department, this.attributes.accountProfile);
309
+ },
310
+ };
311
+ return result;
312
+ }
311
313
  //----------< Unknown user type >-----------------------------------------
312
314
  const username = getOptionalStringClaim(jwt, usernameClaimName);
313
315
  const email = getOptionalStringClaim(jwt, 'email');
@@ -1 +1 @@
1
- {"version":3,"file":"createIdentityFromJwt.js","sourceRoot":"","sources":["../../../src/utils/createIdentityFromJwt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createIdentityFromJwt.js","sourceRoot":"","sources":["../../../src/utils/createIdentityFromJwt.ts"],"names":[],"mappings":"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"}
@@ -64,6 +64,7 @@ const createIdentityFromJwt_1 = require("./createIdentityFromJwt");
64
64
  firstName: 'John',
65
65
  lastName: 'DOE',
66
66
  accountProfile: 'vdm',
67
+ isGeneric: false,
67
68
  },
68
69
  source: {
69
70
  issuer: 'security-identity-token-api',
@@ -76,7 +77,7 @@ const createIdentityFromJwt_1 = require("./createIdentityFromJwt");
76
77
  },
77
78
  });
78
79
  // console.log(JSON.stringify(identity));
79
- (0, chai_1.expect)(JSON.stringify(identity)).to.eql(`{"type":"user","id":"udoejo3","displayName":"John DOE","attributes":{"type":"employee","email":"john.doe@montreal.ca","username":"udoejo3","registrationNumber":"100674051","department":"421408000000","firstName":"John","lastName":"DOE","accountProfile":"vdm"},"source":{"aud":"e5dd632b-cb97-48d7-a310-5147be717cde","issuer":"security-identity-token-api","accessTokenIssuer":"https://login.microsoftonline.com/9f15d2dc-8753-4f83-aac2-a58288d3a4bc/v2.0","env":"dev","realm":"employees","claim":"userName","internalId":"0b64042a-9cce-42dc-b645-cd721cbbc179"}}`);
80
+ (0, chai_1.expect)(JSON.stringify(identity)).to.eql(`{"type":"user","id":"udoejo3","displayName":"John DOE","attributes":{"type":"employee","email":"john.doe@montreal.ca","username":"udoejo3","registrationNumber":"100674051","department":"421408000000","firstName":"John","lastName":"DOE","accountProfile":"vdm","isGeneric":false},"source":{"aud":"e5dd632b-cb97-48d7-a310-5147be717cde","issuer":"security-identity-token-api","accessTokenIssuer":"https://login.microsoftonline.com/9f15d2dc-8753-4f83-aac2-a58288d3a4bc/v2.0","env":"dev","realm":"employees","claim":"userName","internalId":"0b64042a-9cce-42dc-b645-cd721cbbc179"}}`);
80
81
  });
81
82
  (0, mocha_1.it)('should recognize an employee of SPVM', () => {
82
83
  const jwt = {
@@ -118,6 +119,7 @@ const createIdentityFromJwt_1 = require("./createIdentityFromJwt");
118
119
  firstName: 'John',
119
120
  lastName: 'DOE',
120
121
  accountProfile: 'spvm',
122
+ isGeneric: false,
121
123
  },
122
124
  source: {
123
125
  issuer: 'security-identity-token-api',
@@ -171,6 +173,7 @@ const createIdentityFromJwt_1 = require("./createIdentityFromJwt");
171
173
  firstName: 'John',
172
174
  lastName: 'DOE',
173
175
  accountProfile: 'vdm-admin',
176
+ isGeneric: false,
174
177
  },
175
178
  source: {
176
179
  issuer: 'security-identity-token-api',
@@ -224,6 +227,7 @@ const createIdentityFromJwt_1 = require("./createIdentityFromJwt");
224
227
  firstName: 'John',
225
228
  lastName: 'DOE',
226
229
  accountProfile: 'vdm-admin',
230
+ isGeneric: false,
227
231
  },
228
232
  source: {
229
233
  issuer: 'security-identity-token-api',
@@ -274,6 +278,7 @@ const createIdentityFromJwt_1 = require("./createIdentityFromJwt");
274
278
  firstName: 'John',
275
279
  lastName: 'DOE',
276
280
  accountProfile: 'vdm',
281
+ isGeneric: false,
277
282
  },
278
283
  source: {
279
284
  issuer: 'security-identity-token-api',
@@ -323,6 +328,7 @@ const createIdentityFromJwt_1 = require("./createIdentityFromJwt");
323
328
  firstName: 'John',
324
329
  lastName: 'DOE',
325
330
  accountProfile: 'vdm',
331
+ isGeneric: false,
326
332
  },
327
333
  source: {
328
334
  issuer: 'security-identity-token-api',
@@ -384,6 +390,110 @@ const createIdentityFromJwt_1 = require("./createIdentityFromJwt");
384
390
  },
385
391
  });
386
392
  });
393
+ (0, mocha_1.it)('should recognize a generic user as an employee', () => {
394
+ const jwt = {
395
+ iss: 'security-identity-token-api',
396
+ exp: 1722376780,
397
+ iat: 1722371805,
398
+ keyId: 6,
399
+ displayName: 'infra-auth-auth-playground-dev',
400
+ aud: 'e5dd632b-cb97-48d7-a310-5147be717cde',
401
+ name: 'C.Generique dsec developpeur2',
402
+ sub: 'mlKfaYaESpCXWGoHE3ej-kCaUBwfsQzqayvRvXXQHJo',
403
+ userName: 'umarba33',
404
+ givenName: 'C.Generique',
405
+ familyName: 'dsec developpeur2',
406
+ email: 'dsec.dev2.test@montreal.ca',
407
+ userType: 'employee',
408
+ department: '4211',
409
+ employeeNumber: '000333',
410
+ oid: '74096b4e-c090-4a97-af04-bbe25dc4f7d6',
411
+ isGenericAccount: true,
412
+ realm: 'employees',
413
+ env: 'dev',
414
+ accessTokenIssuer: 'https://login.microsoftonline.com/9f15d2dc-8753-4f83-aac2-a58288d3a4bc/v2.0',
415
+ };
416
+ const identity = (0, createIdentityFromJwt_1.createIdentityFromJwt)(jwt);
417
+ // console.log(identity);
418
+ (0, chai_1.expect)(identity.toString()).to.equal('user:employee:umarba33:C.Generique dsec developpeur2:dsec.dev2.test@montreal.ca:000333:4211:vdm');
419
+ delete identity.toString;
420
+ (0, chai_1.expect)(identity).to.eql({
421
+ type: 'user',
422
+ id: 'umarba33',
423
+ displayName: 'C.Generique dsec developpeur2',
424
+ attributes: {
425
+ type: 'employee',
426
+ username: 'umarba33',
427
+ email: 'dsec.dev2.test@montreal.ca',
428
+ registrationNumber: '000333',
429
+ department: '4211',
430
+ firstName: 'C.Generique',
431
+ lastName: 'dsec developpeur2',
432
+ accountProfile: 'vdm',
433
+ isGeneric: true,
434
+ },
435
+ source: {
436
+ issuer: 'security-identity-token-api',
437
+ accessTokenIssuer: 'https://login.microsoftonline.com/9f15d2dc-8753-4f83-aac2-a58288d3a4bc/v2.0',
438
+ aud: 'e5dd632b-cb97-48d7-a310-5147be717cde',
439
+ env: 'dev',
440
+ realm: 'employees',
441
+ claim: 'userName',
442
+ internalId: '74096b4e-c090-4a97-af04-bbe25dc4f7d6',
443
+ },
444
+ });
445
+ });
446
+ (0, mocha_1.it)('should recognize a generic user as an external user', () => {
447
+ const jwt = {
448
+ iss: 'security-identity-token-api',
449
+ exp: 1722376780,
450
+ iat: 1722371805,
451
+ keyId: 6,
452
+ displayName: 'infra-auth-auth-playground-dev',
453
+ aud: 'e5dd632b-cb97-48d7-a310-5147be717cde',
454
+ name: 'C.Generique dsec developpeur2',
455
+ sub: 'mlKfaYaESpCXWGoHE3ej-kCaUBwfsQzqayvRvXXQHJo',
456
+ userName: 'xmarba33',
457
+ givenName: 'C.Generique',
458
+ familyName: 'dsec developpeur2',
459
+ email: 'dsec.dev2.test@montreal.ca',
460
+ userType: 'employee',
461
+ department: '4211',
462
+ oid: '74096b4e-c090-4a97-af04-bbe25dc4f7d6',
463
+ isGenericAccount: true,
464
+ realm: 'employees',
465
+ env: 'dev',
466
+ accessTokenIssuer: 'https://login.microsoftonline.com/9f15d2dc-8753-4f83-aac2-a58288d3a4bc/v2.0',
467
+ };
468
+ const identity = (0, createIdentityFromJwt_1.createIdentityFromJwt)(jwt);
469
+ // console.log(identity);
470
+ (0, chai_1.expect)(identity.toString()).to.equal('user:external:xmarba33:C.Generique dsec developpeur2:dsec.dev2.test@montreal.ca:4211:vdm');
471
+ delete identity.toString;
472
+ (0, chai_1.expect)(identity).to.eql({
473
+ type: 'user',
474
+ id: 'xmarba33',
475
+ displayName: 'C.Generique dsec developpeur2',
476
+ attributes: {
477
+ type: 'external',
478
+ username: 'xmarba33',
479
+ email: 'dsec.dev2.test@montreal.ca',
480
+ department: '4211',
481
+ firstName: 'C.Generique',
482
+ lastName: 'dsec developpeur2',
483
+ accountProfile: 'vdm',
484
+ isGeneric: true,
485
+ },
486
+ source: {
487
+ issuer: 'security-identity-token-api',
488
+ accessTokenIssuer: 'https://login.microsoftonline.com/9f15d2dc-8753-4f83-aac2-a58288d3a4bc/v2.0',
489
+ aud: 'e5dd632b-cb97-48d7-a310-5147be717cde',
490
+ env: 'dev',
491
+ realm: 'employees',
492
+ claim: 'userName',
493
+ internalId: '74096b4e-c090-4a97-af04-bbe25dc4f7d6',
494
+ },
495
+ });
496
+ });
387
497
  (0, mocha_1.it)('should recognize a guest user', () => {
388
498
  const jwt = {
389
499
  iss: 'security-identity-token-api',
@@ -1 +1 @@
1
- {"version":3,"file":"createIdentityFromJwt.test.js","sourceRoot":"","sources":["../../../src/utils/createIdentityFromJwt.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createIdentityFromJwt.test.js","sourceRoot":"","sources":["../../../src/utils/createIdentityFromJwt.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@villedemontreal/jwt-validator",
3
- "version": "5.10.0",
3
+ "version": "5.10.2",
4
4
  "description": "Module to validate JWT (JSON Web Tokens)",
5
5
  "main": "dist/src/index.js",
6
6
  "typings": "dist/src",
@@ -53,7 +53,7 @@
53
53
  "@types/fs-extra": "11.0.4",
54
54
  "@types/http-status-codes": "1.2.0",
55
55
  "@types/jsonwebtoken": "9.0.7",
56
- "@types/lodash": "4.17.7",
56
+ "@types/lodash": "4.17.9",
57
57
  "@types/mocha": "10.0.8",
58
58
  "@types/node": "20.x",
59
59
  "@types/request": "2.48.12",
@@ -63,7 +63,7 @@
63
63
  "@types/validator": "13.12.2",
64
64
  "@typescript-eslint/eslint-plugin": "5.57.1",
65
65
  "@typescript-eslint/parser": "5.57.1",
66
- "@villedemontreal/scripting": "2.1.8",
66
+ "@villedemontreal/scripting": "2.1.9",
67
67
  "chai": "4.5.0",
68
68
  "chai-as-promised": "^7.1.1",
69
69
  "eslint": "8.38.0",
package/src/index.ts CHANGED
@@ -13,4 +13,5 @@ export * from './models/gluuUserType';
13
13
  export * from './models/jwtPayload';
14
14
  export * from './models/publicKey';
15
15
  export * from './userValidator';
16
+ export * from './utils/createIdentityFromJwt';
16
17
  export * from './utils/jwtMock';
@@ -167,6 +167,9 @@ export type CitizenAttributes = CommonUserAttributes & {
167
167
  /**
168
168
  * The attributes of an employee: a user on the payroll of the city of Montreal.
169
169
  *
170
+ * Note that a generic user that has all the required attributes of an employee would be detected as such,
171
+ * for testing purposes.
172
+ *
170
173
  * The ID is mapped to the username.
171
174
  */
172
175
  export type EmployeeAttributes = CommonUserAttributes & {
@@ -210,13 +213,20 @@ export type EmployeeAttributes = CommonUserAttributes & {
210
213
  * The account profile that was selected upon logon.
211
214
  */
212
215
  accountProfile: AccountProfile;
216
+ /**
217
+ * Specifies if the account presented as an external user is a generic account, used for testing purposes.
218
+ */
219
+ isGeneric: boolean;
213
220
  };
214
221
 
215
222
  /**
216
- * The attributes of an external user: a user that is not on the payroll of the city of Montreal but actively collaborates
223
+ * The attributes of an external user: a user that is not on the payroll of the city of Montreal but actively collaborates
217
224
  * with the city and has his own internal email and short code (starting with the letter x).
218
-
219
- * The ID is mapped to the username.
225
+ *
226
+ * Note that a generic user that has all the required attributes of an external user would be detected as such,
227
+ * for testing purposes.
228
+ *
229
+ * The ID is mapped to the username.
220
230
  */
221
231
  export type ExternalUserAttributes = CommonUserAttributes & {
222
232
  type: 'external';
@@ -251,12 +261,20 @@ export type ExternalUserAttributes = CommonUserAttributes & {
251
261
  * The account profile that was selected upon logon.
252
262
  */
253
263
  accountProfile: AccountProfile;
264
+ /**
265
+ * Specifies if the account presented as an external user is a generic account, used for testing purposes.
266
+ */
267
+ isGeneric: boolean;
254
268
  };
255
269
 
256
270
  /**
257
271
  * The attributes of a generic user: a fake user used for testing only, that has the right profile or role to perform specific tasks.
258
-
259
- * The ID is mapped to the username.
272
+ *
273
+ * Note that if a generic user has all the required attributes of an employee or an external user, then it will be detected
274
+ * as such an employee or external user, for testing purposes, and not as a generic user.
275
+ * However, citizens and guest users cannot be generic.
276
+ *
277
+ * The ID is mapped to the username.
260
278
  */
261
279
  export type GenericUserAttributes = CommonUserAttributes & {
262
280
  type: 'generic';
@@ -66,6 +66,7 @@ describe('createIdentityFromJwt', () => {
66
66
  firstName: 'John',
67
67
  lastName: 'DOE',
68
68
  accountProfile: 'vdm',
69
+ isGeneric: false,
69
70
  },
70
71
  source: {
71
72
  issuer: 'security-identity-token-api',
@@ -80,7 +81,7 @@ describe('createIdentityFromJwt', () => {
80
81
  });
81
82
  // console.log(JSON.stringify(identity));
82
83
  expect(JSON.stringify(identity)).to.eql(
83
- `{"type":"user","id":"udoejo3","displayName":"John DOE","attributes":{"type":"employee","email":"john.doe@montreal.ca","username":"udoejo3","registrationNumber":"100674051","department":"421408000000","firstName":"John","lastName":"DOE","accountProfile":"vdm"},"source":{"aud":"e5dd632b-cb97-48d7-a310-5147be717cde","issuer":"security-identity-token-api","accessTokenIssuer":"https://login.microsoftonline.com/9f15d2dc-8753-4f83-aac2-a58288d3a4bc/v2.0","env":"dev","realm":"employees","claim":"userName","internalId":"0b64042a-9cce-42dc-b645-cd721cbbc179"}}`
84
+ `{"type":"user","id":"udoejo3","displayName":"John DOE","attributes":{"type":"employee","email":"john.doe@montreal.ca","username":"udoejo3","registrationNumber":"100674051","department":"421408000000","firstName":"John","lastName":"DOE","accountProfile":"vdm","isGeneric":false},"source":{"aud":"e5dd632b-cb97-48d7-a310-5147be717cde","issuer":"security-identity-token-api","accessTokenIssuer":"https://login.microsoftonline.com/9f15d2dc-8753-4f83-aac2-a58288d3a4bc/v2.0","env":"dev","realm":"employees","claim":"userName","internalId":"0b64042a-9cce-42dc-b645-cd721cbbc179"}}`
84
85
  );
85
86
  });
86
87
 
@@ -128,6 +129,7 @@ describe('createIdentityFromJwt', () => {
128
129
  firstName: 'John',
129
130
  lastName: 'DOE',
130
131
  accountProfile: 'spvm',
132
+ isGeneric: false,
131
133
  },
132
134
  source: {
133
135
  issuer: 'security-identity-token-api',
@@ -187,6 +189,7 @@ describe('createIdentityFromJwt', () => {
187
189
  firstName: 'John',
188
190
  lastName: 'DOE',
189
191
  accountProfile: 'vdm-admin',
192
+ isGeneric: false,
190
193
  },
191
194
  source: {
192
195
  issuer: 'security-identity-token-api',
@@ -245,6 +248,7 @@ describe('createIdentityFromJwt', () => {
245
248
  firstName: 'John',
246
249
  lastName: 'DOE',
247
250
  accountProfile: 'vdm-admin',
251
+ isGeneric: false,
248
252
  },
249
253
  source: {
250
254
  issuer: 'security-identity-token-api',
@@ -301,6 +305,7 @@ describe('createIdentityFromJwt', () => {
301
305
  firstName: 'John',
302
306
  lastName: 'DOE',
303
307
  accountProfile: 'vdm',
308
+ isGeneric: false,
304
309
  },
305
310
  source: {
306
311
  issuer: 'security-identity-token-api',
@@ -356,6 +361,7 @@ describe('createIdentityFromJwt', () => {
356
361
  firstName: 'John',
357
362
  lastName: 'DOE',
358
363
  accountProfile: 'vdm',
364
+ isGeneric: false,
359
365
  },
360
366
  source: {
361
367
  issuer: 'security-identity-token-api',
@@ -425,6 +431,124 @@ describe('createIdentityFromJwt', () => {
425
431
  });
426
432
  });
427
433
 
434
+ it('should recognize a generic user as an employee', () => {
435
+ const jwt: any = {
436
+ iss: 'security-identity-token-api',
437
+ exp: 1722376780,
438
+ iat: 1722371805,
439
+ keyId: 6,
440
+ displayName: 'infra-auth-auth-playground-dev',
441
+ aud: 'e5dd632b-cb97-48d7-a310-5147be717cde',
442
+ name: 'C.Generique dsec developpeur2',
443
+ sub: 'mlKfaYaESpCXWGoHE3ej-kCaUBwfsQzqayvRvXXQHJo',
444
+ userName: 'umarba33',
445
+ givenName: 'C.Generique',
446
+ familyName: 'dsec developpeur2',
447
+ email: 'dsec.dev2.test@montreal.ca',
448
+ userType: 'employee',
449
+ department: '4211',
450
+ employeeNumber: '000333',
451
+ oid: '74096b4e-c090-4a97-af04-bbe25dc4f7d6',
452
+ isGenericAccount: true,
453
+ realm: 'employees',
454
+ env: 'dev',
455
+ accessTokenIssuer:
456
+ 'https://login.microsoftonline.com/9f15d2dc-8753-4f83-aac2-a58288d3a4bc/v2.0',
457
+ };
458
+ const identity = createIdentityFromJwt(jwt);
459
+ // console.log(identity);
460
+
461
+ expect(identity.toString()).to.equal(
462
+ 'user:employee:umarba33:C.Generique dsec developpeur2:dsec.dev2.test@montreal.ca:000333:4211:vdm'
463
+ );
464
+
465
+ delete identity.toString;
466
+ expect(identity).to.eql({
467
+ type: 'user',
468
+ id: 'umarba33',
469
+ displayName: 'C.Generique dsec developpeur2',
470
+ attributes: {
471
+ type: 'employee',
472
+ username: 'umarba33',
473
+ email: 'dsec.dev2.test@montreal.ca',
474
+ registrationNumber: '000333',
475
+ department: '4211',
476
+ firstName: 'C.Generique',
477
+ lastName: 'dsec developpeur2',
478
+ accountProfile: 'vdm',
479
+ isGeneric: true,
480
+ },
481
+ source: {
482
+ issuer: 'security-identity-token-api',
483
+ accessTokenIssuer:
484
+ 'https://login.microsoftonline.com/9f15d2dc-8753-4f83-aac2-a58288d3a4bc/v2.0',
485
+ aud: 'e5dd632b-cb97-48d7-a310-5147be717cde',
486
+ env: 'dev',
487
+ realm: 'employees',
488
+ claim: 'userName',
489
+ internalId: '74096b4e-c090-4a97-af04-bbe25dc4f7d6',
490
+ },
491
+ });
492
+ });
493
+
494
+ it('should recognize a generic user as an external user', () => {
495
+ const jwt: any = {
496
+ iss: 'security-identity-token-api',
497
+ exp: 1722376780,
498
+ iat: 1722371805,
499
+ keyId: 6,
500
+ displayName: 'infra-auth-auth-playground-dev',
501
+ aud: 'e5dd632b-cb97-48d7-a310-5147be717cde',
502
+ name: 'C.Generique dsec developpeur2',
503
+ sub: 'mlKfaYaESpCXWGoHE3ej-kCaUBwfsQzqayvRvXXQHJo',
504
+ userName: 'xmarba33',
505
+ givenName: 'C.Generique',
506
+ familyName: 'dsec developpeur2',
507
+ email: 'dsec.dev2.test@montreal.ca',
508
+ userType: 'employee',
509
+ department: '4211',
510
+ oid: '74096b4e-c090-4a97-af04-bbe25dc4f7d6',
511
+ isGenericAccount: true,
512
+ realm: 'employees',
513
+ env: 'dev',
514
+ accessTokenIssuer:
515
+ 'https://login.microsoftonline.com/9f15d2dc-8753-4f83-aac2-a58288d3a4bc/v2.0',
516
+ };
517
+ const identity = createIdentityFromJwt(jwt);
518
+ // console.log(identity);
519
+
520
+ expect(identity.toString()).to.equal(
521
+ 'user:external:xmarba33:C.Generique dsec developpeur2:dsec.dev2.test@montreal.ca:4211:vdm'
522
+ );
523
+
524
+ delete identity.toString;
525
+ expect(identity).to.eql({
526
+ type: 'user',
527
+ id: 'xmarba33',
528
+ displayName: 'C.Generique dsec developpeur2',
529
+ attributes: {
530
+ type: 'external',
531
+ username: 'xmarba33',
532
+ email: 'dsec.dev2.test@montreal.ca',
533
+ department: '4211',
534
+ firstName: 'C.Generique',
535
+ lastName: 'dsec developpeur2',
536
+ accountProfile: 'vdm',
537
+ isGeneric: true,
538
+ },
539
+ source: {
540
+ issuer: 'security-identity-token-api',
541
+ accessTokenIssuer:
542
+ 'https://login.microsoftonline.com/9f15d2dc-8753-4f83-aac2-a58288d3a4bc/v2.0',
543
+ aud: 'e5dd632b-cb97-48d7-a310-5147be717cde',
544
+ env: 'dev',
545
+ realm: 'employees',
546
+ claim: 'userName',
547
+ internalId: '74096b4e-c090-4a97-af04-bbe25dc4f7d6',
548
+ },
549
+ });
550
+ });
551
+
428
552
  it('should recognize a guest user', () => {
429
553
  const jwt: any = {
430
554
  iss: 'security-identity-token-api',
@@ -64,7 +64,7 @@ export function createIdentityFromJwt(jwt: any): Identity {
64
64
  const env = getOptionalStringClaim(jwt, 'env');
65
65
  const userType = getOptionalStringClaim(jwt, 'userType') ?? 'citizen';
66
66
  const accessTokenIssuer = getOptionalStringClaim(jwt, 'accessTokenIssuer');
67
- const isGenericUser = jwt.isGenericAccount;
67
+ const isGenericUser = jwt.isGenericAccount === true;
68
68
 
69
69
  //----------< Anonymous user >-----------------------------------------
70
70
  if (userType === 'anonymous') {
@@ -189,47 +189,6 @@ export function createIdentityFromJwt(jwt: any): Identity {
189
189
  };
190
190
  return result;
191
191
  }
192
- //----------< Generic user >-----------------------------------------
193
- if (isGenericUser === true) {
194
- const type = 'user';
195
- const subType = 'generic-user';
196
- const username = getStringClaim(jwt, usernameClaimName, type, subType);
197
- const result: GenericUserIdentity = {
198
- type,
199
- id: username,
200
- displayName: getStringClaim(jwt, 'name', type, subType),
201
- attributes: {
202
- type: 'generic',
203
- username,
204
- email: getOptionalStringClaim(jwt, 'email'),
205
- department: getOptionalStringClaim(jwt, 'department'),
206
- firstName: getStringClaim(jwt, 'givenName', type, subType),
207
- lastName: getStringClaim(jwt, 'familyName', type, subType),
208
- accountProfile: getAccountProfile(jwt),
209
- },
210
- source: {
211
- aud,
212
- issuer,
213
- accessTokenIssuer,
214
- env,
215
- realm,
216
- claim: usernameClaimName,
217
- internalId: oid ?? sub,
218
- },
219
- toString(this: GenericUserIdentity) {
220
- return encodeComponents(
221
- this.type,
222
- this.attributes.type,
223
- this.id,
224
- this.displayName,
225
- this.attributes.email,
226
- this.attributes.department,
227
- this.attributes.accountProfile
228
- );
229
- },
230
- };
231
- return result;
232
- }
233
192
  //----------< Employee >-----------------------------------------
234
193
  if (userType === 'employee' && isEmployee(jwt)) {
235
194
  const type = 'user';
@@ -251,6 +210,7 @@ export function createIdentityFromJwt(jwt: any): Identity {
251
210
  firstName: getStringClaim(jwt, 'givenName', type, subType),
252
211
  lastName: getStringClaim(jwt, 'familyName', type, subType),
253
212
  accountProfile: getAccountProfile(jwt),
213
+ isGeneric: isGenericUser,
254
214
  },
255
215
  source: {
256
216
  aud,
@@ -296,6 +256,7 @@ export function createIdentityFromJwt(jwt: any): Identity {
296
256
  firstName: getStringClaim(jwt, 'givenName', type, subType),
297
257
  lastName: getStringClaim(jwt, 'familyName', type, subType),
298
258
  accountProfile: getAccountProfile(jwt),
259
+ isGeneric: isGenericUser,
299
260
  },
300
261
  source: {
301
262
  aud,
@@ -360,6 +321,47 @@ export function createIdentityFromJwt(jwt: any): Identity {
360
321
  };
361
322
  return result;
362
323
  }
324
+ //----------< Generic user >-----------------------------------------
325
+ if (isGenericUser) {
326
+ const type = 'user';
327
+ const subType = 'generic-user';
328
+ const username = getStringClaim(jwt, usernameClaimName, type, subType);
329
+ const result: GenericUserIdentity = {
330
+ type,
331
+ id: username,
332
+ displayName: getStringClaim(jwt, 'name', type, subType),
333
+ attributes: {
334
+ type: 'generic',
335
+ username,
336
+ email: getOptionalStringClaim(jwt, 'email'),
337
+ department: getOptionalStringClaim(jwt, 'department'),
338
+ firstName: getStringClaim(jwt, 'givenName', type, subType),
339
+ lastName: getStringClaim(jwt, 'familyName', type, subType),
340
+ accountProfile: getAccountProfile(jwt),
341
+ },
342
+ source: {
343
+ aud,
344
+ issuer,
345
+ accessTokenIssuer,
346
+ env,
347
+ realm,
348
+ claim: usernameClaimName,
349
+ internalId: oid ?? sub,
350
+ },
351
+ toString(this: GenericUserIdentity) {
352
+ return encodeComponents(
353
+ this.type,
354
+ this.attributes.type,
355
+ this.id,
356
+ this.displayName,
357
+ this.attributes.email,
358
+ this.attributes.department,
359
+ this.attributes.accountProfile
360
+ );
361
+ },
362
+ };
363
+ return result;
364
+ }
363
365
  //----------< Unknown user type >-----------------------------------------
364
366
  const username = getOptionalStringClaim(jwt, usernameClaimName);
365
367
  const email = getOptionalStringClaim(jwt, 'email');