@futdevpro/nts-dynamo 1.15.184 → 1.15.186
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/LICENSE +21 -21
- package/README.md +801 -794
- package/build/_modules/privacy-lifecycle/_models/privacy-export-bundle.interface.d.ts +30 -0
- package/build/_modules/privacy-lifecycle/_models/privacy-export-bundle.interface.d.ts.map +1 -0
- package/build/_modules/privacy-lifecycle/_models/privacy-export-bundle.interface.js +3 -0
- package/build/_modules/privacy-lifecycle/_models/privacy-export-bundle.interface.js.map +1 -0
- package/build/_modules/privacy-lifecycle/index.d.ts +2 -0
- package/build/_modules/privacy-lifecycle/index.d.ts.map +1 -1
- package/build/_modules/privacy-lifecycle/index.js +3 -1
- package/build/_modules/privacy-lifecycle/index.js.map +1 -1
- package/build/_modules/privacy-lifecycle/privacy-export-bundle.control-service.d.ts +37 -0
- package/build/_modules/privacy-lifecycle/privacy-export-bundle.control-service.d.ts.map +1 -0
- package/build/_modules/privacy-lifecycle/privacy-export-bundle.control-service.js +241 -0
- package/build/_modules/privacy-lifecycle/privacy-export-bundle.control-service.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { DyNTS_PrivacyContributorOutcome_Interface } from './privacy-contributor-outcome.interface';
|
|
2
|
+
import { DyNTS_PrivacyRequestRecord_Interface } from './privacy-request-record.interface';
|
|
3
|
+
import { DyNTS_PrivacyExportArtifactLookup_Interface, DyNTS_PrivacyExportArtifactReadResult_Interface } from './privacy-export-artifact.interface';
|
|
4
|
+
/** Exact trusted authority used to assemble one completed privacy export. */
|
|
5
|
+
export interface DyNTS_PrivacyExportBundleRequest_Interface {
|
|
6
|
+
contractVersion: 'dynts-privacy-export-bundle-request/1';
|
|
7
|
+
requestId: string;
|
|
8
|
+
subjectId: string;
|
|
9
|
+
organizationId: string;
|
|
10
|
+
}
|
|
11
|
+
/** Minimal persistence reads required by the reusable bundle assembler. */
|
|
12
|
+
export interface DyNTS_PrivacyExportBundleLifecycleReader_Interface {
|
|
13
|
+
findRequestById(requestId: string): Promise<DyNTS_PrivacyRequestRecord_Interface | null>;
|
|
14
|
+
listContributorOutcomes(requestId: string): Promise<DyNTS_PrivacyContributorOutcome_Interface[]>;
|
|
15
|
+
}
|
|
16
|
+
/** Exact-authority artifact read boundary required by the reusable bundle assembler. */
|
|
17
|
+
export interface DyNTS_PrivacyExportBundleArtifactReader_Interface {
|
|
18
|
+
read(request: DyNTS_PrivacyExportArtifactLookup_Interface): Promise<DyNTS_PrivacyExportArtifactReadResult_Interface>;
|
|
19
|
+
}
|
|
20
|
+
/** Content-free metadata plus sensitive in-memory JSON returned to an authorized delivery layer. */
|
|
21
|
+
export interface DyNTS_PrivacyExportBundleResult_Interface {
|
|
22
|
+
contractVersion: 'dynts-privacy-export-bundle-result/1';
|
|
23
|
+
contentType: 'application/json';
|
|
24
|
+
plaintext: string;
|
|
25
|
+
bundleChecksum: string;
|
|
26
|
+
plaintextBytes: number;
|
|
27
|
+
contributorCount: number;
|
|
28
|
+
earliestArtifactExpiresAt: string;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=privacy-export-bundle.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"privacy-export-bundle.interface.d.ts","sourceRoot":"","sources":["../../../../src/_modules/privacy-lifecycle/_models/privacy-export-bundle.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yCAAyC,EAAE,MAAM,yCAAyC,CAAC;AACpG,OAAO,EAAE,oCAAoC,EAAE,MAAM,oCAAoC,CAAC;AAC1F,OAAO,EACL,2CAA2C,EAC3C,+CAA+C,EAChD,MAAM,qCAAqC,CAAC;AAE7C,6EAA6E;AAC7E,MAAM,WAAW,0CAA0C;IACzD,eAAe,EAAE,uCAAuC,CAAC;IACzD,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,2EAA2E;AAC3E,MAAM,WAAW,kDAAkD;IACjE,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,oCAAoC,GAAG,IAAI,CAAC,CAAC;IACzF,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,yCAAyC,EAAE,CAAC,CAAC;CAClG;AAED,wFAAwF;AACxF,MAAM,WAAW,iDAAiD;IAChE,IAAI,CACF,OAAO,EAAE,2CAA2C,GACnD,OAAO,CAAC,+CAA+C,CAAC,CAAC;CAC7D;AAED,oGAAoG;AACpG,MAAM,WAAW,yCAAyC;IACxD,eAAe,EAAE,sCAAsC,CAAC;IACxD,WAAW,EAAE,kBAAkB,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,yBAAyB,EAAE,MAAM,CAAC;CACnC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"privacy-export-bundle.interface.js","sourceRoot":"","sources":["../../../../src/_modules/privacy-lifecycle/_models/privacy-export-bundle.interface.ts"],"names":[],"mappings":""}
|
|
@@ -3,6 +3,7 @@ export { DyNTS_PrivacyRequestCursor_ControlService } from './privacy-request-cur
|
|
|
3
3
|
export { DyNTS_PrivacyLedger_ControlService } from './privacy-ledger.control-service';
|
|
4
4
|
export { DyNTS_PrivacyExportArtifact_ControlService } from './privacy-export-artifact.control-service';
|
|
5
5
|
export { DyNTS_PrivacyExportArtifact_MongoStore } from './privacy-export-artifact.mongo-store';
|
|
6
|
+
export { DyNTS_PrivacyExportBundle_ControlService } from './privacy-export-bundle.control-service';
|
|
6
7
|
export { DyNTS_PrivacyConsentDecision_Type } from './_enums/privacy-consent-decision.type-enum';
|
|
7
8
|
export { DyNTS_PrivacyContributorAction_Type } from './_enums/privacy-contributor-action.type-enum';
|
|
8
9
|
export { DyNTS_PrivacyContributorOutcome_Type } from './_enums/privacy-contributor-outcome.type-enum';
|
|
@@ -39,4 +40,5 @@ export { DyNTS_PrivacyRequestListResult_Interface, DyNTS_PrivacyRequestPersisten
|
|
|
39
40
|
export { DyNTS_PrivacyRequestResult_Interface } from './_models/privacy-request-result.interface';
|
|
40
41
|
export { DyNTS_PrivacyRequestView_Interface } from './_models/privacy-request-view.interface';
|
|
41
42
|
export { DyNTS_PrivacyExportArtifactAuthority_Interface, DyNTS_PrivacyExportArtifactCipher_Interface, DyNTS_PrivacyExportArtifactContext_Interface, DyNTS_PrivacyExportArtifactCreateResult_Interface, DyNTS_PrivacyExportArtifactLookup_Interface, DyNTS_PrivacyExportArtifactReadResult_Interface, DyNTS_PrivacyExportArtifactRecord_Interface, DyNTS_PrivacyExportArtifactSealed_Interface, DyNTS_PrivacyExportArtifactStore_Interface, DyNTS_PrivacyExportArtifactView_Interface, DyNTS_PrivacyExportArtifactWrite_Interface } from './_models/privacy-export-artifact.interface';
|
|
43
|
+
export { DyNTS_PrivacyExportBundleArtifactReader_Interface, DyNTS_PrivacyExportBundleLifecycleReader_Interface, DyNTS_PrivacyExportBundleRequest_Interface, DyNTS_PrivacyExportBundleResult_Interface } from './_models/privacy-export-bundle.interface';
|
|
42
44
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/_modules/privacy-lifecycle/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/_modules/privacy-lifecycle/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.DyNTS_PrivacyRequest_Type = exports.DyNTS_PrivacyRequestState_Type = exports.DyNTS_PrivacyContributorOutcome_Type = exports.DyNTS_PrivacyContributorAction_Type = exports.DyNTS_PrivacyConsentDecision_Type = exports.DyNTS_PrivacyExportArtifact_MongoStore = exports.DyNTS_PrivacyExportArtifact_ControlService = exports.DyNTS_PrivacyLedger_ControlService = exports.DyNTS_PrivacyRequestCursor_ControlService = exports.DyNTS_PrivacyLifecycle_ControlService = void 0;
|
|
3
|
+
exports.DyNTS_PrivacyRequest_Type = exports.DyNTS_PrivacyRequestState_Type = exports.DyNTS_PrivacyContributorOutcome_Type = exports.DyNTS_PrivacyContributorAction_Type = exports.DyNTS_PrivacyConsentDecision_Type = exports.DyNTS_PrivacyExportBundle_ControlService = exports.DyNTS_PrivacyExportArtifact_MongoStore = exports.DyNTS_PrivacyExportArtifact_ControlService = exports.DyNTS_PrivacyLedger_ControlService = exports.DyNTS_PrivacyRequestCursor_ControlService = exports.DyNTS_PrivacyLifecycle_ControlService = void 0;
|
|
4
4
|
var privacy_lifecycle_control_service_1 = require("./privacy-lifecycle.control-service");
|
|
5
5
|
Object.defineProperty(exports, "DyNTS_PrivacyLifecycle_ControlService", { enumerable: true, get: function () { return privacy_lifecycle_control_service_1.DyNTS_PrivacyLifecycle_ControlService; } });
|
|
6
6
|
var privacy_request_cursor_control_service_1 = require("./privacy-request-cursor.control-service");
|
|
@@ -11,6 +11,8 @@ var privacy_export_artifact_control_service_1 = require("./privacy-export-artifa
|
|
|
11
11
|
Object.defineProperty(exports, "DyNTS_PrivacyExportArtifact_ControlService", { enumerable: true, get: function () { return privacy_export_artifact_control_service_1.DyNTS_PrivacyExportArtifact_ControlService; } });
|
|
12
12
|
var privacy_export_artifact_mongo_store_1 = require("./privacy-export-artifact.mongo-store");
|
|
13
13
|
Object.defineProperty(exports, "DyNTS_PrivacyExportArtifact_MongoStore", { enumerable: true, get: function () { return privacy_export_artifact_mongo_store_1.DyNTS_PrivacyExportArtifact_MongoStore; } });
|
|
14
|
+
var privacy_export_bundle_control_service_1 = require("./privacy-export-bundle.control-service");
|
|
15
|
+
Object.defineProperty(exports, "DyNTS_PrivacyExportBundle_ControlService", { enumerable: true, get: function () { return privacy_export_bundle_control_service_1.DyNTS_PrivacyExportBundle_ControlService; } });
|
|
14
16
|
var privacy_consent_decision_type_enum_1 = require("./_enums/privacy-consent-decision.type-enum");
|
|
15
17
|
Object.defineProperty(exports, "DyNTS_PrivacyConsentDecision_Type", { enumerable: true, get: function () { return privacy_consent_decision_type_enum_1.DyNTS_PrivacyConsentDecision_Type; } });
|
|
16
18
|
var privacy_contributor_action_type_enum_1 = require("./_enums/privacy-contributor-action.type-enum");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/_modules/privacy-lifecycle/index.ts"],"names":[],"mappings":";;;AAAA,yFAA4F;AAAnF,0JAAA,qCAAqC,OAAA;AAC9C,mGAAqG;AAA5F,mKAAA,yCAAyC,OAAA;AAClD,mFAAsF;AAA7E,oJAAA,kCAAkC,OAAA;AAC3C,qGAAuG;AAA9F,qKAAA,0CAA0C,OAAA;AACnD,6FAA+F;AAAtF,6JAAA,sCAAsC,OAAA;AAC/C,kGAAgG;AAAvF,uJAAA,iCAAiC,OAAA;AAC1C,sGAAoG;AAA3F,2JAAA,mCAAmC,OAAA;AAC5C,wGAAsG;AAA7F,6JAAA,oCAAoC,OAAA;AAC7C,4FAA0F;AAAjF,iJAAA,8BAA8B,OAAA;AACvC,gFAA+E;AAAtE,sIAAA,yBAAyB,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/_modules/privacy-lifecycle/index.ts"],"names":[],"mappings":";;;AAAA,yFAA4F;AAAnF,0JAAA,qCAAqC,OAAA;AAC9C,mGAAqG;AAA5F,mKAAA,yCAAyC,OAAA;AAClD,mFAAsF;AAA7E,oJAAA,kCAAkC,OAAA;AAC3C,qGAAuG;AAA9F,qKAAA,0CAA0C,OAAA;AACnD,6FAA+F;AAAtF,6JAAA,sCAAsC,OAAA;AAC/C,iGAAmG;AAA1F,iKAAA,wCAAwC,OAAA;AACjD,kGAAgG;AAAvF,uJAAA,iCAAiC,OAAA;AAC1C,sGAAoG;AAA3F,2JAAA,mCAAmC,OAAA;AAC5C,wGAAsG;AAA7F,6JAAA,oCAAoC,OAAA;AAC7C,4FAA0F;AAAjF,iJAAA,8BAA8B,OAAA;AACvC,gFAA+E;AAAtE,sIAAA,yBAAyB,OAAA"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { DyNTS_PrivacyExportBundleArtifactReader_Interface, DyNTS_PrivacyExportBundleLifecycleReader_Interface, DyNTS_PrivacyExportBundleRequest_Interface, DyNTS_PrivacyExportBundleResult_Interface } from './_models/privacy-export-bundle.interface';
|
|
2
|
+
/**
|
|
3
|
+
* Assembles verified contributor artifacts for one completed privacy export.
|
|
4
|
+
* The returned plaintext is sensitive and must never be logged, cached or persisted unencrypted.
|
|
5
|
+
*/
|
|
6
|
+
export declare class DyNTS_PrivacyExportBundle_ControlService {
|
|
7
|
+
private static readonly absoluteMaxContributors;
|
|
8
|
+
private static readonly absoluteMaxBundleBytes;
|
|
9
|
+
private static readonly bundlePrefix;
|
|
10
|
+
private static readonly bundleSuffix;
|
|
11
|
+
private readonly lifecycleReader;
|
|
12
|
+
private readonly artifactReader;
|
|
13
|
+
private readonly maxContributors;
|
|
14
|
+
private readonly maxBundleBytes;
|
|
15
|
+
/** Creates a bounded assembler without owning authentication, persistence, delivery or retention policy. */
|
|
16
|
+
constructor(set: {
|
|
17
|
+
lifecycleReader: DyNTS_PrivacyExportBundleLifecycleReader_Interface;
|
|
18
|
+
artifactReader: DyNTS_PrivacyExportBundleArtifactReader_Interface;
|
|
19
|
+
maxContributors: number;
|
|
20
|
+
maxBundleBytes: number;
|
|
21
|
+
});
|
|
22
|
+
/** Builds a deterministic JSON envelope after exact lifecycle, authority and artifact-integrity validation. */
|
|
23
|
+
assemble(request: DyNTS_PrivacyExportBundleRequest_Interface): Promise<DyNTS_PrivacyExportBundleResult_Interface>;
|
|
24
|
+
private requireCompletedRequest;
|
|
25
|
+
private requireOutcomes;
|
|
26
|
+
private readArtifact;
|
|
27
|
+
private validateArtifact;
|
|
28
|
+
private validOutcome;
|
|
29
|
+
private validateRequest;
|
|
30
|
+
private boundedText;
|
|
31
|
+
private hasExactKeys;
|
|
32
|
+
private validDate;
|
|
33
|
+
private validJson;
|
|
34
|
+
private checksum;
|
|
35
|
+
private error;
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=privacy-export-bundle.control-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"privacy-export-bundle.control-service.d.ts","sourceRoot":"","sources":["../../../src/_modules/privacy-lifecycle/privacy-export-bundle.control-service.ts"],"names":[],"mappings":"AAYA,OAAO,EACL,iDAAiD,EACjD,kDAAkD,EAClD,0CAA0C,EAC1C,yCAAyC,EAC1C,MAAM,2CAA2C,CAAC;AAInD;;;GAGG;AACH,qBAAa,wCAAwC;IACnD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,uBAAuB,CAAe;IAC9D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAAsB;IACpE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAiF;IACrH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAgB;IACpD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAqD;IACrF,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAoD;IACnF,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IAExC,4GAA4G;gBAChG,GAAG,EAAE;QACf,eAAe,EAAE,kDAAkD,CAAC;QACpE,cAAc,EAAE,iDAAiD,CAAC;QAClE,eAAe,EAAE,MAAM,CAAC;QACxB,cAAc,EAAE,MAAM,CAAC;KACxB;IAoBD,+GAA+G;IAClG,QAAQ,CACnB,OAAO,EAAE,0CAA0C,GAClD,OAAO,CAAC,yCAAyC,CAAC;YA+DvC,uBAAuB;YA8BvB,eAAe;YAiCf,YAAY;IAmB1B,OAAO,CAAC,gBAAgB;IAwBxB,OAAO,CAAC,YAAY;IAkCpB,OAAO,CAAC,eAAe;IAYvB,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,YAAY;IAWpB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,SAAS;IAUjB,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,KAAK;CAiBd"}
|
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DyNTS_PrivacyExportBundle_ControlService = void 0;
|
|
4
|
+
const node_crypto_1 = require("node:crypto");
|
|
5
|
+
const fsm_dynamo_1 = require("@futdevpro/fsm-dynamo");
|
|
6
|
+
const privacy_contributor_action_type_enum_1 = require("./_enums/privacy-contributor-action.type-enum");
|
|
7
|
+
const privacy_contributor_outcome_type_enum_1 = require("./_enums/privacy-contributor-outcome.type-enum");
|
|
8
|
+
const privacy_request_state_type_enum_1 = require("./_enums/privacy-request-state.type-enum");
|
|
9
|
+
const privacy_request_type_enum_1 = require("./_enums/privacy-request.type-enum");
|
|
10
|
+
/**
|
|
11
|
+
* Assembles verified contributor artifacts for one completed privacy export.
|
|
12
|
+
* The returned plaintext is sensitive and must never be logged, cached or persisted unencrypted.
|
|
13
|
+
*/
|
|
14
|
+
class DyNTS_PrivacyExportBundle_ControlService {
|
|
15
|
+
static absoluteMaxContributors = 256;
|
|
16
|
+
static absoluteMaxBundleBytes = 33_554_432;
|
|
17
|
+
static bundlePrefix = '{"contractVersion":"dynts-privacy-export-bundle/1","contributors":[';
|
|
18
|
+
static bundleSuffix = ']}';
|
|
19
|
+
lifecycleReader;
|
|
20
|
+
artifactReader;
|
|
21
|
+
maxContributors;
|
|
22
|
+
maxBundleBytes;
|
|
23
|
+
/** Creates a bounded assembler without owning authentication, persistence, delivery or retention policy. */
|
|
24
|
+
constructor(set) {
|
|
25
|
+
if (!set.lifecycleReader
|
|
26
|
+
|| !set.artifactReader
|
|
27
|
+
|| !Number.isSafeInteger(set.maxContributors)
|
|
28
|
+
|| set.maxContributors < 1
|
|
29
|
+
|| set.maxContributors > DyNTS_PrivacyExportBundle_ControlService.absoluteMaxContributors
|
|
30
|
+
|| !Number.isSafeInteger(set.maxBundleBytes)
|
|
31
|
+
|| set.maxBundleBytes < 1
|
|
32
|
+
|| set.maxBundleBytes > DyNTS_PrivacyExportBundle_ControlService.absoluteMaxBundleBytes) {
|
|
33
|
+
throw this.error('SETTINGS_INVALID', 500);
|
|
34
|
+
}
|
|
35
|
+
this.lifecycleReader = set.lifecycleReader;
|
|
36
|
+
this.artifactReader = set.artifactReader;
|
|
37
|
+
this.maxContributors = set.maxContributors;
|
|
38
|
+
this.maxBundleBytes = set.maxBundleBytes;
|
|
39
|
+
}
|
|
40
|
+
/** Builds a deterministic JSON envelope after exact lifecycle, authority and artifact-integrity validation. */
|
|
41
|
+
async assemble(request) {
|
|
42
|
+
this.validateRequest(request);
|
|
43
|
+
const privacyRequest = await this.requireCompletedRequest(request);
|
|
44
|
+
const outcomes = await this.requireOutcomes(privacyRequest);
|
|
45
|
+
const exportOutcomes = outcomes
|
|
46
|
+
.filter((outcome) => (outcome.action === privacy_contributor_action_type_enum_1.DyNTS_PrivacyContributorAction_Type.export
|
|
47
|
+
&& outcome.outcome === privacy_contributor_outcome_type_enum_1.DyNTS_PrivacyContributorOutcome_Type.succeeded))
|
|
48
|
+
.sort((first, second) => first.contributorId < second.contributorId
|
|
49
|
+
? -1
|
|
50
|
+
: first.contributorId > second.contributorId
|
|
51
|
+
? 1
|
|
52
|
+
: 0);
|
|
53
|
+
const contributorJson = [];
|
|
54
|
+
const expiries = [];
|
|
55
|
+
let assembledBytes = Buffer.byteLength(DyNTS_PrivacyExportBundle_ControlService.bundlePrefix
|
|
56
|
+
+ DyNTS_PrivacyExportBundle_ControlService.bundleSuffix, 'utf8');
|
|
57
|
+
for (const outcome of exportOutcomes) {
|
|
58
|
+
const artifact = await this.readArtifact(request, outcome);
|
|
59
|
+
this.validateArtifact(outcome, artifact);
|
|
60
|
+
const contributor = `{"contributorId":${JSON.stringify(outcome.contributorId)},"payload":${artifact.plaintext}}`;
|
|
61
|
+
assembledBytes += Buffer.byteLength(contributor, 'utf8') + (contributorJson.length ? 1 : 0);
|
|
62
|
+
if (assembledBytes > this.maxBundleBytes) {
|
|
63
|
+
throw this.error('BUNDLE_TOO_LARGE', 413);
|
|
64
|
+
}
|
|
65
|
+
contributorJson.push(contributor);
|
|
66
|
+
expiries.push(new Date(artifact.artifact.expiresAt).getTime());
|
|
67
|
+
}
|
|
68
|
+
const plaintext = DyNTS_PrivacyExportBundle_ControlService.bundlePrefix
|
|
69
|
+
+ contributorJson.join(',')
|
|
70
|
+
+ DyNTS_PrivacyExportBundle_ControlService.bundleSuffix;
|
|
71
|
+
const plaintextBytes = Buffer.byteLength(plaintext, 'utf8');
|
|
72
|
+
if (plaintextBytes > this.maxBundleBytes) {
|
|
73
|
+
throw this.error('BUNDLE_TOO_LARGE', 413);
|
|
74
|
+
}
|
|
75
|
+
return {
|
|
76
|
+
contractVersion: 'dynts-privacy-export-bundle-result/1',
|
|
77
|
+
contentType: 'application/json',
|
|
78
|
+
plaintext: plaintext,
|
|
79
|
+
bundleChecksum: this.checksum(plaintext),
|
|
80
|
+
plaintextBytes: plaintextBytes,
|
|
81
|
+
contributorCount: exportOutcomes.length,
|
|
82
|
+
earliestArtifactExpiresAt: expiries.length ? new Date(Math.min(...expiries)).toISOString() : '',
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
async requireCompletedRequest(request) {
|
|
86
|
+
let privacyRequest;
|
|
87
|
+
try {
|
|
88
|
+
privacyRequest = await this.lifecycleReader.findRequestById(request.requestId);
|
|
89
|
+
}
|
|
90
|
+
catch {
|
|
91
|
+
throw this.error('LIFECYCLE_UNAVAILABLE', 503);
|
|
92
|
+
}
|
|
93
|
+
if (privacyRequest?.requestId !== request.requestId
|
|
94
|
+
|| privacyRequest.subjectId !== request.subjectId
|
|
95
|
+
|| privacyRequest.organizationId !== request.organizationId) {
|
|
96
|
+
throw this.error('REQUEST_NOT_FOUND', 404);
|
|
97
|
+
}
|
|
98
|
+
if (privacyRequest.type !== privacy_request_type_enum_1.DyNTS_PrivacyRequest_Type.export
|
|
99
|
+
|| privacyRequest.state !== privacy_request_state_type_enum_1.DyNTS_PrivacyRequestState_Type.completed
|
|
100
|
+
|| !this.validDate(privacyRequest.completedAt)) {
|
|
101
|
+
throw this.error('REQUEST_NOT_READY', 409);
|
|
102
|
+
}
|
|
103
|
+
return privacyRequest;
|
|
104
|
+
}
|
|
105
|
+
async requireOutcomes(request) {
|
|
106
|
+
let outcomes;
|
|
107
|
+
try {
|
|
108
|
+
outcomes = await this.lifecycleReader.listContributorOutcomes(request.requestId);
|
|
109
|
+
}
|
|
110
|
+
catch {
|
|
111
|
+
throw this.error('LIFECYCLE_UNAVAILABLE', 503);
|
|
112
|
+
}
|
|
113
|
+
if (!Array.isArray(outcomes)
|
|
114
|
+
|| outcomes.length > this.maxContributors
|
|
115
|
+
|| new Set(outcomes.map((outcome) => (outcome?.contributorId))).size !== outcomes.length
|
|
116
|
+
|| outcomes.some((outcome) => (!this.validOutcome(outcome)))) {
|
|
117
|
+
throw this.error('OUTCOMES_INVALID', 503);
|
|
118
|
+
}
|
|
119
|
+
if (outcomes.some((outcome) => (outcome.outcome === privacy_contributor_outcome_type_enum_1.DyNTS_PrivacyContributorOutcome_Type.failed))) {
|
|
120
|
+
throw this.error('REQUEST_NOT_READY', 409);
|
|
121
|
+
}
|
|
122
|
+
return outcomes;
|
|
123
|
+
}
|
|
124
|
+
async readArtifact(request, outcome) {
|
|
125
|
+
const lookup = {
|
|
126
|
+
contractVersion: 'dynts-privacy-export-artifact-lookup/1',
|
|
127
|
+
requestId: request.requestId,
|
|
128
|
+
contributorId: outcome.contributorId,
|
|
129
|
+
subjectId: request.subjectId,
|
|
130
|
+
organizationId: request.organizationId,
|
|
131
|
+
};
|
|
132
|
+
try {
|
|
133
|
+
return await this.artifactReader.read(lookup);
|
|
134
|
+
}
|
|
135
|
+
catch {
|
|
136
|
+
throw this.error('ARTIFACT_UNAVAILABLE', 503);
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
validateArtifact(outcome, result) {
|
|
140
|
+
const plaintextBytes = typeof result?.plaintext === 'string'
|
|
141
|
+
? Buffer.byteLength(result.plaintext, 'utf8')
|
|
142
|
+
: 0;
|
|
143
|
+
if (!result?.artifact
|
|
144
|
+
|| typeof result.artifact !== 'object'
|
|
145
|
+
|| result.artifact.contractVersion !== 'dynts-privacy-export-artifact-view/1'
|
|
146
|
+
|| result.artifact.contentType !== 'application/json'
|
|
147
|
+
|| typeof result.plaintext !== 'string'
|
|
148
|
+
|| result.artifact.artifactChecksum !== outcome.artifactChecksum
|
|
149
|
+
|| result.artifact.plaintextBytes !== plaintextBytes
|
|
150
|
+
|| this.checksum(result.plaintext) !== outcome.artifactChecksum
|
|
151
|
+
|| !this.validDate(result.artifact.expiresAt)
|
|
152
|
+
|| !this.validJson(result.plaintext)) {
|
|
153
|
+
throw this.error('ARTIFACT_INVALID', 503);
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
validOutcome(outcome) {
|
|
157
|
+
if (!outcome
|
|
158
|
+
|| !this.boundedText(outcome.contributorId, 128)
|
|
159
|
+
|| !Object.values(privacy_contributor_action_type_enum_1.DyNTS_PrivacyContributorAction_Type).includes(outcome.action)
|
|
160
|
+
|| !Object.values(privacy_contributor_outcome_type_enum_1.DyNTS_PrivacyContributorOutcome_Type).includes(outcome.outcome)
|
|
161
|
+
|| !Number.isSafeInteger(outcome.processedRecordCount)
|
|
162
|
+
|| outcome.processedRecordCount < 0
|
|
163
|
+
|| !this.validDate(outcome.completedAt)
|
|
164
|
+
|| (outcome.outcome === privacy_contributor_outcome_type_enum_1.DyNTS_PrivacyContributorOutcome_Type.failed && !outcome.errorCode)
|
|
165
|
+
|| (outcome.outcome !== privacy_contributor_outcome_type_enum_1.DyNTS_PrivacyContributorOutcome_Type.failed && !!outcome.errorCode)
|
|
166
|
+
|| (outcome.outcome === privacy_contributor_outcome_type_enum_1.DyNTS_PrivacyContributorOutcome_Type.retainedWithBasis
|
|
167
|
+
&& !this.boundedText(outcome.retentionBasisCode, 128))
|
|
168
|
+
|| (outcome.outcome !== privacy_contributor_outcome_type_enum_1.DyNTS_PrivacyContributorOutcome_Type.retainedWithBasis
|
|
169
|
+
&& !!outcome.retentionBasisCode)
|
|
170
|
+
|| (outcome.action === privacy_contributor_action_type_enum_1.DyNTS_PrivacyContributorAction_Type.retainWithBasis
|
|
171
|
+
&& outcome.outcome !== privacy_contributor_outcome_type_enum_1.DyNTS_PrivacyContributorOutcome_Type.retainedWithBasis
|
|
172
|
+
&& outcome.outcome !== privacy_contributor_outcome_type_enum_1.DyNTS_PrivacyContributorOutcome_Type.failed)
|
|
173
|
+
|| (outcome.action !== privacy_contributor_action_type_enum_1.DyNTS_PrivacyContributorAction_Type.retainWithBasis
|
|
174
|
+
&& outcome.outcome === privacy_contributor_outcome_type_enum_1.DyNTS_PrivacyContributorOutcome_Type.retainedWithBasis)) {
|
|
175
|
+
return false;
|
|
176
|
+
}
|
|
177
|
+
if (outcome.action === privacy_contributor_action_type_enum_1.DyNTS_PrivacyContributorAction_Type.export
|
|
178
|
+
&& outcome.outcome === privacy_contributor_outcome_type_enum_1.DyNTS_PrivacyContributorOutcome_Type.succeeded) {
|
|
179
|
+
return /^[a-f0-9]{64}$/u.test(outcome.artifactChecksum);
|
|
180
|
+
}
|
|
181
|
+
return outcome.artifactChecksum === '';
|
|
182
|
+
}
|
|
183
|
+
validateRequest(request) {
|
|
184
|
+
if (!this.hasExactKeys(request, ['contractVersion', 'requestId', 'subjectId', 'organizationId'])
|
|
185
|
+
|| request.contractVersion !== 'dynts-privacy-export-bundle-request/1'
|
|
186
|
+
|| !this.boundedText(request.requestId, 128)
|
|
187
|
+
|| !this.boundedText(request.subjectId, 128)
|
|
188
|
+
|| !this.boundedText(request.organizationId, 128)) {
|
|
189
|
+
throw this.error('REQUEST_INVALID', 400);
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
boundedText(value, maximum) {
|
|
193
|
+
return typeof value === 'string'
|
|
194
|
+
&& !!value
|
|
195
|
+
&& value.trim() === value
|
|
196
|
+
&& value.length <= maximum
|
|
197
|
+
&& !/[\u0000-\u001f\u007f]/u.test(value);
|
|
198
|
+
}
|
|
199
|
+
hasExactKeys(value, expected) {
|
|
200
|
+
if (typeof value !== 'object' || value === null || Array.isArray(value)) {
|
|
201
|
+
return false;
|
|
202
|
+
}
|
|
203
|
+
const actual = Object.keys(value).sort();
|
|
204
|
+
return actual.length === expected.length
|
|
205
|
+
&& expected.slice().sort().every((key, index) => key === actual[index]);
|
|
206
|
+
}
|
|
207
|
+
validDate(value) {
|
|
208
|
+
return typeof value === 'string' && !!value && Number.isFinite(new Date(value).getTime());
|
|
209
|
+
}
|
|
210
|
+
validJson(value) {
|
|
211
|
+
try {
|
|
212
|
+
JSON.parse(value);
|
|
213
|
+
return true;
|
|
214
|
+
}
|
|
215
|
+
catch {
|
|
216
|
+
return false;
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
checksum(value) {
|
|
220
|
+
return (0, node_crypto_1.createHash)('sha256').update(value, 'utf8').digest('hex');
|
|
221
|
+
}
|
|
222
|
+
error(code, status) {
|
|
223
|
+
return new fsm_dynamo_1.DyFM_Error({
|
|
224
|
+
status: status,
|
|
225
|
+
errorCode: `DYNTS|PRIVACY_EXPORT_BUNDLE|${code}`,
|
|
226
|
+
message: 'The privacy export bundle operation failed.',
|
|
227
|
+
userMessage: status === 400
|
|
228
|
+
? 'The privacy export bundle request is invalid.'
|
|
229
|
+
: status === 404
|
|
230
|
+
? 'The privacy export request was not found.'
|
|
231
|
+
: status === 409
|
|
232
|
+
? 'The privacy export request is not ready for download.'
|
|
233
|
+
: status === 413
|
|
234
|
+
? 'The privacy export bundle is too large to deliver.'
|
|
235
|
+
: 'The privacy export bundle is temporarily unavailable.',
|
|
236
|
+
issuerService: this.constructor.name,
|
|
237
|
+
});
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
exports.DyNTS_PrivacyExportBundle_ControlService = DyNTS_PrivacyExportBundle_ControlService;
|
|
241
|
+
//# sourceMappingURL=privacy-export-bundle.control-service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"privacy-export-bundle.control-service.js","sourceRoot":"","sources":["../../../src/_modules/privacy-lifecycle/privacy-export-bundle.control-service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@futdevpro/nts-dynamo",
|
|
3
|
-
"version": "01.15.
|
|
3
|
+
"version": "01.15.186",
|
|
4
4
|
"description": "Dynamic NodeTS (NodeJS-Typescript), MongoDB Backend System Framework by Future Development Program Ltd.",
|
|
5
5
|
"DyBu_settings": {
|
|
6
6
|
"packageType": "server-package",
|