@axinom/mosaic-db-common 0.52.0-rc.8 → 0.52.0

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.
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/auth/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAYjC,OAAO,EACL,sBAAsB,EACtB,iCAAiC,EACjC,gCAAgC,EACjC,MAAM,0BAA0B,CAAC;AAElC;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,gCAAgC,GAAG,SAAS,EACrD,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,IAAI,CAAC,MAAM,CAAC,CAAC;AAEhB;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,gCAAgC,GAAG,SAAS,EACrD,MAAM,EAAE,MAAM,GACb,IAAI,CAAC,MAAM,CAAC,CAAC;AAahB;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,gCAAgC,GAAG,SAAS,EACrD,SAAS,CAAC,EAAE,MAAM,GACjB,IAAI,CAAC,MAAM,CAAC,CAAC;AAEhB;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,gCAAgC,GAAG,SAAS,GACpD,IAAI,CAAC,MAAM,CAAC,CAAC;AAyBhB;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EACH,sBAAsB,GACtB,iCAAiC,GACjC,SAAS,EACb,MAAM,EAAE,MAAM,GACb,IAAI,CAAC,MAAM,CAAC,CASd"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/auth/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAiBjC,OAAO,EACL,sBAAsB,EACtB,iCAAiC,EACjC,gCAAgC,EACjC,MAAM,0BAA0B,CAAC;AAElC;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,gCAAgC,GAAG,SAAS,EACrD,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,IAAI,CAAC,MAAM,CAAC,CAAC;AAEhB;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,gCAAgC,GAAG,SAAS,EACrD,MAAM,EAAE,MAAM,GACb,IAAI,CAAC,MAAM,CAAC,CAAC;AAahB;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,gCAAgC,GAAG,SAAS,EACrD,SAAS,CAAC,EAAE,MAAM,GACjB,IAAI,CAAC,MAAM,CAAC,CAAC;AAEhB;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,gCAAgC,GAAG,SAAS,GACpD,IAAI,CAAC,MAAM,CAAC,CAAC;AAuChB;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EACH,sBAAsB,GACtB,iCAAiC,GACjC,SAAS,EACb,MAAM,EAAE,MAAM,GACb,IAAI,CAAC,MAAM,CAAC,CASd"}
@@ -7,13 +7,21 @@ function buildPgSettings(subject, dbRole, serviceId) {
7
7
  }
8
8
  exports.buildPgSettings = buildPgSettings;
9
9
  function buildAuthPgSettings(subject, serviceId) {
10
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
11
- const pgSettings = Object.assign(Object.assign({ [constants_1.MOSAIC_AUTH_SUBJECT_NAME]: (_a = subject === null || subject === void 0 ? void 0 : subject.name) !== null && _a !== void 0 ? _a : constants_1.DEFAULT_AUTH_SUBJECT_NAME, [constants_1.MOSAIC_TENANT_ID]: (_b = subject === null || subject === void 0 ? void 0 : subject.tenantId) !== null && _b !== void 0 ? _b : '', [constants_1.MOSAIC_ENVIRONMENT_ID]: (_c = subject === null || subject === void 0 ? void 0 : subject.environmentId) !== null && _c !== void 0 ? _c : '', [constants_1.PGMEMENTO_SESSION_INFO]: JSON.stringify({
10
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v;
11
+ const pgSettings = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({
12
+ // Common settings
13
+ [constants_1.MOSAIC_AUTH_SUBJECT_NAME]: (_a = subject === null || subject === void 0 ? void 0 : subject.name) !== null && _a !== void 0 ? _a : constants_1.DEFAULT_AUTH_SUBJECT_NAME, [constants_1.MOSAIC_TENANT_ID]: (_b = subject === null || subject === void 0 ? void 0 : subject.tenantId) !== null && _b !== void 0 ? _b : '', [constants_1.MOSAIC_ENVIRONMENT_ID]: (_c = subject === null || subject === void 0 ? void 0 : subject.environmentId) !== null && _c !== void 0 ? _c : '', [constants_1.PGMEMENTO_SESSION_INFO]: JSON.stringify({
12
14
  environmentId: subject === null || subject === void 0 ? void 0 : subject.environmentId,
13
15
  tenantId: subject === null || subject === void 0 ? void 0 : subject.tenantId,
14
16
  sub: subject === null || subject === void 0 ? void 0 : subject.sub,
15
17
  }) }, (serviceId && { [constants_1.MOSAIC_AUTH_TAGS]: (_f = (_e = (_d = subject === null || subject === void 0 ? void 0 : subject.tags) === null || _d === void 0 ? void 0 : _d.join) === null || _e === void 0 ? void 0 : _e.call(_d, ',')) !== null && _f !== void 0 ? _f : '' })), (serviceId && {
16
18
  [constants_1.MOSAIC_AUTH_PERMISSIONS]: (_k = (_j = (_h = (_g = subject === null || subject === void 0 ? void 0 : subject.permissions) === null || _g === void 0 ? void 0 : _g[serviceId]) === null || _h === void 0 ? void 0 : _h.join) === null || _j === void 0 ? void 0 : _j.call(_h, ',')) !== null && _k !== void 0 ? _k : '',
19
+ })), {
20
+ // ID Service specific settings
21
+ [constants_1.MOSAIC_ID_SERVICE_AUTH_SUBJECT_NAME]: (_l = subject === null || subject === void 0 ? void 0 : subject.name) !== null && _l !== void 0 ? _l : constants_1.DEFAULT_AUTH_SUBJECT_NAME, [constants_1.MOSAIC_ID_SERVICE_TENANT_ID]: (_m = subject === null || subject === void 0 ? void 0 : subject.tenantId) !== null && _m !== void 0 ? _m : '', [constants_1.MOSAIC_ID_SERVICE_ENVIRONMENT_ID]: (_o = subject === null || subject === void 0 ? void 0 : subject.environmentId) !== null && _o !== void 0 ? _o : '' }), (serviceId && {
22
+ [constants_1.MOSAIC_ID_SERVICE_AUTH_TAGS]: (_r = (_q = (_p = subject === null || subject === void 0 ? void 0 : subject.tags) === null || _p === void 0 ? void 0 : _p.join) === null || _q === void 0 ? void 0 : _q.call(_p, ',')) !== null && _r !== void 0 ? _r : '',
23
+ })), (serviceId && {
24
+ [constants_1.MOSAIC_ID_SERVICE_AUTH_PERMISSIONS]: (_v = (_u = (_t = (_s = subject === null || subject === void 0 ? void 0 : subject.permissions) === null || _s === void 0 ? void 0 : _s[serviceId]) === null || _t === void 0 ? void 0 : _t.join) === null || _u === void 0 ? void 0 : _u.call(_t, ',')) !== null && _v !== void 0 ? _v : '',
17
25
  }));
18
26
  return pgSettings;
19
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/auth/helpers.ts"],"names":[],"mappings":";;;AACA,4CAUsB;AAiCtB,SAAgB,eAAe,CAC7B,OAAqD,EACrD,MAAc,EACd,SAAkB;IAElB,uBACE,IAAI,EAAE,MAAM,IACT,mBAAmB,CAAC,OAAO,EAAE,SAAS,CAAC,EAC1C;AACJ,CAAC;AATD,0CASC;AAyBD,SAAgB,mBAAmB,CACjC,OAAqD,EACrD,SAAkB;;IAElB,MAAM,UAAU,iCACd,CAAC,oCAAwB,CAAC,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,mCAAI,qCAAyB,EACtE,CAAC,4BAAgB,CAAC,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ,mCAAI,EAAE,EAC3C,CAAC,iCAAqB,CAAC,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,aAAa,mCAAI,EAAE,EACrD,CAAC,kCAAsB,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC;YACvC,aAAa,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,aAAa;YACrC,QAAQ,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ;YAC3B,GAAG,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,GAAG;SAClB,CAAC,IACC,CAAC,SAAS,IAAI,EAAE,CAAC,4BAAgB,CAAC,EAAE,MAAA,MAAA,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,0CAAE,IAAI,mDAAG,GAAG,CAAC,mCAAI,EAAE,EAAE,CAAC,GACvE,CAAC,SAAS,IAAI;QACf,CAAC,mCAAuB,CAAC,EACvB,MAAA,MAAA,MAAA,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,0CAAG,SAAS,CAAC,0CAAE,IAAI,mDAAG,GAAG,CAAC,mCAAI,EAAE;KACvD,CAAC,CACH,CAAC;IAEF,OAAO,UAAU,CAAC;AACpB,CAAC;AArBD,kDAqBC;AAED;;;;;;GAMG;AACH,SAAgB,0BAA0B,CACxC,OAGa,EACb,MAAc;;IAEd,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,CAAC,oCAAwB,CAAC,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,mCAAI,qCAAyB;QACtE,CAAC,4BAAgB,CAAC,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ,mCAAI,EAAE;QAC3C,CAAC,iCAAqB,CAAC,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,aAAa,mCAAI,EAAE;QACrD,CAAC,mCAAuB,CAAC,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,GAAG,mCAAI,EAAE;QAC7C,CAAC,kCAAsB,CAAC,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,mCAAI,EAAE;KACnD,CAAC;AACJ,CAAC;AAfD,gEAeC"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/auth/helpers.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,15 @@ export declare const MOSAIC_AUTH_TAGS = "mosaic.auth.tags";
8
8
  export declare const MOSAIC_TENANT_ID = "mosaic.tenant_id";
9
9
  /** PgSettings key to set the PostgreSQL parameter for storing authentication token environment id. */
10
10
  export declare const MOSAIC_ENVIRONMENT_ID = "mosaic.environment_id";
11
+ /**
12
+ * ID Service specific PgSettings keys to set the PostgreSQL parameters
13
+ * (Values copied from PgSetConfigKey enum for easier reference)
14
+ */
15
+ export declare const MOSAIC_ID_SERVICE_TENANT_ID = "axinom.auth.tenantId";
16
+ export declare const MOSAIC_ID_SERVICE_ENVIRONMENT_ID = "axinom.auth.applicationId";
17
+ export declare const MOSAIC_ID_SERVICE_AUTH_SUBJECT_NAME = "axinom.auth.user";
18
+ export declare const MOSAIC_ID_SERVICE_AUTH_PERMISSIONS = "axinom.auth.permissions";
19
+ export declare const MOSAIC_ID_SERVICE_AUTH_TAGS = "axinom.auth.tags";
11
20
  /** Fallback subject name when subject name is not set in the token. */
12
21
  export declare const DEFAULT_AUTH_SUBJECT_NAME = "Anonymous";
13
22
  /** Fallback username for non-graphql DB requests */
@@ -1 +1 @@
1
- {"version":3,"file":"pg-auth-settings-keys.d.ts","sourceRoot":"","sources":["../../src/constants/pg-auth-settings-keys.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,eAAO,MAAM,wBAAwB,6BAA6B,CAAC;AACnE,mGAAmG;AACnG,eAAO,MAAM,uBAAuB,4BAA4B,CAAC;AACjE,4FAA4F;AAC5F,eAAO,MAAM,gBAAgB,qBAAqB,CAAC;AACnD,iGAAiG;AACjG,eAAO,MAAM,gBAAgB,qBAAqB,CAAC;AACnD,sGAAsG;AACtG,eAAO,MAAM,qBAAqB,0BAA0B,CAAC;AAE7D,uEAAuE;AACvE,eAAO,MAAM,yBAAyB,cAAc,CAAC;AAErD,oDAAoD;AACpD,eAAO,MAAM,mBAAmB,YAAY,CAAC;AAE7C,kFAAkF;AAClF,eAAO,MAAM,uBAAuB,WAAW,CAAC;AAEhD,kGAAkG;AAClG,eAAO,MAAM,uBAAuB,wBAAwB,CAAC;AAE7D,qGAAqG;AACrG,eAAO,MAAM,sBAAsB,2BAA2B,CAAC;AAE/D,0GAA0G;AAC1G,eAAO,MAAM,sBAAsB,2BAA2B,CAAC"}
1
+ {"version":3,"file":"pg-auth-settings-keys.d.ts","sourceRoot":"","sources":["../../src/constants/pg-auth-settings-keys.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,eAAO,MAAM,wBAAwB,6BAA6B,CAAC;AACnE,mGAAmG;AACnG,eAAO,MAAM,uBAAuB,4BAA4B,CAAC;AACjE,4FAA4F;AAC5F,eAAO,MAAM,gBAAgB,qBAAqB,CAAC;AACnD,iGAAiG;AACjG,eAAO,MAAM,gBAAgB,qBAAqB,CAAC;AACnD,sGAAsG;AACtG,eAAO,MAAM,qBAAqB,0BAA0B,CAAC;AAE7D;;;GAGG;AACH,eAAO,MAAM,2BAA2B,yBAAyB,CAAC;AAClE,eAAO,MAAM,gCAAgC,8BAA8B,CAAC;AAC5E,eAAO,MAAM,mCAAmC,qBAAqB,CAAC;AACtE,eAAO,MAAM,kCAAkC,4BAA4B,CAAC;AAC5E,eAAO,MAAM,2BAA2B,qBAAqB,CAAC;AAE9D,uEAAuE;AACvE,eAAO,MAAM,yBAAyB,cAAc,CAAC;AAErD,oDAAoD;AACpD,eAAO,MAAM,mBAAmB,YAAY,CAAC;AAE7C,kFAAkF;AAClF,eAAO,MAAM,uBAAuB,WAAW,CAAC;AAEhD,kGAAkG;AAClG,eAAO,MAAM,uBAAuB,wBAAwB,CAAC;AAE7D,qGAAqG;AACrG,eAAO,MAAM,sBAAsB,2BAA2B,CAAC;AAE/D,0GAA0G;AAC1G,eAAO,MAAM,sBAAsB,2BAA2B,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PGMEMENTO_SESSION_INFO = exports.MOSAIC_AUTH_PROFILE_ID = exports.MOSAIC_AUTH_END_USER_ID = exports.DEFAULT_SYSTEM_USERNAME = exports.DEFAULT_DB_USERNAME = exports.DEFAULT_AUTH_SUBJECT_NAME = exports.MOSAIC_ENVIRONMENT_ID = exports.MOSAIC_TENANT_ID = exports.MOSAIC_AUTH_TAGS = exports.MOSAIC_AUTH_PERMISSIONS = exports.MOSAIC_AUTH_SUBJECT_NAME = void 0;
3
+ exports.PGMEMENTO_SESSION_INFO = exports.MOSAIC_AUTH_PROFILE_ID = exports.MOSAIC_AUTH_END_USER_ID = exports.DEFAULT_SYSTEM_USERNAME = exports.DEFAULT_DB_USERNAME = exports.DEFAULT_AUTH_SUBJECT_NAME = exports.MOSAIC_ID_SERVICE_AUTH_TAGS = exports.MOSAIC_ID_SERVICE_AUTH_PERMISSIONS = exports.MOSAIC_ID_SERVICE_AUTH_SUBJECT_NAME = exports.MOSAIC_ID_SERVICE_ENVIRONMENT_ID = exports.MOSAIC_ID_SERVICE_TENANT_ID = exports.MOSAIC_ENVIRONMENT_ID = exports.MOSAIC_TENANT_ID = exports.MOSAIC_AUTH_TAGS = exports.MOSAIC_AUTH_PERMISSIONS = exports.MOSAIC_AUTH_SUBJECT_NAME = void 0;
4
4
  /** PgSettings key to set the PostgreSQL parameter for storing authentication subject name. */
5
5
  exports.MOSAIC_AUTH_SUBJECT_NAME = 'mosaic.auth.subject_name';
6
6
  /** PgSettings key to set the PostgreSQL parameter for storing authentication token permissions. */
@@ -11,6 +11,15 @@ exports.MOSAIC_AUTH_TAGS = 'mosaic.auth.tags';
11
11
  exports.MOSAIC_TENANT_ID = 'mosaic.tenant_id';
12
12
  /** PgSettings key to set the PostgreSQL parameter for storing authentication token environment id. */
13
13
  exports.MOSAIC_ENVIRONMENT_ID = 'mosaic.environment_id';
14
+ /**
15
+ * ID Service specific PgSettings keys to set the PostgreSQL parameters
16
+ * (Values copied from PgSetConfigKey enum for easier reference)
17
+ */
18
+ exports.MOSAIC_ID_SERVICE_TENANT_ID = 'axinom.auth.tenantId';
19
+ exports.MOSAIC_ID_SERVICE_ENVIRONMENT_ID = 'axinom.auth.applicationId';
20
+ exports.MOSAIC_ID_SERVICE_AUTH_SUBJECT_NAME = 'axinom.auth.user';
21
+ exports.MOSAIC_ID_SERVICE_AUTH_PERMISSIONS = 'axinom.auth.permissions';
22
+ exports.MOSAIC_ID_SERVICE_AUTH_TAGS = 'axinom.auth.tags';
14
23
  /** Fallback subject name when subject name is not set in the token. */
15
24
  exports.DEFAULT_AUTH_SUBJECT_NAME = 'Anonymous';
16
25
  /** Fallback username for non-graphql DB requests */
@@ -1 +1 @@
1
- {"version":3,"file":"pg-auth-settings-keys.js","sourceRoot":"","sources":["../../src/constants/pg-auth-settings-keys.ts"],"names":[],"mappings":";;;AAAA,8FAA8F;AACjF,QAAA,wBAAwB,GAAG,0BAA0B,CAAC;AACnE,mGAAmG;AACtF,QAAA,uBAAuB,GAAG,yBAAyB,CAAC;AACjE,4FAA4F;AAC/E,QAAA,gBAAgB,GAAG,kBAAkB,CAAC;AACnD,iGAAiG;AACpF,QAAA,gBAAgB,GAAG,kBAAkB,CAAC;AACnD,sGAAsG;AACzF,QAAA,qBAAqB,GAAG,uBAAuB,CAAC;AAE7D,uEAAuE;AAC1D,QAAA,yBAAyB,GAAG,WAAW,CAAC;AAErD,oDAAoD;AACvC,QAAA,mBAAmB,GAAG,SAAS,CAAC;AAE7C,kFAAkF;AACrE,QAAA,uBAAuB,GAAG,QAAQ,CAAC;AAEhD,kGAAkG;AACrF,QAAA,uBAAuB,GAAG,qBAAqB,CAAC;AAE7D,qGAAqG;AACxF,QAAA,sBAAsB,GAAG,wBAAwB,CAAC;AAE/D,0GAA0G;AAC7F,QAAA,sBAAsB,GAAG,wBAAwB,CAAC"}
1
+ {"version":3,"file":"pg-auth-settings-keys.js","sourceRoot":"","sources":["../../src/constants/pg-auth-settings-keys.ts"],"names":[],"mappings":";;;AAAA,8FAA8F;AACjF,QAAA,wBAAwB,GAAG,0BAA0B,CAAC;AACnE,mGAAmG;AACtF,QAAA,uBAAuB,GAAG,yBAAyB,CAAC;AACjE,4FAA4F;AAC/E,QAAA,gBAAgB,GAAG,kBAAkB,CAAC;AACnD,iGAAiG;AACpF,QAAA,gBAAgB,GAAG,kBAAkB,CAAC;AACnD,sGAAsG;AACzF,QAAA,qBAAqB,GAAG,uBAAuB,CAAC;AAE7D;;;GAGG;AACU,QAAA,2BAA2B,GAAG,sBAAsB,CAAC;AACrD,QAAA,gCAAgC,GAAG,2BAA2B,CAAC;AAC/D,QAAA,mCAAmC,GAAG,kBAAkB,CAAC;AACzD,QAAA,kCAAkC,GAAG,yBAAyB,CAAC;AAC/D,QAAA,2BAA2B,GAAG,kBAAkB,CAAC;AAE9D,uEAAuE;AAC1D,QAAA,yBAAyB,GAAG,WAAW,CAAC;AAErD,oDAAoD;AACvC,QAAA,mBAAmB,GAAG,SAAS,CAAC;AAE7C,kFAAkF;AACrE,QAAA,uBAAuB,GAAG,QAAQ,CAAC;AAEhD,kGAAkG;AACrF,QAAA,uBAAuB,GAAG,qBAAqB,CAAC;AAE7D,qGAAqG;AACxF,QAAA,sBAAsB,GAAG,wBAAwB,CAAC;AAE/D,0GAA0G;AAC7F,QAAA,sBAAsB,GAAG,wBAAwB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@axinom/mosaic-db-common",
3
- "version": "0.52.0-rc.8",
3
+ "version": "0.52.0",
4
4
  "description": "This library encapsulates database-related functionality to develop Mosaic based services.",
5
5
  "author": "Axinom",
6
6
  "license": "PROPRIETARY",
@@ -55,5 +55,5 @@
55
55
  "publishConfig": {
56
56
  "access": "public"
57
57
  },
58
- "gitHead": "b423cad67c00b75057d5304354ba9429e69d2d03"
58
+ "gitHead": "c484ceff643b3ac656a5a5aebb30394be58ee2e0"
59
59
  }
@@ -45,6 +45,11 @@ describe('helpers', () => {
45
45
  'mosaic.environment_id': '',
46
46
  'pgmemento.session_info': '{}',
47
47
  'mosaic.tenant_id': '',
48
+ 'axinom.auth.user': 'Anonymous',
49
+ 'axinom.auth.tenantId': '',
50
+ 'axinom.auth.applicationId': '',
51
+ 'axinom.auth.permissions': '',
52
+ 'axinom.auth.tags': '',
48
53
  });
49
54
  });
50
55
 
@@ -65,6 +70,11 @@ describe('helpers', () => {
65
70
  'mosaic.environment_id': '',
66
71
  'pgmemento.session_info': '{"environmentId":"","tenantId":""}',
67
72
  'mosaic.tenant_id': '',
73
+ 'axinom.auth.user': 'username',
74
+ 'axinom.auth.tenantId': '',
75
+ 'axinom.auth.applicationId': '',
76
+ 'axinom.auth.permissions': '',
77
+ 'axinom.auth.tags': '',
68
78
  });
69
79
  });
70
80
 
@@ -86,6 +96,11 @@ describe('helpers', () => {
86
96
  'pgmemento.session_info':
87
97
  '{"environmentId":"environment-id","tenantId":"tenant-id","sub":"some-sub"}',
88
98
  'mosaic.tenant_id': 'tenant-id',
99
+ 'axinom.auth.user': 'username',
100
+ 'axinom.auth.tenantId': 'tenant-id',
101
+ 'axinom.auth.applicationId': 'environment-id',
102
+ 'axinom.auth.permissions': 'T1,T2',
103
+ 'axinom.auth.tags': 'Tag1,Tag2',
89
104
  });
90
105
  });
91
106
 
@@ -101,6 +116,9 @@ describe('helpers', () => {
101
116
  'pgmemento.session_info':
102
117
  '{"environmentId":"environment-id","tenantId":"tenant-id","sub":"some-sub"}',
103
118
  'mosaic.tenant_id': 'tenant-id',
119
+ 'axinom.auth.user': 'username',
120
+ 'axinom.auth.tenantId': 'tenant-id',
121
+ 'axinom.auth.applicationId': 'environment-id',
104
122
  });
105
123
  });
106
124
  });
@@ -118,6 +136,11 @@ describe('helpers', () => {
118
136
  'mosaic.environment_id': '',
119
137
  'pgmemento.session_info': '{"environmentId":"","tenantId":""}',
120
138
  'mosaic.tenant_id': '',
139
+ 'axinom.auth.user': 'username',
140
+ 'axinom.auth.tenantId': '',
141
+ 'axinom.auth.applicationId': '',
142
+ 'axinom.auth.permissions': '',
143
+ 'axinom.auth.tags': '',
121
144
  });
122
145
  });
123
146
 
@@ -134,6 +157,11 @@ describe('helpers', () => {
134
157
  'pgmemento.session_info':
135
158
  '{"environmentId":"environment-id","tenantId":"tenant-id","sub":"some-sub"}',
136
159
  'mosaic.tenant_id': 'tenant-id',
160
+ 'axinom.auth.user': 'username',
161
+ 'axinom.auth.tenantId': 'tenant-id',
162
+ 'axinom.auth.applicationId': 'environment-id',
163
+ 'axinom.auth.permissions': 'T1,T2',
164
+ 'axinom.auth.tags': 'Tag1,Tag2',
137
165
  });
138
166
  });
139
167
 
@@ -148,6 +176,9 @@ describe('helpers', () => {
148
176
  'pgmemento.session_info':
149
177
  '{"environmentId":"environment-id","tenantId":"tenant-id","sub":"some-sub"}',
150
178
  'mosaic.tenant_id': 'tenant-id',
179
+ 'axinom.auth.user': 'username',
180
+ 'axinom.auth.tenantId': 'tenant-id',
181
+ 'axinom.auth.applicationId': 'environment-id',
151
182
  });
152
183
  });
153
184
  });
@@ -7,6 +7,11 @@ import {
7
7
  MOSAIC_AUTH_SUBJECT_NAME,
8
8
  MOSAIC_AUTH_TAGS,
9
9
  MOSAIC_ENVIRONMENT_ID,
10
+ MOSAIC_ID_SERVICE_AUTH_PERMISSIONS,
11
+ MOSAIC_ID_SERVICE_AUTH_SUBJECT_NAME,
12
+ MOSAIC_ID_SERVICE_AUTH_TAGS,
13
+ MOSAIC_ID_SERVICE_ENVIRONMENT_ID,
14
+ MOSAIC_ID_SERVICE_TENANT_ID,
10
15
  MOSAIC_TENANT_ID,
11
16
  PGMEMENTO_SESSION_INFO,
12
17
  } from '../constants';
@@ -81,6 +86,7 @@ export function buildAuthPgSettings(
81
86
  serviceId?: string,
82
87
  ): Dict<string> {
83
88
  const pgSettings: Dict<string> = {
89
+ // Common settings
84
90
  [MOSAIC_AUTH_SUBJECT_NAME]: subject?.name ?? DEFAULT_AUTH_SUBJECT_NAME,
85
91
  [MOSAIC_TENANT_ID]: subject?.tenantId ?? '',
86
92
  [MOSAIC_ENVIRONMENT_ID]: subject?.environmentId ?? '',
@@ -94,6 +100,19 @@ export function buildAuthPgSettings(
94
100
  [MOSAIC_AUTH_PERMISSIONS]:
95
101
  subject?.permissions?.[serviceId]?.join?.(',') ?? '',
96
102
  }),
103
+
104
+ // ID Service specific settings
105
+ [MOSAIC_ID_SERVICE_AUTH_SUBJECT_NAME]:
106
+ subject?.name ?? DEFAULT_AUTH_SUBJECT_NAME,
107
+ [MOSAIC_ID_SERVICE_TENANT_ID]: subject?.tenantId ?? '',
108
+ [MOSAIC_ID_SERVICE_ENVIRONMENT_ID]: subject?.environmentId ?? '',
109
+ ...(serviceId && {
110
+ [MOSAIC_ID_SERVICE_AUTH_TAGS]: subject?.tags?.join?.(',') ?? '',
111
+ }),
112
+ ...(serviceId && {
113
+ [MOSAIC_ID_SERVICE_AUTH_PERMISSIONS]:
114
+ subject?.permissions?.[serviceId]?.join?.(',') ?? '',
115
+ }),
97
116
  };
98
117
 
99
118
  return pgSettings;
@@ -9,6 +9,16 @@ export const MOSAIC_TENANT_ID = 'mosaic.tenant_id';
9
9
  /** PgSettings key to set the PostgreSQL parameter for storing authentication token environment id. */
10
10
  export const MOSAIC_ENVIRONMENT_ID = 'mosaic.environment_id';
11
11
 
12
+ /**
13
+ * ID Service specific PgSettings keys to set the PostgreSQL parameters
14
+ * (Values copied from PgSetConfigKey enum for easier reference)
15
+ */
16
+ export const MOSAIC_ID_SERVICE_TENANT_ID = 'axinom.auth.tenantId';
17
+ export const MOSAIC_ID_SERVICE_ENVIRONMENT_ID = 'axinom.auth.applicationId';
18
+ export const MOSAIC_ID_SERVICE_AUTH_SUBJECT_NAME = 'axinom.auth.user';
19
+ export const MOSAIC_ID_SERVICE_AUTH_PERMISSIONS = 'axinom.auth.permissions';
20
+ export const MOSAIC_ID_SERVICE_AUTH_TAGS = 'axinom.auth.tags';
21
+
12
22
  /** Fallback subject name when subject name is not set in the token. */
13
23
  export const DEFAULT_AUTH_SUBJECT_NAME = 'Anonymous';
14
24