@cerebruminc/yates 3.4.0 → 3.4.1-beta.dangerous.17a2a1b

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # Changelog
2
2
 
3
+ ## [3.4.1](https://github.com/cerebruminc/yates/compare/v3.4.0...v3.4.1) (2024-03-26)
4
+
5
+
6
+ ### Bug Fixes
7
+
8
+ * only select role and policies that have a yates prefix ([d60498a](https://github.com/cerebruminc/yates/commit/d60498ac51d4321d21356f0a9832b6d8f176bd4e))
9
+
3
10
  ## [3.4.0](https://github.com/cerebruminc/yates/compare/v3.3.2...v3.4.0) (2024-03-22)
4
11
 
5
12
 
@@ -63,11 +63,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
63
63
  Object.defineProperty(exports, "__esModule", { value: true });
64
64
  exports.expressionToSQL = void 0;
65
65
  var client_1 = require("@prisma/client");
66
+ var debug_1 = __importDefault(require("debug"));
66
67
  var matches_1 = __importDefault(require("lodash/matches"));
67
68
  var random_1 = __importDefault(require("lodash/random"));
68
69
  var node_sql_parser_1 = require("node-sql-parser");
69
70
  var ast_fragments_1 = require("./ast-fragments");
70
71
  var escape_1 = require("./escape");
72
+ var debug = (0, debug_1.default)("yates");
71
73
  var PRISMA_NUMERIC_TYPES = ["Int", "BigInt", "Float", "Decimal"];
72
74
  // This function is a recursive function that will search through an object and
73
75
  // its children to find a matching object.
@@ -288,6 +290,8 @@ var expressionToSQL = function (getExpression, table) { return __awaiter(void 0,
288
290
  if (typeof getExpression === "string") {
289
291
  return [2 /*return*/, getExpression];
290
292
  }
293
+ debug("Creating RLS expression from", getExpression.toString());
294
+ console.log(getExpression.toString());
291
295
  baseClient = new client_1.PrismaClient({
292
296
  log: [{ level: "query", emit: "event" }],
293
297
  });
@@ -1 +1 @@
1
- {"version":3,"file":"expressions.js","sourceRoot":"","sources":["../src/expressions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"expressions.js","sourceRoot":"","sources":["../src/expressions.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -100,6 +100,15 @@ var __read = (this && this.__read) || function (o, n) {
100
100
  }
101
101
  return ar;
102
102
  };
103
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
104
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
105
+ if (ar || !(i in from)) {
106
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
107
+ ar[i] = from[i];
108
+ }
109
+ }
110
+ return to.concat(ar || Array.prototype.slice.call(from));
111
+ };
103
112
  var __importDefault = (this && this.__importDefault) || function (mod) {
104
113
  return (mod && mod.__esModule) ? mod : { "default": mod };
105
114
  };
@@ -121,6 +130,23 @@ var debug = (0, debug_1.default)("yates");
121
130
  var takeLock = function (prisma) {
122
131
  return prisma.$executeRawUnsafe("SELECT pg_advisory_xact_lock(2142616474639426746);");
123
132
  };
133
+ /*
134
+ * This function creates a table used to track the abilities that have been
135
+ * defined in the system. We can use this to see if an ability needs to be updated.
136
+ * We can't look up the pg policy table for this, as pg performs formatting on
137
+ * the expression, making it very hard to check if the two expressions are equivalent.
138
+ */
139
+ var setupAbilityTable = function (prisma) {
140
+ return prisma.$transaction([
141
+ takeLock(prisma),
142
+ prisma.$executeRawUnsafe("\n\t\tCREATE TABLE IF NOT EXISTS _yates_abilities (\n\t\t\tid SERIAL PRIMARY KEY,\n\t\t\tability_model TEXT NOT NULL,\n\t\t\tability_name TEXT NOT NULL,\n\t\t\tability_policy_name TEXT NOT NULL UNIQUE,\n\t\t\tability_description TEXT NOT NULL,\n\t\t\tability_operation TEXT NOT NULL,\n\t\t\tability_expression TEXT NOT NULL,\n\t\t\tcreated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,\n\t\t\tupdated_at TIMESTAMP\n\t\t);\n\t"),
143
+ ]);
144
+ };
145
+ var upsertAbility = function (prisma, ability) {
146
+ console.count("Upserting ability");
147
+ var ability_model = ability.ability_model, ability_name = ability.ability_name, ability_policy_name = ability.ability_policy_name, ability_description = ability.ability_description, ability_operation = ability.ability_operation, ability_expression = ability.ability_expression;
148
+ return prisma.$queryRaw(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n\t\tINSERT INTO _yates_abilities (ability_model, ability_name, ability_policy_name, ability_description, ability_operation, ability_expression)\n\t\tVALUES (", ", ", ", ", ", ", ", ", ", ", ")\n\t\tON CONFLICT (ability_policy_name) DO UPDATE\n\t\tSET ability_model = EXCLUDED.ability_model, ability_name = EXCLUDED.ability_name, ability_description = EXCLUDED.ability_description, ability_operation = EXCLUDED.ability_operation, ability_expression = EXCLUDED.ability_expression, updated_at = now();\n\t"], ["\n\t\tINSERT INTO _yates_abilities (ability_model, ability_name, ability_policy_name, ability_description, ability_operation, ability_expression)\n\t\tVALUES (", ", ", ", ", ", ", ", ", ", ", ")\n\t\tON CONFLICT (ability_policy_name) DO UPDATE\n\t\tSET ability_model = EXCLUDED.ability_model, ability_name = EXCLUDED.ability_name, ability_description = EXCLUDED.ability_description, ability_operation = EXCLUDED.ability_operation, ability_expression = EXCLUDED.ability_expression, updated_at = now();\n\t"])), ability_model, ability_name, ability_policy_name, ability_description, ability_operation, ability_expression);
149
+ };
124
150
  /**
125
151
  * In PostgreSQL, the maximum length for a role or policy name is 63 bytes.
126
152
  * This limitation is derived from the value of the NAMEDATALEN configuration parameter,
@@ -245,7 +271,7 @@ var createClient = function (prisma, getContext, options) {
245
271
  case 3:
246
272
  if (!!_b.done) return [3 /*break*/, 6];
247
273
  _c = __read(_b.value, 2), key = _c[0], value = _c[1];
248
- return [4 /*yield*/, tx.$queryRaw(templateObject_1 || (templateObject_1 = __makeTemplateObject(["SELECT set_config(", ", ", ", true);"], ["SELECT set_config(", ", ", ", true);"])), key, value.toString())];
274
+ return [4 /*yield*/, tx.$queryRaw(templateObject_2 || (templateObject_2 = __makeTemplateObject(["SELECT set_config(", ", ", ", true);"], ["SELECT set_config(", ", ", ", true);"])), key, value.toString())];
249
275
  case 4:
250
276
  _e.sent();
251
277
  _e.label = 5;
@@ -305,57 +331,82 @@ var createClient = function (prisma, getContext, options) {
305
331
  return client;
306
332
  };
307
333
  exports.createClient = createClient;
308
- var setRLS = function (prisma, pgPolicies, table, roleName, operation, rawExpression) { return __awaiter(void 0, void 0, void 0, function () {
309
- var expression, policyName, rows, normalizedExpression, normalizedQual;
310
- var _a, _b, _c, _d;
311
- return __generator(this, function (_e) {
312
- switch (_e.label) {
334
+ var setRLS = function (prisma, existingAbilities, table, roleName, slug, ability) { return __awaiter(void 0, void 0, void 0, function () {
335
+ var operation, rawExpression, description, policyName, existingAbility, shouldUpdateAbilityTable, expression, expression;
336
+ return __generator(this, function (_a) {
337
+ switch (_a.label) {
313
338
  case 0:
314
- debug("Calculating RLS expression from", rawExpression);
339
+ operation = ability.operation, rawExpression = ability.expression, description = ability.description;
340
+ if (!rawExpression) {
341
+ throw new Error("Expression must be defined for RLS abilities");
342
+ }
343
+ if (Date.now() > 1) {
344
+ return [2 /*return*/];
345
+ }
346
+ policyName = roleName;
347
+ existingAbility = existingAbilities.find(function (row) {
348
+ return row.ability_model === table && row.ability_policy_name === policyName;
349
+ });
350
+ shouldUpdateAbilityTable = false;
351
+ if (!!existingAbility) return [3 /*break*/, 6];
352
+ debug("Creating RLS policy for", roleName, "on", table, "for", operation);
315
353
  return [4 /*yield*/, (0, expressions_1.expressionToSQL)(rawExpression, table)];
316
354
  case 1:
317
- expression = _e.sent();
318
- policyName = roleName;
319
- rows = pgPolicies.filter(function (row) { return row.tablename === table && row.policyname === policyName; });
320
- debug("Creating RLS policy", policyName);
321
- debug("On table", table);
322
- debug("For operation", operation);
323
- debug("To role", roleName);
324
- debug("With expression", expression);
325
- normalizedExpression = expression === "true"
326
- ? expression
327
- : "(".concat(expression.replace(/(\r\n|\n|\r)/gm, ""), ")");
328
- normalizedQual = operation === "INSERT"
329
- ? (_b = (_a = rows === null || rows === void 0 ? void 0 : rows[0]) === null || _a === void 0 ? void 0 : _a.with_check) === null || _b === void 0 ? void 0 : _b.replace(/(\r\n|\n|\r)/gm, "")
330
- : (_d = (_c = rows === null || rows === void 0 ? void 0 : rows[0]) === null || _c === void 0 ? void 0 : _c.qual) === null || _d === void 0 ? void 0 : _d.replace(/(\r\n|\n|\r)/gm, "");
331
- if (!(rows.length === 0)) return [3 /*break*/, 6];
355
+ expression = _a.sent();
332
356
  if (!(operation === "INSERT")) return [3 /*break*/, 3];
333
357
  return [4 /*yield*/, prisma.$queryRawUnsafe("\n CREATE POLICY ".concat(policyName, " ON \"public\".\"").concat(table, "\" FOR ").concat(operation, " TO ").concat(roleName, " WITH CHECK (").concat(expression, ");\n "))];
334
358
  case 2:
335
- _e.sent();
359
+ _a.sent();
336
360
  return [3 /*break*/, 5];
337
361
  case 3: return [4 /*yield*/, prisma.$queryRawUnsafe("\n CREATE POLICY ".concat(policyName, " ON \"public\".\"").concat(table, "\" FOR ").concat(operation, " TO ").concat(roleName, " USING (").concat(expression, ");\n "))];
338
362
  case 4:
339
- _e.sent();
340
- _e.label = 5;
341
- case 5: return [3 /*break*/, 10];
363
+ _a.sent();
364
+ _a.label = 5;
365
+ case 5:
366
+ shouldUpdateAbilityTable = true;
367
+ return [3 /*break*/, 12];
342
368
  case 6:
343
- if (!(normalizedQual !== normalizedExpression)) return [3 /*break*/, 10];
344
- if (!(operation === "INSERT")) return [3 /*break*/, 8];
345
- return [4 /*yield*/, prisma.$queryRawUnsafe("\n ALTER POLICY ".concat(policyName, " ON \"public\".\"").concat(table, "\" TO ").concat(roleName, " WITH CHECK (").concat(expression, ");\n "))];
369
+ if (!(existingAbility.ability_expression !== rawExpression.toString())) return [3 /*break*/, 12];
370
+ debug("Updating RLS policy for", roleName, "on", table, "for", operation);
371
+ return [4 /*yield*/, (0, expressions_1.expressionToSQL)(rawExpression, table)];
346
372
  case 7:
347
- _e.sent();
348
- return [3 /*break*/, 10];
349
- case 8: return [4 /*yield*/, prisma.$queryRawUnsafe("\n ALTER POLICY ".concat(policyName, " ON \"public\".\"").concat(table, "\" TO ").concat(roleName, " USING (").concat(expression, ");\n "))];
350
- case 9:
351
- _e.sent();
352
- _e.label = 10;
353
- case 10: return [2 /*return*/];
373
+ expression = _a.sent();
374
+ if (!(operation === "INSERT")) return [3 /*break*/, 9];
375
+ return [4 /*yield*/, prisma.$queryRawUnsafe("\n ALTER POLICY ".concat(policyName, " ON \"public\".\"").concat(table, "\" TO ").concat(roleName, " WITH CHECK (").concat(expression, ");\n "))];
376
+ case 8:
377
+ _a.sent();
378
+ return [3 /*break*/, 11];
379
+ case 9: return [4 /*yield*/, prisma.$queryRawUnsafe("\n ALTER POLICY ".concat(policyName, " ON \"public\".\"").concat(table, "\" TO ").concat(roleName, " USING (").concat(expression, ");\n "))];
380
+ case 10:
381
+ _a.sent();
382
+ _a.label = 11;
383
+ case 11:
384
+ shouldUpdateAbilityTable = true;
385
+ _a.label = 12;
386
+ case 12:
387
+ if (!shouldUpdateAbilityTable) return [3 /*break*/, 14];
388
+ return [4 /*yield*/, prisma.$transaction([
389
+ takeLock(prisma),
390
+ upsertAbility(prisma, {
391
+ ability_model: table,
392
+ ability_name: slug,
393
+ ability_policy_name: policyName,
394
+ ability_description: description !== null && description !== void 0 ? description : "",
395
+ ability_operation: operation,
396
+ // We store the string representation of the expression so that
397
+ // we can compare it later without having to recompute the SQL
398
+ ability_expression: rawExpression.toString(),
399
+ }),
400
+ ])];
401
+ case 13:
402
+ _a.sent();
403
+ _a.label = 14;
404
+ case 14: return [2 /*return*/];
354
405
  }
355
406
  });
356
407
  }); };
357
408
  var createRoles = function (_a) { return __awaiter(void 0, [_a], void 0, function (_b) {
358
- var abilities, runtimeDataModel, models, diff, models_1, models_1_1, model, ability, operation, roles, pgRoles, pgPolicies, _c, _d, _e, _i, model, table, _loop_1, _f, _g, _h, _j, slug, _loop_2, _k, _l, _m, _o, key;
409
+ var abilities, runtimeDataModel, models, diff, models_1, models_1_1, model, ability, operation, roles, pgRoles, existingAbilities, pgPolicies, migratedAbilities, _c, _d, _e, _i, model, table, _loop_1, _f, _g, _h, _j, slug, _loop_2, _k, _l, _m, _o, key;
359
410
  var e_5, _p;
360
411
  var _q;
361
412
  var prisma = _b.prisma, customAbilities = _b.customAbilities, getRoles = _b.getRoles;
@@ -376,6 +427,7 @@ var createRoles = function (_a) { return __awaiter(void 0, [_a], void 0, functio
376
427
  for (models_1 = __values(models), models_1_1 = models_1.next(); !models_1_1.done; models_1_1 = models_1.next()) {
377
428
  model = models_1_1.value;
378
429
  abilities[model] = {
430
+ // @ts-ignore
379
431
  create: {
380
432
  description: "Create ".concat(model),
381
433
  expression: "true",
@@ -431,31 +483,54 @@ var createRoles = function (_a) { return __awaiter(void 0, [_a], void 0, functio
431
483
  }
432
484
  finally { if (e_5) throw e_5.error; }
433
485
  }
434
- roles = getRoles(abilities);
435
- return [4 /*yield*/, prisma.$queryRawUnsafe("\n\t\t\tselect * from pg_catalog.pg_roles\n\t\t")];
486
+ debug("Setting up ability table");
487
+ return [4 /*yield*/, setupAbilityTable(prisma)];
436
488
  case 1:
437
- pgRoles = _r.sent();
438
- return [4 /*yield*/, prisma.$queryRawUnsafe("\n\t\tselect * from pg_catalog.pg_policies;\n\t")];
489
+ _r.sent();
490
+ roles = getRoles(abilities);
491
+ return [4 /*yield*/, prisma.$queryRawUnsafe("\n\t\tselect * from pg_catalog.pg_roles where rolname like 'yates%'\n\t")];
439
492
  case 2:
493
+ pgRoles = _r.sent();
494
+ return [4 /*yield*/, prisma.$queryRawUnsafe("\n\t\tselect * from _yates_abilities;\n\t")];
495
+ case 3:
496
+ existingAbilities = _r.sent();
497
+ if (!(existingAbilities.length === 0)) return [3 /*break*/, 6];
498
+ debug('No existing abilities found, importing from "pg_policies" table');
499
+ return [4 /*yield*/, prisma.$queryRawUnsafe("\n\t\t\tselect * from pg_catalog.pg_policies where policyname like 'yates%'\n\t\t")];
500
+ case 4:
440
501
  pgPolicies = _r.sent();
502
+ if (!pgPolicies.length) return [3 /*break*/, 6];
503
+ migratedAbilities = pgPolicies.map(function (policy) {
504
+ var _a, _b;
505
+ return ({
506
+ ability_model: policy.tablename,
507
+ ability_name: policy.policyname,
508
+ ability_policy_name: policy.policyname,
509
+ ability_description: "",
510
+ ability_operation: policy.cmd,
511
+ ability_expression: (_b = (_a = policy.qual) !== null && _a !== void 0 ? _a : policy.with_check) !== null && _b !== void 0 ? _b : "",
512
+ });
513
+ });
514
+ return [4 /*yield*/, prisma.$transaction(__spreadArray([
515
+ takeLock(prisma)
516
+ ], __read(migratedAbilities.map(function (ma) { return upsertAbility(prisma, ma); })), false))];
517
+ case 5:
518
+ _r.sent();
519
+ existingAbilities.push.apply(existingAbilities, __spreadArray([], __read(migratedAbilities), false));
520
+ _r.label = 6;
521
+ case 6:
441
522
  _c = abilities;
442
523
  _d = [];
443
524
  for (_e in _c)
444
525
  _d.push(_e);
445
526
  _i = 0;
446
- _r.label = 3;
447
- case 3:
448
- if (!(_i < _d.length)) return [3 /*break*/, 9];
527
+ _r.label = 7;
528
+ case 7:
529
+ if (!(_i < _d.length)) return [3 /*break*/, 12];
449
530
  _e = _d[_i];
450
- if (!(_e in _c)) return [3 /*break*/, 8];
531
+ if (!(_e in _c)) return [3 /*break*/, 11];
451
532
  model = _e;
452
533
  table = model;
453
- return [4 /*yield*/, prisma.$transaction([
454
- takeLock(prisma),
455
- prisma.$queryRawUnsafe("ALTER table \"".concat(table, "\" enable row level security;")),
456
- ])];
457
- case 4:
458
- _r.sent();
459
534
  _loop_1 = function (slug) {
460
535
  var ability, roleName;
461
536
  return __generator(this, function (_s) {
@@ -473,7 +548,7 @@ var createRoles = function (_a) { return __awaiter(void 0, [_a], void 0, functio
473
548
  return [3 /*break*/, 3];
474
549
  case 1: return [4 /*yield*/, prisma.$transaction([
475
550
  takeLock(prisma),
476
- prisma.$queryRawUnsafe("\n\t\t\t\t\tdo\n\t\t\t\t\t$$\n\t\t\t\t\tbegin\n\t\t\t\t\tif not exists (select * from pg_catalog.pg_roles where rolname = '".concat(roleName, "') then \n\t\t\t\t\t\tcreate role ").concat(roleName, ";\n\t\t\t\t\tend if;\n\t\t\t\t\tend\n\t\t\t\t\t$$\n\t\t\t\t\t;\n\t\t\t\t")),
551
+ prisma.$queryRawUnsafe("\n\t\t\t\t\tdo\n\t\t\t\t\t$$\n\t\t\t\t\tbegin\n\t\t\t\t\tif not exists (select * from pg_catalog.pg_roles where rolname = '".concat(roleName, "') then \n\t\t\t\t\t\tcreate role ").concat(roleName, ";\n\t\t\t\t\tend if;\n\t\t\t\t\tGRANT ").concat(ability.operation, " ON \"").concat(table, "\" TO ").concat(roleName, ";\n\t\t\t\t\tend\n\t\t\t\t\t$$\n\t\t\t\t\t;\n\t\t\t\t")),
477
552
  prisma.$queryRawUnsafe("\n\t\t\t\t\tGRANT ".concat(ability.operation, " ON \"").concat(table, "\" TO ").concat(roleName, ";\n\t\t\t\t")),
478
553
  ])];
479
554
  case 2:
@@ -481,13 +556,15 @@ var createRoles = function (_a) { return __awaiter(void 0, [_a], void 0, functio
481
556
  _s.label = 3;
482
557
  case 3:
483
558
  if (!ability.expression) return [3 /*break*/, 5];
484
- return [4 /*yield*/, setRLS(prisma, pgPolicies, table, roleName, ability.operation,
559
+ return [4 /*yield*/, setRLS(prisma, existingAbilities, table, roleName, slug,
485
560
  // biome-ignore lint/suspicious/noExplicitAny: TODO fix this
486
- ability.expression)];
561
+ ability)];
487
562
  case 4:
488
563
  _s.sent();
489
564
  _s.label = 5;
490
- case 5: return [2 /*return*/];
565
+ case 5:
566
+ debug("Finished setting RLS for model", model);
567
+ return [2 /*return*/];
491
568
  }
492
569
  });
493
570
  };
@@ -496,32 +573,30 @@ var createRoles = function (_a) { return __awaiter(void 0, [_a], void 0, functio
496
573
  for (_h in _f)
497
574
  _g.push(_h);
498
575
  _j = 0;
499
- _r.label = 5;
500
- case 5:
501
- if (!(_j < _g.length)) return [3 /*break*/, 8];
576
+ _r.label = 8;
577
+ case 8:
578
+ if (!(_j < _g.length)) return [3 /*break*/, 11];
502
579
  _h = _g[_j];
503
- if (!(_h in _f)) return [3 /*break*/, 7];
580
+ if (!(_h in _f)) return [3 /*break*/, 10];
504
581
  slug = _h;
505
582
  return [5 /*yield**/, _loop_1(slug)];
506
- case 6:
583
+ case 9:
507
584
  _r.sent();
508
- _r.label = 7;
509
- case 7:
585
+ _r.label = 10;
586
+ case 10:
510
587
  _j++;
511
- return [3 /*break*/, 5];
512
- case 8:
588
+ return [3 /*break*/, 8];
589
+ case 11:
513
590
  _i++;
514
- return [3 /*break*/, 3];
515
- case 9:
591
+ return [3 /*break*/, 7];
592
+ case 12:
516
593
  _loop_2 = function (key) {
517
- var role, wildCardAbilities, roleAbilities, rlsRoles, userRoles, oldRoles;
594
+ var role, wildCardAbilities, roleAbilities, rlsRoles, userRoles, oldRoles, policies;
518
595
  return __generator(this, function (_t) {
519
596
  switch (_t.label) {
520
597
  case 0:
521
598
  role = (0, exports.createRoleName)(key);
522
- return [4 /*yield*/, prisma.$executeRawUnsafe("\n\t\t\tdo\n\t\t\t$$\n\t\t\tbegin\n\t\t\tif not exists (select * from pg_catalog.pg_roles where rolname = '".concat(role, "') then \n\t\t\t\tcreate role ").concat(role, ";\n\t\t\tend if;\n\t\t\tend\n\t\t\t$$\n\t\t\t;\n\t\t"))];
523
- case 1:
524
- _t.sent();
599
+ debug("Creating role", role);
525
600
  wildCardAbilities = (0, flatMap_1.default)(abilities, function (model, modelName) {
526
601
  return (0, map_1.default)(model, function (_params, slug) {
527
602
  return (0, exports.createAbilityName)(modelName, slug);
@@ -536,19 +611,26 @@ var createRoles = function (_a) { return __awaiter(void 0, [_a], void 0, functio
536
611
  });
537
612
  // Note: We need to GRANT all on schema public so that we can resolve relation queries with prisma, as they will sometimes use a join table.
538
613
  // This is not ideal, but because we are using RLS, it's not a security risk. Any table with RLS also needs a corresponding policy for the role to have access.
539
- return [4 /*yield*/, prisma.$transaction([
540
- takeLock(prisma),
541
- prisma.$executeRawUnsafe("GRANT ALL ON ALL TABLES IN SCHEMA public TO ".concat(role, ";")),
542
- prisma.$executeRawUnsafe("\n\t\t\t\tGRANT ALL ON ALL SEQUENCES IN SCHEMA public TO ".concat(role, ";\n\t\t\t")),
543
- prisma.$executeRawUnsafe("\n\t\t\t\tGRANT ALL ON SCHEMA public TO ".concat(role, ";\n\t\t\t")),
544
- prisma.$queryRawUnsafe("GRANT ".concat(rlsRoles.join(", "), " TO ").concat(role)),
545
- ])];
614
+ debug("Granting role access");
615
+ // Check if role already exists
616
+ debug("Checking if role exists", role);
617
+ if (!pgRoles.find(function (row) { return row.rolname === role; })) return [3 /*break*/, 1];
618
+ debug("Role already exists", role);
619
+ return [3 /*break*/, 3];
620
+ case 1: return [4 /*yield*/, prisma.$transaction([
621
+ takeLock(prisma),
622
+ prisma.$executeRawUnsafe("\n\t\t\t\tdo\n\t\t\t\t$$\n\t\t\t\tbegin\n\t\t\t\tif not exists (select * from pg_catalog.pg_roles where rolname = '".concat(role, "') then \n\t\t\t\t\tcreate role ").concat(role, ";\n\t\t\t\tend if;\n\t\t\t\tGRANT ALL ON ALL TABLES IN SCHEMA public TO ").concat(role, ";\n\t\t\t\tGRANT ALL ON ALL SEQUENCES IN SCHEMA public TO ").concat(role, ";\n\t\t\t\tGRANT ALL ON SCHEMA public TO ").concat(role, ";\n\t\t\t\tend\n\t\t\t\t$$\n\t\t\t\t;\n\t\t\t")),
623
+ ])];
546
624
  case 2:
547
- // Note: We need to GRANT all on schema public so that we can resolve relation queries with prisma, as they will sometimes use a join table.
548
- // This is not ideal, but because we are using RLS, it's not a security risk. Any table with RLS also needs a corresponding policy for the role to have access.
549
625
  _t.sent();
626
+ _t.label = 3;
627
+ case 3: return [4 /*yield*/, prisma.$executeRawUnsafe("GRANT ".concat(rlsRoles.join(", "), " TO ").concat(role, ";"))];
628
+ case 4:
629
+ _t.sent();
630
+ // Cleanup any old roles that aren't included in the new roles
631
+ debug("Cleaning up old roles");
550
632
  return [4 /*yield*/, prisma.$queryRawUnsafe("\n\t\t\tWITH RECURSIVE cte AS (\n\t\t\t\tSELECT oid FROM pg_roles where rolname = '".concat(role, "'\n\t\t\t\tUNION ALL\n\t\t\t\tSELECT m.roleid\n\t\t\t\tFROM cte\n\t\t\t\tJOIN pg_auth_members m ON m.member = cte.oid\n\t\t\t\t)\n\t\t\tSELECT oid, oid::regrole::text AS rolename FROM cte where oid::regrole::text != '").concat(role, "'; \n\t "))];
551
- case 3:
633
+ case 5:
552
634
  userRoles = _t.sent();
553
635
  oldRoles = userRoles
554
636
  .filter(function (_a) {
@@ -559,14 +641,33 @@ var createRoles = function (_a) { return __awaiter(void 0, [_a], void 0, functio
559
641
  var rolename = _a.rolename;
560
642
  return rolename;
561
643
  });
562
- if (!oldRoles.length) return [3 /*break*/, 5];
644
+ if (!oldRoles.length) return [3 /*break*/, 10];
645
+ debug("Revoking ".concat(oldRoles.length, " old roles from ").concat(role));
563
646
  // Now revoke old roles from the user role
647
+ debug("Revoking old roles", oldRoles.join(", "));
564
648
  return [4 /*yield*/, prisma.$executeRawUnsafe("REVOKE ".concat(oldRoles.join(", "), " FROM ").concat(role))];
565
- case 4:
566
- // Now revoke old roles from the user role
649
+ case 6:
650
+ _t.sent();
651
+ return [4 /*yield*/, prisma.$queryRawUnsafe("SELECT * FROM pg_catalog.pg_policies WHERE policyname IN (".concat(oldRoles
652
+ .map(function (or) { return "'".concat(or, "'"); })
653
+ .join(", "), ")"))];
654
+ case 7:
655
+ policies = _t.sent();
656
+ return [4 /*yield*/, prisma.$transaction(__spreadArray([
657
+ takeLock(prisma)
658
+ ], __read(policies.map(function (oldPolicy) {
659
+ return prisma.$executeRawUnsafe("DROP POLICY ".concat(oldPolicy.policyname, " ON \"").concat(oldPolicy.tablename, "\""));
660
+ })), false))];
661
+ case 8:
662
+ _t.sent();
663
+ debug("Revoked old rows from ability table", oldRoles.join(", "));
664
+ return [4 /*yield*/, prisma.$executeRawUnsafe("DELETE FROM _yates_abilities WHERE ability_policy_name IN (".concat(oldRoles
665
+ .map(function (or) { return "'".concat(or, "'"); })
666
+ .join(", "), ")"))];
667
+ case 9:
567
668
  _t.sent();
568
- _t.label = 5;
569
- case 5: return [2 /*return*/];
669
+ _t.label = 10;
670
+ case 10: return [2 /*return*/];
570
671
  }
571
672
  });
572
673
  };
@@ -575,20 +676,20 @@ var createRoles = function (_a) { return __awaiter(void 0, [_a], void 0, functio
575
676
  for (_m in _k)
576
677
  _l.push(_m);
577
678
  _o = 0;
578
- _r.label = 10;
579
- case 10:
580
- if (!(_o < _l.length)) return [3 /*break*/, 13];
679
+ _r.label = 13;
680
+ case 13:
681
+ if (!(_o < _l.length)) return [3 /*break*/, 16];
581
682
  _m = _l[_o];
582
- if (!(_m in _k)) return [3 /*break*/, 12];
683
+ if (!(_m in _k)) return [3 /*break*/, 15];
583
684
  key = _m;
584
685
  return [5 /*yield**/, _loop_2(key)];
585
- case 11:
686
+ case 14:
586
687
  _r.sent();
587
- _r.label = 12;
588
- case 12:
688
+ _r.label = 15;
689
+ case 15:
589
690
  _o++;
590
- return [3 /*break*/, 10];
591
- case 13: return [2 /*return*/];
691
+ return [3 /*break*/, 13];
692
+ case 16: return [2 /*return*/];
592
693
  }
593
694
  });
594
695
  }); };
@@ -603,6 +704,7 @@ var setup = function (params) { return __awaiter(void 0, void 0, void 0, functio
603
704
  case 0:
604
705
  start = performance.now();
605
706
  prisma = params.prisma, customAbilities = params.customAbilities, getRoles = params.getRoles, getContext = params.getContext;
707
+ debug("Creating roles");
606
708
  return [4 /*yield*/, (0, exports.createRoles)({
607
709
  prisma: prisma,
608
710
  customAbilities: customAbilities,
@@ -610,6 +712,7 @@ var setup = function (params) { return __awaiter(void 0, void 0, void 0, functio
610
712
  })];
611
713
  case 1:
612
714
  _a.sent();
715
+ debug("Creating client");
613
716
  client = (0, exports.createClient)(prisma, getContext, params.options);
614
717
  debug("Setup completed in", performance.now() - start, "ms");
615
718
  return [2 /*return*/, client];
@@ -617,5 +720,5 @@ var setup = function (params) { return __awaiter(void 0, void 0, void 0, functio
617
720
  });
618
721
  }); };
619
722
  exports.setup = setup;
620
- var templateObject_1;
723
+ var templateObject_1, templateObject_2;
621
724
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};