@lilaquadrat/studio 10.5.2 → 10.7.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,6 +1,6 @@
1
1
  import { FastifyPluginAsync } from 'fastify';
2
- import { isM2M } from './isM2M.js';
3
- export { isM2M };
2
+ import { tokenRoles } from './tokenRoles.js';
3
+ export { tokenRoles };
4
4
  type OAuthJwtUser = {
5
5
  given_name: string;
6
6
  family_name: string;
@@ -18,8 +18,17 @@ type OAuthJwtUser = {
18
18
  email_verified: boolean;
19
19
  gty?: string;
20
20
  scope?: string;
21
+ /** legacy Auth0 RBAC claim. Keycloak carries authorisation in realm_access/resource_access instead. */
21
22
  permissions?: string[];
22
23
  azp?: string;
24
+ client_id?: string;
25
+ preferred_username?: string;
26
+ realm_access?: {
27
+ roles?: string[];
28
+ };
29
+ resource_access?: Record<string, {
30
+ roles?: string[];
31
+ }>;
23
32
  customerInternalId?: any;
24
33
  };
25
34
  declare module '@fastify/jwt' {
@@ -3,9 +3,9 @@ import fp from 'fastify-plugin';
3
3
  import fastifyJwt from '@fastify/jwt';
4
4
  import jwksRsa from 'jwks-rsa';
5
5
  import respondCode from '../functions/respondCode.js';
6
+ import { tokenRoles } from './tokenRoles.js';
6
7
  import auth0config from './auth0config.js';
7
- import { isM2M } from './isM2M.js';
8
- export { isM2M };
8
+ export { tokenRoles };
9
9
  const TRANSIENT_NETWORK_CODES = new Set([
10
10
  'ETIMEDOUT', 'ECONNRESET', 'ECONNREFUSED', 'ENOTFOUND', 'EAI_AGAIN', 'ECONNABORTED',
11
11
  ]);
@@ -106,13 +106,23 @@ const authPlugin = async (fastify) => {
106
106
  return respondCode(upstream ? "SERVICE_UNAVAILABLE" : "UNAUTHORIZED", reply);
107
107
  }
108
108
  });
109
- fastify.decorate('authenticateM2M', async (request, reply) => {
109
+ /**
110
+ * Authorise by ROLE rather than by caller type.
111
+ *
112
+ * Replaces the old `authenticateM2M`, which asked "is this a machine token?" and let any service
113
+ * account through. Classifying the caller was never the security question — what matters is
114
+ * whether this token is entitled to the operation. A service account carries the role via
115
+ * Keycloak realm roles; a user could be granted the same role and pass identically.
116
+ */
117
+ fastify.decorate('authorize', (...roles) => async (request, reply) => {
110
118
  try {
111
119
  await request.jwtVerify();
112
- if (!isM2M(request.user)) {
120
+ request.auth = request.user;
121
+ const granted = tokenRoles(request.user);
122
+ if (!roles.some((single) => granted.includes(single))) {
123
+ request.requestLog?.warn?.('auth.forbidden', { required: roles, granted });
113
124
  return respondCode("FORBIDDEN", reply);
114
125
  }
115
- request.auth = request.user;
116
126
  }
117
127
  catch (err) {
118
128
  const upstream = isTransientAuthError(err);
@@ -145,7 +155,7 @@ const authPlugin = async (fastify) => {
145
155
  email_verified: true
146
156
  };
147
157
  });
148
- fastify.decorate('authenticateM2M', async (request, reply) => {
158
+ fastify.decorate('authorize', (..._roles) => async (request, _reply) => {
149
159
  request.auth = {
150
160
  sub: 'dev-m2m@clients',
151
161
  given_name: 'M2M',
@@ -1 +1 @@
1
- {"version":3,"file":"authPlugin.js","sourceRoot":"","sources":["../../../src/helpers/authPlugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"authPlugin.js","sourceRoot":"","sources":["../../../src/helpers/authPlugin.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Every role a token carries, from both realm-level and per-client mappings.
3
+ *
4
+ * Keycloak emits these natively through the default `roles` client scope — no protocol mapper and no
5
+ * realm-specific configuration required. Authorisation is therefore expressed as role assignments in
6
+ * Keycloak rather than as a hardcoded claim on each client.
7
+ *
8
+ * IMPORTANT: this helper must stay dependency-free. It is imported by me.service, which is reachable
9
+ * from non-Fastify NATS workers via the package barrel. It must NOT import authPlugin or anything
10
+ * that pulls in `fastify-plugin`, or those workers crash at import time with ERR_MODULE_NOT_FOUND.
11
+ * (This is why it lives here rather than alongside the Fastify decorator that also uses it.)
12
+ */
13
+ export declare const tokenRoles: (auth: {
14
+ realm_access?: {
15
+ roles?: string[];
16
+ };
17
+ resource_access?: Record<string, {
18
+ roles?: string[];
19
+ }>;
20
+ } | undefined) => string[];
21
+ export default tokenRoles;
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Every role a token carries, from both realm-level and per-client mappings.
3
+ *
4
+ * Keycloak emits these natively through the default `roles` client scope — no protocol mapper and no
5
+ * realm-specific configuration required. Authorisation is therefore expressed as role assignments in
6
+ * Keycloak rather than as a hardcoded claim on each client.
7
+ *
8
+ * IMPORTANT: this helper must stay dependency-free. It is imported by me.service, which is reachable
9
+ * from non-Fastify NATS workers via the package barrel. It must NOT import authPlugin or anything
10
+ * that pulls in `fastify-plugin`, or those workers crash at import time with ERR_MODULE_NOT_FOUND.
11
+ * (This is why it lives here rather than alongside the Fastify decorator that also uses it.)
12
+ */
13
+ export const tokenRoles = (auth) => {
14
+ if (!auth)
15
+ return [];
16
+ const realm = auth.realm_access?.roles ?? [];
17
+ const perClient = Object.values(auth.resource_access ?? {}).flatMap((single) => single.roles ?? []);
18
+ return [...new Set([...realm, ...perClient])];
19
+ };
20
+ export default tokenRoles;
21
+ //# sourceMappingURL=tokenRoles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokenRoles.js","sourceRoot":"","sources":["../../../src/helpers/tokenRoles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAGd,EAAY,EAAE;IAEzB,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC;IAErB,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,KAAK,IAAI,EAAE,CAAC;IAC7C,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IAEpG,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AAEhD,CAAC,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -1,11 +1,19 @@
1
1
  /**
2
- * Standalone Auth0/OIDC JWT verification — usable outside Fastify (e.g. the chat
3
- * websocket server, which @fastify/jwt's request-bound jwtVerify can't reach).
2
+ * Standalone OIDC JWT verification — usable outside Fastify (e.g. the chat websocket
3
+ * server, which @fastify/jwt's request-bound jwtVerify can't reach).
4
4
  * Verifies an RS256 token's signature against the IdP JWKS and validates the
5
5
  * standard time/issuer/audience claims. Returns the decoded claims on success;
6
6
  * throws on any failure (bad signature, expired, wrong issuer, unknown kid).
7
7
  *
8
- * Mirrors authPlugin's RS256 + jwks-rsa approach so HTTP and WS trust the same keys.
8
+ * Mirrors authPlugin's RS256 + jwks-rsa approach so HTTP and WS trust the same keys —
9
+ * including its DUAL-ISSUER routing: when no explicit jwksUri is passed, the key set is
10
+ * chosen by the token's own `iss`, so Auth0 and Keycloak tokens both verify. Without this
11
+ * every websocket connection breaks the moment user auth moves to Keycloak, because the
12
+ * defaults (JWT_URL/JWT_ISSUER) only ever describe one issuer.
13
+ *
14
+ * Selecting the key set by the (still unverified) `iss` is safe: the signature is then
15
+ * checked against that issuer's real public key, so a token claiming iss=Keycloak but not
16
+ * signed by Keycloak fails the kid/signature check below.
9
17
  */
10
18
  type JwtClaims = {
11
19
  sub: string;
@@ -26,15 +26,24 @@ function decodeSegment(segment) {
26
26
  return JSON.parse(base64UrlDecode(segment).toString('utf8'));
27
27
  }
28
28
  export default async function verifyToken(token, options = {}) {
29
- const jwksUri = options.jwksUri ?? process.env.JWT_URL;
30
- const issuer = options.issuer ?? process.env.JWT_ISSUER;
31
- if (!jwksUri)
32
- throw new Error('JWKS uri not configured (set JWT_URL or pass jwksUri)');
33
29
  const parts = token.split('.');
34
30
  if (parts.length !== 3)
35
31
  throw new Error('malformed token');
36
32
  const [headerB64, payloadB64, signatureB64] = parts;
37
33
  const header = decodeSegment(headerB64);
34
+ const unverified = decodeSegment(payloadB64);
35
+ // dual-issuer: route the JWKS lookup by the token's own issuer unless a caller pinned one
36
+ const keycloakIssuer = process.env.KEYCLOAK_ISSUER;
37
+ const isKeycloak = !!keycloakIssuer && unverified.iss === keycloakIssuer;
38
+ const jwksUri = options.jwksUri
39
+ ?? (isKeycloak ? process.env.KEYCLOAK_JWT_URL : process.env.JWT_URL);
40
+ const issuer = options.issuer
41
+ ?? (isKeycloak ? keycloakIssuer : process.env.JWT_ISSUER);
42
+ if (!jwksUri) {
43
+ throw new Error(isKeycloak
44
+ ? 'JWKS uri not configured for Keycloak (set KEYCLOAK_JWT_URL)'
45
+ : 'JWKS uri not configured (set JWT_URL or pass jwksUri)');
46
+ }
38
47
  if (header.alg !== 'RS256')
39
48
  throw new Error(`unsupported token alg: ${header.alg}`);
40
49
  if (!header.kid)
@@ -1 +1 @@
1
- {"version":3,"file":"verifyToken.js","sourceRoot":"","sources":["../../../src/helpers/verifyToken.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verifyToken.js","sourceRoot":"","sources":["../../../src/helpers/verifyToken.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,OAAO,MAAM,UAAU,CAAC;AAsC/B,8FAA8F;AAC9F,MAAM,WAAW,GAAG,IAAI,GAAG,EAA8B,CAAC;AAE1D,SAAS,aAAa,CAAC,OAAe;IAEpC,IAAI,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAEtC,IAAI,CAAC,MAAM,EAAE,CAAC;QAEZ,MAAM,GAAG,OAAO,CAAC;YACf,KAAK,EAAE,IAAI;YACX,eAAe,EAAE,EAAE;YACnB,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;YAC5E,SAAS,EAAE,IAAI;YACf,qBAAqB,EAAE,EAAE;YACzB,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,IAAI,CAAC;YACpD,OAAO;SACR,CAAC,CAAC;QACH,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAEnC,CAAC;IAED,OAAO,MAAM,CAAC;AAEhB,CAAC;AAED,SAAS,eAAe,CAAC,OAAe;IAEtC,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC;AAE9E,CAAC;AAED,SAAS,aAAa,CAAI,OAAe;IAEvC,OAAO,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAM,CAAC;AAEpE,CAAC;AAED,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,WAAW,CAAC,KAAa,EAAE,UAA8B,EAAE;IAEvF,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAE/B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAE3D,MAAM,CAAC,SAAS,EAAE,UAAU,EAAE,YAAY,CAAC,GAAG,KAAK,CAAC;IACpD,MAAM,MAAM,GAAG,aAAa,CAAgC,SAAS,CAAC,CAAC;IACvE,MAAM,UAAU,GAAG,aAAa,CAAY,UAAU,CAAC,CAAC;IAExD,0FAA0F;IAC1F,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;IACnD,MAAM,UAAU,GAAG,CAAC,CAAC,cAAc,IAAI,UAAU,CAAC,GAAG,KAAK,cAAc,CAAC;IAEzE,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO;WAC1B,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACvE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM;WACxB,CAAC,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAE5D,IAAI,CAAC,OAAO,EAAE,CAAC;QAEb,MAAM,IAAI,KAAK,CACb,UAAU;YACR,CAAC,CAAC,6DAA6D;YAC/D,CAAC,CAAC,uDAAuD,CAC5D,CAAC;IAEJ,CAAC;IAED,IAAI,MAAM,CAAC,GAAG,KAAK,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;IACpF,IAAI,CAAC,MAAM,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAE7D,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IACtC,MAAM,aAAa,GAAG,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IACnE,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACnD,MAAM,SAAS,GAAG,UAAU,CAAC,YAAY,EAAE,CAAC;IAE5C,MAAM,QAAQ,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC;IAC5C,QAAQ,CAAC,MAAM,CAAC,GAAG,SAAS,IAAI,UAAU,EAAE,CAAC,CAAC;IAC9C,QAAQ,CAAC,GAAG,EAAE,CAAC;IAEf,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,EAAE,eAAe,CAAC,YAAY,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAE3G,MAAM,MAAM,GAAG,aAAa,CAAY,UAAU,CAAC,CAAC;IACpD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IAE1C,IAAI,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ,IAAI,GAAG,IAAI,MAAM,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IAC1F,IAAI,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ,IAAI,GAAG,GAAG,MAAM,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAC/F,IAAI,MAAM,IAAI,MAAM,CAAC,GAAG,KAAK,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;IAE9E,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QAErB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,KAAK,OAAO,CAAC,QAAQ,CAAC;QACpH,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAE3D,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAEtD,OAAO,MAAM,CAAC;AAEhB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import Modelv2 from '../classes/modelv2.class.js';
2
2
  const model = new Modelv2('lists', 'lists');
3
- model.removeWhenEmpty = ['start', 'end', 'description', 'participants', 'content', 'emails'];
3
+ model.removeWhenEmpty = ['start', 'end', 'description', 'participants', 'content', 'emails', 'location'];
4
4
  model.immutable = ['mode'];
5
5
  model.addIndex({
6
6
  key: {
@@ -16,9 +16,10 @@ const baseProperties = {
16
16
  project: { type: 'string' },
17
17
  name: { type: 'string', maxLength: 50 },
18
18
  description: { type: 'string', maxLength: 500 },
19
+ location: { type: 'string', maxLength: 100 },
19
20
  state: { enum: ['open', 'closed', 'waiting'] },
20
- start: { type: 'object' },
21
- end: { type: 'object' },
21
+ start: { type: 'string', format: 'date-time' },
22
+ end: { type: 'string', format: 'date-time' },
22
23
  };
23
24
  // Common email schema
24
25
  const emailsSchema = {
@@ -107,7 +108,6 @@ model.setSchema({
107
108
  properties: {
108
109
  ...baseProperties,
109
110
  mode: { enum: ['contact', 'content', 'reservation'] },
110
- payment: { enum: ['optional', 'required', 'free'] },
111
111
  participants: {
112
112
  type: 'object',
113
113
  properties: {
@@ -121,7 +121,7 @@ model.setSchema({
121
121
  content: standardContentSchema,
122
122
  emails: emailsSchema,
123
123
  },
124
- required: ['company', 'project', 'name', 'payment', 'mode', 'categories', 'agreements', 'state'],
124
+ required: ['company', 'project', 'name', 'mode', 'categories', 'agreements', 'state'],
125
125
  additionalProperties: false,
126
126
  }, 'create');
127
127
  // Standard change schema
@@ -129,7 +129,6 @@ model.setSchema({
129
129
  type: 'object',
130
130
  properties: {
131
131
  ...baseProperties,
132
- payment: { enum: ['optional', 'required', 'free'] },
133
132
  limit: { type: 'number' },
134
133
  participants: {
135
134
  type: 'object',
@@ -144,7 +143,7 @@ model.setSchema({
144
143
  content: standardContentSchema,
145
144
  emails: emailsSchema,
146
145
  },
147
- required: ['name', 'payment', 'categories', 'agreements'],
146
+ required: ['name', 'categories', 'agreements'],
148
147
  additionalProperties: false,
149
148
  }, 'change', { unsetWithinPartial: true });
150
149
  // Shopping create schema
@@ -1 +1 @@
1
- {"version":3,"file":"lists.model.js","sourceRoot":"","sources":["../../../src/models/lists.model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lists.model.js","sourceRoot":"","sources":["../../../src/models/lists.model.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,8 @@ export declare class ListsService extends Immutable<List> {
9
9
  name?: string;
10
10
  state?: List['state'];
11
11
  mode?: List['mode'];
12
+ startFrom?: string;
13
+ startTo?: string;
12
14
  }, options: UserAppWithOptions & SkipLimitSort): ListCustomQueries<List>;
13
15
  hasOpenSlots(internalId: ObjectId, options: Required<UserAppWithOptions>): Promise<boolean>;
14
16
  slotDetails(internalId: ObjectId, options: Required<UserAppWithOptions>): Promise<ListPartiticpantsDetails | null>;
@@ -132,7 +132,17 @@ export class ListsService extends Immutable {
132
132
  match.mode = filter.mode;
133
133
  }
134
134
  if (filter?.name) {
135
- match.name = { $regex: filter.name, $options: 'i' };
135
+ match.$or = [
136
+ { name: { $regex: filter.name, $options: 'i' } },
137
+ { location: { $regex: filter.name, $options: 'i' } },
138
+ ];
139
+ }
140
+ if (filter?.startFrom || filter?.startTo) {
141
+ match.start = {};
142
+ if (filter.startFrom)
143
+ match.start.$gte = filter.startFrom;
144
+ if (filter.startTo)
145
+ match.start.$lt = filter.startTo;
136
146
  }
137
147
  const aggregation = [
138
148
  {
@@ -1 +1 @@
1
- {"version":3,"file":"lists.service.js","sourceRoot":"","sources":["../../../src/services/lists.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lists.service.js","sourceRoot":"","sources":["../../../src/services/lists.service.ts"],"names":[],"mappings":"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"}
@@ -23,10 +23,23 @@ declare class MeService extends Immutable<Me> {
23
23
  * if company is given, get all project permissions
24
24
  */
25
25
  getPermissions(user: string, company?: string, project?: string): Promise<import("bson").Document[]>;
26
- addUser(userId: string, auth0Config: {
27
- url: string;
28
- id: string;
29
- secret: string;
26
+ /**
27
+ * JIT-creates the `me` document on a user's first authenticated request.
28
+ *
29
+ * Reads the profile straight off the already-verified access token. This used to call the Auth0
30
+ * Management API, because Auth0 access tokens carry no profile claims — Keycloak's do, provided the
31
+ * client requests the `profile` and `email` scopes. That removed the last Auth0 dependency in the
32
+ * request path along with AUTH_URL / AUTH_CLIENT_ID / AUTH_CLIENT_SECRET.
33
+ *
34
+ * Names are truncated to 20 characters because me.model's create schema caps them there; an
35
+ * over-long name from the IdP would otherwise fail validation and leave the user with no `me` doc
36
+ * (which surfaces as USER_NOT_FOUND and an immediate logout).
37
+ */
38
+ addUser(auth: {
39
+ sub: string;
40
+ given_name?: string;
41
+ family_name?: string;
42
+ email?: string;
30
43
  }): Promise<import("@lilaquadrat/interfaces").CreateResult<BasicData<Me>>>;
31
44
  updateUser(user: string, data: Me & {
32
45
  terms?: boolean;
@@ -1,10 +1,9 @@
1
- import { ManagementClient } from 'auth0';
2
1
  import CustomersService from '../services/customers.service.js';
3
2
  import MeModel from '../models/me.model.js';
4
3
  import PermissionsModel from '../models/permissions.model.js';
5
4
  import SettingsModel from '../models/settings.model.js';
6
5
  import Immutable from '../Immutable.class.js';
7
- import { isM2M } from '../helpers/isM2M.js';
6
+ import { tokenRoles } from '../helpers/tokenRoles.js';
8
7
  class MeService extends Immutable {
9
8
  constructor() {
10
9
  super(...arguments);
@@ -151,20 +150,30 @@ class MeService extends Immutable {
151
150
  }
152
151
  return PermissionsModel.db.aggregate(aggregation).toArray();
153
152
  }
154
- addUser(userId, auth0Config) {
155
- const client = new ManagementClient({
156
- domain: auth0Config.url,
157
- clientId: auth0Config.id,
158
- clientSecret: auth0Config.secret,
159
- });
160
- return client.users.get({ id: userId })
161
- .then((user) => {
162
- const newUser = { id: userId };
163
- newUser.prename = user.data.given_name;
164
- newUser.lastname = user.data.family_name;
165
- newUser.email = user.data.email;
166
- return this.create(newUser, 'system', 'system');
167
- });
153
+ /**
154
+ * JIT-creates the `me` document on a user's first authenticated request.
155
+ *
156
+ * Reads the profile straight off the already-verified access token. This used to call the Auth0
157
+ * Management API, because Auth0 access tokens carry no profile claims — Keycloak's do, provided the
158
+ * client requests the `profile` and `email` scopes. That removed the last Auth0 dependency in the
159
+ * request path along with AUTH_URL / AUTH_CLIENT_ID / AUTH_CLIENT_SECRET.
160
+ *
161
+ * Names are truncated to 20 characters because me.model's create schema caps them there; an
162
+ * over-long name from the IdP would otherwise fail validation and leave the user with no `me` doc
163
+ * (which surfaces as USER_NOT_FOUND and an immediate logout).
164
+ */
165
+ addUser(auth) {
166
+ const newUser = { id: auth.sub };
167
+ const prename = auth.given_name?.trim();
168
+ const lastname = auth.family_name?.trim();
169
+ const email = auth.email?.trim().toLowerCase();
170
+ if (prename)
171
+ newUser.prename = prename.slice(0, 20);
172
+ if (lastname)
173
+ newUser.lastname = lastname.slice(0, 20);
174
+ if (email)
175
+ newUser.email = email;
176
+ return this.create(newUser, 'system', 'system');
168
177
  }
169
178
  updateUser(user, data) {
170
179
  let updateObject = { ...data };
@@ -246,18 +255,25 @@ class MeService extends Immutable {
246
255
  */
247
256
  static checkStorageScope(action) {
248
257
  return async (request, reply) => {
249
- let scope;
250
258
  if (!request.auth) {
251
259
  return reply.code(401).send();
252
260
  }
253
- if (isM2M(request.auth)) {
254
- scope = request.auth.permissions;
255
- }
256
- else {
257
- const permission = await MeService.getSinglePermission(request.auth.sub, request.params.company, request.params.project);
258
- scope = permission?.scope;
259
- }
260
- if (!scope) {
261
+ // The entitlement is the UNION of what the token grants and what the database grants.
262
+ //
263
+ // This used to branch on isM2M(): machine tokens took their scope from a `permissions` claim,
264
+ // users from the permissions collection. Classifying the caller was never the security
265
+ // question — the question is whether this token may perform this operation. A service account
266
+ // carries Keycloak realm roles named exactly like the scope strings; a user carries rows in
267
+ // `permissions`. Whoever holds the entitlement passes, and neither can borrow the other's path.
268
+ //
269
+ // No collision risk: Keycloak's default roles (default-roles-*, offline_access,
270
+ // uma_authorization) do not match the `<app>:<action>` shape these checks use.
271
+ const roles = tokenRoles(request.auth);
272
+ const permission = request.auth.sub
273
+ ? await MeService.getSinglePermission(request.auth.sub, request.params.company, request.params.project)
274
+ : undefined;
275
+ const scope = [...new Set([...roles, ...(permission?.scope ?? [])])];
276
+ if (!scope.length) {
261
277
  return reply.code(403).send();
262
278
  }
263
279
  const singlePermission = `${request.params.app}:storage${action.charAt(0).toUpperCase() + action.slice(1)}`;
@@ -1 +1 @@
1
- {"version":3,"file":"me.service.js","sourceRoot":"","sources":["../../../src/services/me.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"me.service.js","sourceRoot":"","sources":["../../../src/services/me.service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lilaquadrat/studio",
3
- "version": "10.5.2",
3
+ "version": "10.7.0",
4
4
  "description": "classes and tools for STUDIO",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -123,7 +123,7 @@
123
123
  },
124
124
  "dependencies": {
125
125
  "@google/genai": "^1.42.0",
126
- "@lilaquadrat/interfaces": "^1.45.0",
126
+ "@lilaquadrat/interfaces": "^1.46.0",
127
127
  "@lilaquadrat/storage-sdk": "^0.1.15",
128
128
  "@nats-io/jetstream": "^3.2.0",
129
129
  "@nats-io/transport-node": "^3.2.0",
@@ -1,24 +0,0 @@
1
- /**
2
- * Is this an authenticated machine-to-machine (service) token?
3
- *
4
- * Two issuers mint M2M tokens during the Auth0 → Keycloak migration:
5
- * - Auth0 marks a client_credentials token with `gty: 'client-credentials'`
6
- * (end-user tokens never carry it).
7
- * - Keycloak service accounts emit NO `gty`. Since end users stay on Auth0,
8
- * any token issued by the configured Keycloak realm is by definition M2M,
9
- * so we recognise it by its issuer.
10
- *
11
- * Both paths expect the caller's granted scopes in a `permissions` string[] claim
12
- * (for Keycloak, add a client "permissions" protocol mapper so the existing
13
- * scope-array logic keeps working unchanged).
14
- *
15
- * IMPORTANT: this helper must stay dependency-free. It is imported by
16
- * me.service (reachable from non-Fastify NATS workers via the package barrel).
17
- * It must NOT import authPlugin or anything that pulls in `fastify-plugin`, or
18
- * those workers crash at import time with ERR_MODULE_NOT_FOUND.
19
- */
20
- export declare const isM2M: (auth: {
21
- gty?: string;
22
- iss?: string;
23
- } | undefined) => boolean;
24
- export default isM2M;
@@ -1,30 +0,0 @@
1
- /**
2
- * Is this an authenticated machine-to-machine (service) token?
3
- *
4
- * Two issuers mint M2M tokens during the Auth0 → Keycloak migration:
5
- * - Auth0 marks a client_credentials token with `gty: 'client-credentials'`
6
- * (end-user tokens never carry it).
7
- * - Keycloak service accounts emit NO `gty`. Since end users stay on Auth0,
8
- * any token issued by the configured Keycloak realm is by definition M2M,
9
- * so we recognise it by its issuer.
10
- *
11
- * Both paths expect the caller's granted scopes in a `permissions` string[] claim
12
- * (for Keycloak, add a client "permissions" protocol mapper so the existing
13
- * scope-array logic keeps working unchanged).
14
- *
15
- * IMPORTANT: this helper must stay dependency-free. It is imported by
16
- * me.service (reachable from non-Fastify NATS workers via the package barrel).
17
- * It must NOT import authPlugin or anything that pulls in `fastify-plugin`, or
18
- * those workers crash at import time with ERR_MODULE_NOT_FOUND.
19
- */
20
- export const isM2M = (auth) => {
21
- if (!auth)
22
- return false;
23
- if (auth.gty === 'client-credentials')
24
- return true;
25
- if (process.env.KEYCLOAK_ISSUER && auth.iss === process.env.KEYCLOAK_ISSUER)
26
- return true;
27
- return false;
28
- };
29
- export default isM2M;
30
- //# sourceMappingURL=isM2M.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"isM2M.js","sourceRoot":"","sources":["../../../src/helpers/isM2M.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,IAAgD,EAAW,EAAE;IAEjF,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IAExB,IAAI,IAAI,CAAC,GAAG,KAAK,oBAAoB;QAAE,OAAO,IAAI,CAAC;IAEnD,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,IAAI,CAAC,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,eAAe;QAAE,OAAO,IAAI,CAAC;IAEzF,OAAO,KAAK,CAAC;AAEf,CAAC,CAAC;AAEF,eAAe,KAAK,CAAC"}