@nest-boot/row-level-security 7.2.2 → 7.2.4
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/dist/decorators/policy.decorator.d.ts +1 -1
- package/dist/decorators/policy.decorator.js +2 -2
- package/dist/decorators/policy.decorator.js.map +1 -1
- package/dist/decorators/policy.decorator.spec.js +18 -18
- package/dist/decorators/policy.decorator.spec.js.map +1 -1
- package/dist/index.spec.js +2 -2
- package/dist/index.spec.js.map +1 -1
- package/dist/interfaces/policy-options.interface.d.ts +1 -1
- package/dist/interfaces/row-level-security-migration-generator.interface.d.ts +3 -0
- package/dist/row-level-security-driver.js +1 -1
- package/dist/row-level-security-driver.js.map +1 -1
- package/dist/row-level-security-driver.spec.js +4 -4
- package/dist/row-level-security-driver.spec.js.map +1 -1
- package/dist/row-level-security-migration-generator.d.ts +1 -0
- package/dist/row-level-security-migration-generator.js +66 -15
- package/dist/row-level-security-migration-generator.js.map +1 -1
- package/dist/row-level-security-migration-generator.spec.js +121 -36
- package/dist/row-level-security-migration-generator.spec.js.map +1 -1
- package/dist/row-level-security-migration.d.ts +1 -1
- package/dist/row-level-security-migration.js +1 -1
- package/dist/row-level-security-migration.js.map +1 -1
- package/dist/row-level-security-migration.spec.js +6 -5
- package/dist/row-level-security-migration.spec.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/utils/create-policy-bootstrap-sql-statements.d.ts +2 -2
- package/dist/utils/create-policy-bootstrap-sql-statements.js +2 -5
- package/dist/utils/create-policy-bootstrap-sql-statements.js.map +1 -1
- package/dist/utils/create-policy-role-sql-statements.d.ts +4 -4
- package/dist/utils/create-policy-role-sql-statements.js +6 -19
- package/dist/utils/create-policy-role-sql-statements.js.map +1 -1
- package/dist/utils/policy-migration-sql.spec.js +19 -33
- package/dist/utils/policy-migration-sql.spec.js.map +1 -1
- package/package.json +4 -4
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
/** Creates SQL statements for
|
|
2
|
-
export declare function createPolicyBootstrapSqlStatements():
|
|
1
|
+
/** Creates SQL statements for shared RLS bootstrap infrastructure. */
|
|
2
|
+
export declare function createPolicyBootstrapSqlStatements(): never[];
|
|
@@ -1,11 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.createPolicyBootstrapSqlStatements = createPolicyBootstrapSqlStatements;
|
|
4
|
-
/** Creates SQL statements for
|
|
4
|
+
/** Creates SQL statements for shared RLS bootstrap infrastructure. */
|
|
5
5
|
function createPolicyBootstrapSqlStatements() {
|
|
6
|
-
return [
|
|
7
|
-
"create schema if not exists app;",
|
|
8
|
-
"create or replace function app.get_context(context_key text, context_type anyelement) returns anyelement as $$ declare context_value text; begin context_value := current_setting('app.' || context_key, true); if context_value is null or context_value = '' then return null; end if; execute format('select $1::%s', pg_typeof(context_type)::text) using context_value into context_type; return context_type; end; $$ language plpgsql stable;",
|
|
9
|
-
];
|
|
6
|
+
return [];
|
|
10
7
|
}
|
|
11
8
|
//# sourceMappingURL=create-policy-bootstrap-sql-statements.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-policy-bootstrap-sql-statements.js","sourceRoot":"","sources":["../../src/utils/create-policy-bootstrap-sql-statements.ts"],"names":[],"mappings":";;AACA,
|
|
1
|
+
{"version":3,"file":"create-policy-bootstrap-sql-statements.js","sourceRoot":"","sources":["../../src/utils/create-policy-bootstrap-sql-statements.ts"],"names":[],"mappings":";;AACA,gFAEC;AAHD,sEAAsE;AACtE,SAAgB,kCAAkC;IAChD,OAAO,EAAE,CAAC;AACZ,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
/** Creates SQL
|
|
2
|
-
export declare function createPolicyRoleUpSqlStatements(roles?: Iterable<string>):
|
|
3
|
-
/** Creates SQL
|
|
4
|
-
export declare function createPolicyRoleDownSqlStatements(roles?: Iterable<string>):
|
|
1
|
+
/** Creates SQL for pre-created RLS roles. Roles are managed outside migrations. */
|
|
2
|
+
export declare function createPolicyRoleUpSqlStatements(roles?: Iterable<string>): never[];
|
|
3
|
+
/** Creates SQL for rolling back role bootstrap. Roles are managed outside migrations. */
|
|
4
|
+
export declare function createPolicyRoleDownSqlStatements(roles?: Iterable<string>): never[];
|
|
5
5
|
/** Returns unique policy roles, always including the anonymous fallback role. */
|
|
6
6
|
export declare function getPolicyRoleNames(roles?: Iterable<string>): string[];
|
|
@@ -5,28 +5,15 @@ exports.createPolicyRoleDownSqlStatements = createPolicyRoleDownSqlStatements;
|
|
|
5
5
|
exports.getPolicyRoleNames = getPolicyRoleNames;
|
|
6
6
|
const row_level_security_role_enum_1 = require("../enums/row-level-security-role.enum");
|
|
7
7
|
const assert_identifier_1 = require("./assert-identifier");
|
|
8
|
-
|
|
9
|
-
/** Creates SQL that ensures RLS roles and grants required runtime privileges. */
|
|
8
|
+
/** Creates SQL for pre-created RLS roles. Roles are managed outside migrations. */
|
|
10
9
|
function createPolicyRoleUpSqlStatements(roles = []) {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
const roleLiteral = (0, escape_sql_literal_1.escapeSqlLiteral)(roleName);
|
|
14
|
-
return [
|
|
15
|
-
`do $$ begin if not exists (select 1 from pg_roles where rolname = '${roleLiteral}') then create role ${roleName} nologin; end if; end $$;`,
|
|
16
|
-
`grant ${roleName} to current_user;`,
|
|
17
|
-
`grant usage on schema app to ${roleName};`,
|
|
18
|
-
];
|
|
19
|
-
});
|
|
10
|
+
getPolicyRoleNames(roles);
|
|
11
|
+
return [];
|
|
20
12
|
}
|
|
21
|
-
/** Creates SQL
|
|
13
|
+
/** Creates SQL for rolling back role bootstrap. Roles are managed outside migrations. */
|
|
22
14
|
function createPolicyRoleDownSqlStatements(roles = []) {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
return [
|
|
26
|
-
`revoke usage on schema app from ${roleName};`,
|
|
27
|
-
`revoke ${roleName} from current_user;`,
|
|
28
|
-
];
|
|
29
|
-
});
|
|
15
|
+
[...getExplicitPolicyRoleNames(roles)].sort();
|
|
16
|
+
return [];
|
|
30
17
|
}
|
|
31
18
|
/** Returns unique policy roles, always including the anonymous fallback role. */
|
|
32
19
|
function getPolicyRoleNames(roles = []) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-policy-role-sql-statements.js","sourceRoot":"","sources":["../../src/utils/create-policy-role-sql-statements.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"create-policy-role-sql-statements.js","sourceRoot":"","sources":["../../src/utils/create-policy-role-sql-statements.ts"],"names":[],"mappings":";;AAIA,0EAIC;AAGD,8EAMC;AAGD,gDAMC;AA1BD,wFAA6E;AAC7E,2DAAuD;AAEvD,mFAAmF;AACnF,SAAgB,+BAA+B,CAAC,QAA0B,EAAE;IAC1E,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAE1B,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,yFAAyF;AACzF,SAAgB,iCAAiC,CAC/C,QAA0B,EAAE;IAE5B,CAAC,GAAG,0BAA0B,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAE9C,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,iFAAiF;AACjF,SAAgB,kBAAkB,CAAC,QAA0B,EAAE;IAC7D,MAAM,SAAS,GAAG,0BAA0B,CAAC,KAAK,CAAC,CAAC;IAEpD,SAAS,CAAC,MAAM,CAAC,mDAAoB,CAAC,SAAS,CAAC,CAAC;IAEjD,OAAO,CAAC,mDAAoB,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;AACpE,CAAC;AAED,0EAA0E;AAC1E,SAAS,0BAA0B,CAAC,KAAuB;IACzD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;IAEpC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,QAAQ,EAAE,CAAC;YACpC,SAAS;QACX,CAAC;QAED,SAAS,CAAC,GAAG,CAAC,IAAA,oCAAgB,EAAC,IAAI,CAAC,CAAC,CAAC;IACxC,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -10,44 +10,30 @@ const create_policy_up_sql_statements_1 = require("./create-policy-up-sql-statem
|
|
|
10
10
|
describe("policy migration SQL", () => {
|
|
11
11
|
it("generates row level security bootstrap SQL", () => {
|
|
12
12
|
const statements = (0, create_policy_bootstrap_sql_statements_1.createPolicyBootstrapSqlStatements)();
|
|
13
|
-
expect(statements).toEqual([
|
|
14
|
-
"create schema if not exists app;",
|
|
15
|
-
"create or replace function app.get_context(context_key text, context_type anyelement) returns anyelement as $$ declare context_value text; begin context_value := current_setting('app.' || context_key, true); if context_value is null or context_value = '' then return null; end if; execute format('select $1::%s', pg_typeof(context_type)::text) using context_value into context_type; return context_type; end; $$ language plpgsql stable;",
|
|
16
|
-
]);
|
|
13
|
+
expect(statements).toEqual([]);
|
|
17
14
|
expect(statements.join("\n")).not.toContain("grant all on all tables");
|
|
18
|
-
expect(statements.join("\n")).not.toContain("
|
|
15
|
+
expect(statements.join("\n")).not.toContain("get_context");
|
|
19
16
|
});
|
|
20
|
-
it("
|
|
17
|
+
it("does not generate role bootstrap SQL for anonymous and custom policy roles", () => {
|
|
21
18
|
const statements = (0, create_policy_role_sql_statements_1.createPolicyRoleUpSqlStatements)([
|
|
22
19
|
"authenticated",
|
|
23
20
|
"workspace_admin",
|
|
24
21
|
]);
|
|
25
|
-
expect(statements).toEqual([
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
"do $$ begin if not exists (select 1 from pg_roles where rolname = 'authenticated') then create role authenticated nologin; end if; end $$;",
|
|
30
|
-
"grant authenticated to current_user;",
|
|
31
|
-
"grant usage on schema app to authenticated;",
|
|
32
|
-
"do $$ begin if not exists (select 1 from pg_roles where rolname = 'workspace_admin') then create role workspace_admin nologin; end if; end $$;",
|
|
33
|
-
"grant workspace_admin to current_user;",
|
|
34
|
-
"grant usage on schema app to workspace_admin;",
|
|
35
|
-
]);
|
|
22
|
+
expect(statements).toEqual([]);
|
|
23
|
+
expect(statements.join("\n")).not.toContain("create role");
|
|
24
|
+
expect(statements.join("\n")).not.toContain("current_user");
|
|
25
|
+
expect(statements.join("\n")).not.toContain("grant usage on schema app");
|
|
36
26
|
});
|
|
37
|
-
it("
|
|
27
|
+
it("does not generate role down SQL", () => {
|
|
38
28
|
const statements = (0, create_policy_role_sql_statements_1.createPolicyRoleDownSqlStatements)(["workspace_admin"]);
|
|
39
|
-
expect(statements).toEqual([
|
|
40
|
-
"revoke usage on schema app from workspace_admin;",
|
|
41
|
-
"revoke workspace_admin from current_user;",
|
|
42
|
-
]);
|
|
29
|
+
expect(statements).toEqual([]);
|
|
43
30
|
expect(statements.join("\n")).not.toContain("drop role");
|
|
31
|
+
expect(statements.join("\n")).not.toContain("current_user");
|
|
32
|
+
expect(statements.join("\n")).not.toContain("revoke usage on schema app");
|
|
44
33
|
});
|
|
45
34
|
it("generates role down SQL for an explicit anonymous role", () => {
|
|
46
35
|
const statements = (0, create_policy_role_sql_statements_1.createPolicyRoleDownSqlStatements)(["anonymous"]);
|
|
47
|
-
expect(statements).toEqual([
|
|
48
|
-
"revoke usage on schema app from anonymous;",
|
|
49
|
-
"revoke anonymous from current_user;",
|
|
50
|
-
]);
|
|
36
|
+
expect(statements).toEqual([]);
|
|
51
37
|
});
|
|
52
38
|
it("normalizes policy role names with anonymous first and public skipped", () => {
|
|
53
39
|
expect((0, create_policy_role_sql_statements_1.getPolicyRoleNames)()).toEqual(["anonymous"]);
|
|
@@ -64,12 +50,12 @@ describe("policy migration SQL", () => {
|
|
|
64
50
|
tableName: "workspace_member",
|
|
65
51
|
policyName: "workspace_member_user_select_policy",
|
|
66
52
|
command: policy_command_enum_1.PolicyCommand.SELECT,
|
|
67
|
-
using: `((select app.
|
|
53
|
+
using: `((select current_setting('app.user_id', true)::bigint) = "user_id")`,
|
|
68
54
|
});
|
|
69
55
|
expect(statements).toEqual([
|
|
70
56
|
'alter table "public"."workspace_member" enable row level security;',
|
|
71
57
|
'drop policy if exists workspace_member_user_select_policy on "public"."workspace_member";',
|
|
72
|
-
'create policy workspace_member_user_select_policy on "public"."workspace_member" as permissive for select using ((select
|
|
58
|
+
'create policy workspace_member_user_select_policy on "public"."workspace_member" as permissive for select using ((select current_setting(\'app.user_id\', true)::bigint) = "user_id");',
|
|
73
59
|
]);
|
|
74
60
|
});
|
|
75
61
|
it("generates policy SQL for explicit roles", () => {
|
|
@@ -78,7 +64,7 @@ describe("policy migration SQL", () => {
|
|
|
78
64
|
tableName: "workspace_member",
|
|
79
65
|
policyName: "workspace_member_user_select_policy",
|
|
80
66
|
command: policy_command_enum_1.PolicyCommand.SELECT,
|
|
81
|
-
using: `((select app.
|
|
67
|
+
using: `((select current_setting('app.user_id', true)::bigint) = "user_id")`,
|
|
82
68
|
roles: ["authenticated", "anonymous"],
|
|
83
69
|
});
|
|
84
70
|
expect(statements[2]).toBe('drop policy if exists workspace_member_user_select_policy on "public"."workspace_member";');
|
|
@@ -100,14 +86,14 @@ describe("policy migration SQL", () => {
|
|
|
100
86
|
tableName: "workspace_member",
|
|
101
87
|
policyName: "workspace_member_user_select_policy",
|
|
102
88
|
command: policy_command_enum_1.PolicyCommand.SELECT,
|
|
103
|
-
using: `((select app.
|
|
89
|
+
using: `((select current_setting('app.user_id', true)::bigint) = "user_id")`,
|
|
104
90
|
roles: ["authenticated", "anonymous"],
|
|
105
91
|
});
|
|
106
92
|
expect(statements).toEqual([
|
|
107
93
|
'alter table "public"."workspace_member" enable row level security;',
|
|
108
94
|
'grant select on table "public"."workspace_member" to authenticated, anonymous;',
|
|
109
95
|
'drop policy if exists workspace_member_user_select_policy on "public"."workspace_member";',
|
|
110
|
-
'create policy workspace_member_user_select_policy on "public"."workspace_member" as permissive for select to authenticated, anonymous using ((select
|
|
96
|
+
'create policy workspace_member_user_select_policy on "public"."workspace_member" as permissive for select to authenticated, anonymous using ((select current_setting(\'app.user_id\', true)::bigint) = "user_id");',
|
|
111
97
|
]);
|
|
112
98
|
});
|
|
113
99
|
it("generates sequence grants for explicit insert policy roles", () => {
|
|
@@ -201,9 +187,9 @@ describe("policy migration SQL", () => {
|
|
|
201
187
|
tableName: "workspace_member",
|
|
202
188
|
policyName: "tenant_required_policy",
|
|
203
189
|
mode: policy_mode_enum_1.PolicyMode.RESTRICTIVE,
|
|
204
|
-
using: `((select app.
|
|
190
|
+
using: `((select current_setting('app.tenant_id', true)::bigint) is not null)`,
|
|
205
191
|
});
|
|
206
|
-
expect(statements[2]).toBe('create policy tenant_required_policy on "public"."workspace_member" as restrictive for all using ((select
|
|
192
|
+
expect(statements[2]).toBe('create policy tenant_required_policy on "public"."workspace_member" as restrictive for all using ((select current_setting(\'app.tenant_id\', true)::bigint) is not null);');
|
|
207
193
|
});
|
|
208
194
|
it("generates insert policy SQL with only a with check predicate", () => {
|
|
209
195
|
const statements = (0, create_policy_up_sql_statements_1.createPolicyUpSqlStatements)({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"policy-migration-sql.spec.js","sourceRoot":"","sources":["../../src/utils/policy-migration-sql.spec.ts"],"names":[],"mappings":";;AAAA,sEAA6D;AAC7D,gEAAuD;AACvD,qGAA8F;AAC9F,qEAA+D;AAC/D,+GAAuG;AACvG,2FAI6C;AAC7C,uFAAgF;AAEhF,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IACpC,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,UAAU,GAAG,IAAA,2EAAkC,GAAE,CAAC;QAExD,MAAM,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC
|
|
1
|
+
{"version":3,"file":"policy-migration-sql.spec.js","sourceRoot":"","sources":["../../src/utils/policy-migration-sql.spec.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nest-boot/row-level-security",
|
|
3
|
-
"version": "7.2.
|
|
3
|
+
"version": "7.2.4",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "https://github.com/nest-boot/nest-boot.git",
|
|
@@ -46,11 +46,11 @@
|
|
|
46
46
|
"rxjs": "^7.8.2",
|
|
47
47
|
"ts-jest": "^29.4.4",
|
|
48
48
|
"typescript": "^5.9.3",
|
|
49
|
-
"@nest-boot/eslint-config": "^7.0.3",
|
|
50
49
|
"@nest-boot/eslint-plugin": "^7.0.6",
|
|
50
|
+
"@nest-boot/eslint-config": "^7.0.3",
|
|
51
51
|
"@nest-boot/mikro-orm": "^7.4.0",
|
|
52
|
-
"@nest-boot/
|
|
53
|
-
"@nest-boot/
|
|
52
|
+
"@nest-boot/tsconfig": "^7.0.3",
|
|
53
|
+
"@nest-boot/request-context": "^7.4.3"
|
|
54
54
|
},
|
|
55
55
|
"publishConfig": {
|
|
56
56
|
"access": "public"
|