@proteinjs/db 1.49.1 → 1.50.1
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 +27 -0
- package/dist/generated/index.js +1 -1
- package/dist/generated/index.js.map +1 -1
- package/dist/generated/test/index.js +1 -1
- package/dist/generated/test/index.js.map +1 -1
- package/dist/src/MigrationRunner.d.ts +96 -1
- package/dist/src/MigrationRunner.d.ts.map +1 -1
- package/dist/src/MigrationRunner.js +285 -48
- package/dist/src/MigrationRunner.js.map +1 -1
- package/dist/src/Table.d.ts +5 -1
- package/dist/src/Table.d.ts.map +1 -1
- package/dist/src/auth/TableAuth.d.ts +2 -0
- package/dist/src/auth/TableAuth.d.ts.map +1 -1
- package/dist/src/auth/TableAuth.js +24 -2
- package/dist/src/auth/TableAuth.js.map +1 -1
- package/dist/src/tables/MigrationTable.d.ts +26 -0
- package/dist/src/tables/MigrationTable.d.ts.map +1 -1
- package/dist/src/tables/MigrationTable.js.map +1 -1
- package/dist/test/MigrationPlan.test.d.ts +2 -0
- package/dist/test/MigrationPlan.test.d.ts.map +1 -0
- package/dist/test/MigrationPlan.test.js +448 -0
- package/dist/test/MigrationPlan.test.js.map +1 -0
- package/dist/test/TableAuthIdentity.test.js +85 -0
- package/dist/test/TableAuthIdentity.test.js.map +1 -1
- package/generated/index.ts +1 -1
- package/generated/test/index.ts +1 -1
- package/package.json +2 -2
- package/src/MigrationRunner.ts +276 -39
- package/src/Table.ts +5 -1
- package/src/auth/TableAuth.ts +26 -2
- package/src/tables/MigrationTable.ts +27 -0
- package/test/MigrationPlan.test.ts +337 -0
- package/test/TableAuthIdentity.test.ts +95 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MigrationPlan.test.js","sourceRoot":"","sources":["../../test/MigrationPlan.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -107,4 +107,89 @@ describe('TableAuth operation doors keep their declared-block semantics', functi
|
|
|
107
107
|
expect(new TableAuth_1.TableAuth().canPerform(new QueryOnlyTable(), 'insert')).toBe(false);
|
|
108
108
|
});
|
|
109
109
|
});
|
|
110
|
+
/**
|
|
111
|
+
* The RPC runs BOTH doors — the service gate (`TableServiceAuth`) and then the inner `Db`'s
|
|
112
|
+
* db-api re-check as the calling user — so a db door a table leaves UNDECLARED mirrors the door
|
|
113
|
+
* its service block declares for the same operation. "db doors mirror service doors" was a rule
|
|
114
|
+
* tables hand-copied; the owner derives it now: fifteen consumer tables opened `['admin']` writes
|
|
115
|
+
* on the service api over a query-only db block, and every one refused the admin at the inner
|
|
116
|
+
* check in the gate's own words — the gate admitted them, the re-check behind it did not, two
|
|
117
|
+
* verdicts for one caller. One-way: a service block that omits the door keeps the lock (the
|
|
118
|
+
* session / audit-trail pattern — no write door on either api, break-glass included), and a table
|
|
119
|
+
* with no service block keeps its db block as written (the pin above).
|
|
120
|
+
*/
|
|
121
|
+
var ReadOpenWriteAdminTable = /** @class */ (function (_super) {
|
|
122
|
+
__extends(ReadOpenWriteAdminTable, _super);
|
|
123
|
+
function ReadOpenWriteAdminTable() {
|
|
124
|
+
var _this = _super !== null && _super.apply(this, arguments) || this;
|
|
125
|
+
_this.name = 'identity_read_open_write_admin_test';
|
|
126
|
+
_this.auth = {
|
|
127
|
+
db: { query: 'authenticated' },
|
|
128
|
+
service: { query: 'authenticated', insert: ['admin'], update: ['admin'], delete: ['admin'] },
|
|
129
|
+
};
|
|
130
|
+
_this.columns = (0, Record_1.withRecordColumns)({ title: new Columns_1.StringColumn('title') });
|
|
131
|
+
return _this;
|
|
132
|
+
}
|
|
133
|
+
return ReadOpenWriteAdminTable;
|
|
134
|
+
}(Table_1.Table));
|
|
135
|
+
var LockedLedgerTable = /** @class */ (function (_super) {
|
|
136
|
+
__extends(LockedLedgerTable, _super);
|
|
137
|
+
function LockedLedgerTable() {
|
|
138
|
+
var _this = _super !== null && _super.apply(this, arguments) || this;
|
|
139
|
+
_this.name = 'identity_locked_ledger_test';
|
|
140
|
+
_this.auth = {
|
|
141
|
+
db: { query: { permission: 'ledger' } },
|
|
142
|
+
service: { query: { permission: 'ledger' } },
|
|
143
|
+
};
|
|
144
|
+
_this.columns = (0, Record_1.withRecordColumns)({ title: new Columns_1.StringColumn('title') });
|
|
145
|
+
return _this;
|
|
146
|
+
}
|
|
147
|
+
return LockedLedgerTable;
|
|
148
|
+
}(Table_1.Table));
|
|
149
|
+
describe('TableAuth — an undeclared db door mirrors the declared service door', function () {
|
|
150
|
+
beforeEach(function () {
|
|
151
|
+
setMapping({ ledger: ['ledger'] });
|
|
152
|
+
});
|
|
153
|
+
afterEach(function () {
|
|
154
|
+
user_auth_1.UserAuth.userRepo = undefined;
|
|
155
|
+
user_auth_1.UserAuth.permissionRolesMapping = undefined;
|
|
156
|
+
});
|
|
157
|
+
test("an admin's write clears the ['admin'] service door AND the db-api re-check behind it", function () {
|
|
158
|
+
setUser(['admin']);
|
|
159
|
+
var table = new ReadOpenWriteAdminTable();
|
|
160
|
+
expect(function () { return new TableAuth_1.TableAuth().canUpdate(table, 'service'); }).not.toThrow();
|
|
161
|
+
expect(function () { return new TableAuth_1.TableAuth().canUpdate(table); }).not.toThrow();
|
|
162
|
+
expect(function () { return new TableAuth_1.TableAuth().canInsert(table); }).not.toThrow();
|
|
163
|
+
expect(function () { return new TableAuth_1.TableAuth().canDelete(table); }).not.toThrow();
|
|
164
|
+
expect(new TableAuth_1.TableAuth().canPerform(table, 'update', 'db')).toBe(true);
|
|
165
|
+
});
|
|
166
|
+
test('a signed-in non-admin is refused by name on both apis; the read door stays open', function () {
|
|
167
|
+
setUser(['ledger']);
|
|
168
|
+
var table = new ReadOpenWriteAdminTable();
|
|
169
|
+
expect(function () { return new TableAuth_1.TableAuth().canUpdate(table, 'service'); }).toThrow('User is not authorized to update records in table: identity_read_open_write_admin_test');
|
|
170
|
+
expect(function () { return new TableAuth_1.TableAuth().canUpdate(table); }).toThrow('User is not authorized to update records in table: identity_read_open_write_admin_test');
|
|
171
|
+
expect(function () { return new TableAuth_1.TableAuth().canQuery(table); }).not.toThrow();
|
|
172
|
+
});
|
|
173
|
+
test('a guest is refused every door', function () {
|
|
174
|
+
setGuest();
|
|
175
|
+
var table = new ReadOpenWriteAdminTable();
|
|
176
|
+
expect(function () { return new TableAuth_1.TableAuth().canQuery(table); }).toThrow('User is not authorized to query table: identity_read_open_write_admin_test');
|
|
177
|
+
expect(function () { return new TableAuth_1.TableAuth().canUpdate(table); }).toThrow();
|
|
178
|
+
expect(function () { return new TableAuth_1.TableAuth().canInsert(table, 'service'); }).toThrow();
|
|
179
|
+
});
|
|
180
|
+
test('one-way: a service block that omits the door keeps the lock on both apis, break-glass included', function () {
|
|
181
|
+
setUser(['admin']);
|
|
182
|
+
var table = new LockedLedgerTable();
|
|
183
|
+
expect(new TableAuth_1.TableAuth().canPerform(table, 'update', 'service')).toBe(false);
|
|
184
|
+
expect(new TableAuth_1.TableAuth().canPerform(table, 'update', 'db')).toBe(false);
|
|
185
|
+
expect(function () { return new TableAuth_1.TableAuth().canUpdate(table); }).toThrow('User is not authorized to update records in table: identity_locked_ledger_test');
|
|
186
|
+
expect(function () { return new TableAuth_1.TableAuth().canInsert(table, 'service'); }).toThrow();
|
|
187
|
+
expect(function () { return new TableAuth_1.TableAuth().canQuery(table); }).not.toThrow();
|
|
188
|
+
});
|
|
189
|
+
test('a table with no service block keeps its db block as written — admin included', function () {
|
|
190
|
+
setUser(['admin']);
|
|
191
|
+
expect(new TableAuth_1.TableAuth().canPerform(new QueryOnlyTable(), 'update', 'db')).toBe(false);
|
|
192
|
+
expect(function () { return new TableAuth_1.TableAuth().canUpdate(new QueryOnlyTable()); }).toThrow('User is not authorized to update records in table: identity_query_only_test');
|
|
193
|
+
});
|
|
194
|
+
});
|
|
110
195
|
//# sourceMappingURL=TableAuthIdentity.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableAuthIdentity.test.js","sourceRoot":"","sources":["../../test/TableAuthIdentity.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,kDAAgD;AAChD,sCAAqC;AACrC,wCAA0D;AAC1D,0CAA8C;AAC9C,mDAAkD;
|
|
1
|
+
{"version":3,"file":"TableAuthIdentity.test.js","sourceRoot":"","sources":["../../test/TableAuthIdentity.test.ts"],"names":[],"mappings":"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"}
|