mindoodb 0.0.93 → 0.0.95
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/appendonlystores/network/ClientNetworkContentAddressedStore.d.ts +17 -1
- package/dist/appendonlystores/network/ClientNetworkContentAddressedStore.d.ts.map +1 -1
- package/dist/appendonlystores/network/ClientNetworkContentAddressedStore.js +63 -4
- package/dist/appendonlystores/network/ClientNetworkContentAddressedStore.js.map +1 -1
- package/dist/appendonlystores/network/HttpTransport.d.ts +10 -1
- package/dist/appendonlystores/network/HttpTransport.d.ts.map +1 -1
- package/dist/appendonlystores/network/HttpTransport.js +45 -3
- package/dist/appendonlystores/network/HttpTransport.js.map +1 -1
- package/dist/appendonlystores/network/ServerNetworkContentAddressedStore.d.ts +22 -0
- package/dist/appendonlystores/network/ServerNetworkContentAddressedStore.d.ts.map +1 -1
- package/dist/appendonlystores/network/ServerNetworkContentAddressedStore.js +33 -0
- package/dist/appendonlystores/network/ServerNetworkContentAddressedStore.js.map +1 -1
- package/dist/browser/index.mjs +39 -0
- package/dist/core/BaseMindooDB.d.ts +9 -0
- package/dist/core/BaseMindooDB.d.ts.map +1 -1
- package/dist/core/BaseMindooDB.js +65 -2
- package/dist/core/BaseMindooDB.js.map +1 -1
- package/dist/core/BaseMindooTenant.d.ts +75 -1
- package/dist/core/BaseMindooTenant.d.ts.map +1 -1
- package/dist/core/BaseMindooTenant.js +229 -7
- package/dist/core/BaseMindooTenant.js.map +1 -1
- package/dist/core/BaseMindooTenantDirectory.d.ts +165 -2
- package/dist/core/BaseMindooTenantDirectory.d.ts.map +1 -1
- package/dist/core/BaseMindooTenantDirectory.js +648 -112
- package/dist/core/BaseMindooTenantDirectory.js.map +1 -1
- package/dist/core/BaseMindooTenantFactory.d.ts +30 -0
- package/dist/core/BaseMindooTenantFactory.d.ts.map +1 -1
- package/dist/core/BaseMindooTenantFactory.js +95 -0
- package/dist/core/BaseMindooTenantFactory.js.map +1 -1
- package/dist/core/accesscontrol/DirectoryStateNode.d.ts +45 -0
- package/dist/core/accesscontrol/DirectoryStateNode.d.ts.map +1 -1
- package/dist/core/accesscontrol/DirectoryStateNode.js +58 -0
- package/dist/core/accesscontrol/DirectoryStateNode.js.map +1 -1
- package/dist/core/accesscontrol/adminKeys.d.ts +130 -0
- package/dist/core/accesscontrol/adminKeys.d.ts.map +1 -0
- package/dist/core/accesscontrol/adminKeys.js +164 -0
- package/dist/core/accesscontrol/adminKeys.js.map +1 -0
- package/dist/core/accesscontrol/directoryAdminResolver.d.ts +54 -0
- package/dist/core/accesscontrol/directoryAdminResolver.d.ts.map +1 -0
- package/dist/core/accesscontrol/directoryAdminResolver.js +217 -0
- package/dist/core/accesscontrol/directoryAdminResolver.js.map +1 -0
- package/dist/core/accesscontrol/directoryProjection.d.ts.map +1 -1
- package/dist/core/accesscontrol/directoryProjection.js +34 -0
- package/dist/core/accesscontrol/directoryProjection.js.map +1 -1
- package/dist/core/accesscontrol/grantKeys.d.ts +16 -0
- package/dist/core/accesscontrol/grantKeys.d.ts.map +1 -1
- package/dist/core/accesscontrol/grantKeys.js +37 -0
- package/dist/core/accesscontrol/grantKeys.js.map +1 -1
- package/dist/core/accesscontrol/types.d.ts +33 -2
- package/dist/core/accesscontrol/types.d.ts.map +1 -1
- package/dist/core/accesscontrol/types.js +32 -0
- package/dist/core/accesscontrol/types.js.map +1 -1
- package/dist/core/appendonlystores/network/AuthenticationService.d.ts.map +1 -1
- package/dist/core/appendonlystores/network/AuthenticationService.js +8 -0
- package/dist/core/appendonlystores/network/AuthenticationService.js.map +1 -1
- package/dist/core/appendonlystores/network/NetworkTransport.d.ts +16 -1
- package/dist/core/appendonlystores/network/NetworkTransport.d.ts.map +1 -1
- package/dist/core/appendonlystores/network/types.d.ts +13 -0
- package/dist/core/appendonlystores/network/types.d.ts.map +1 -1
- package/dist/core/appendonlystores/network/types.js.map +1 -1
- package/dist/core/builtinDbInvariants.d.ts +18 -2
- package/dist/core/builtinDbInvariants.d.ts.map +1 -1
- package/dist/core/builtinDbInvariants.js +41 -5
- package/dist/core/builtinDbInvariants.js.map +1 -1
- package/dist/core/index.d.ts +5 -2
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +28 -5
- package/dist/core/index.js.map +1 -1
- package/dist/core/live/LiveChannel.d.ts +41 -0
- package/dist/core/live/LiveChannel.d.ts.map +1 -0
- package/dist/core/live/LiveChannel.js +151 -0
- package/dist/core/live/LiveChannel.js.map +1 -0
- package/dist/core/types.d.ts +182 -0
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js.map +1 -1
- package/dist/core/uri/MindooURI.d.ts +1 -1
- package/dist/core/uri/MindooURI.d.ts.map +1 -1
- package/dist/core/uri/MindooURI.js +2 -0
- package/dist/core/uri/MindooURI.js.map +1 -1
- package/dist/core/uri/adminUri.d.ts +52 -0
- package/dist/core/uri/adminUri.d.ts.map +1 -0
- package/dist/core/uri/adminUri.js +100 -0
- package/dist/core/uri/adminUri.js.map +1 -0
- package/dist/core/uri/joinRequestUri.d.ts.map +1 -1
- package/dist/core/uri/joinRequestUri.js +14 -1
- package/dist/core/uri/joinRequestUri.js.map +1 -1
- package/dist/core/userid/index.d.ts +9 -0
- package/dist/core/userid/index.d.ts.map +1 -1
- package/dist/core/userkeys/UserKeyDocument.d.ts +7 -1
- package/dist/core/userkeys/UserKeyDocument.d.ts.map +1 -1
- package/dist/core/userkeys/UserKeyDocument.js +14 -3
- package/dist/core/userkeys/UserKeyDocument.js.map +1 -1
- package/dist/core/userkeys/UserKeyManager.d.ts +95 -4
- package/dist/core/userkeys/UserKeyManager.d.ts.map +1 -1
- package/dist/core/userkeys/UserKeyManager.js +606 -59
- package/dist/core/userkeys/UserKeyManager.js.map +1 -1
- package/dist/core/userkeys/deviceCertificate.d.ts +46 -0
- package/dist/core/userkeys/deviceCertificate.d.ts.map +1 -0
- package/dist/core/userkeys/deviceCertificate.js +86 -0
- package/dist/core/userkeys/deviceCertificate.js.map +1 -0
- package/dist/core/userkeys/generationSignature.d.ts +32 -0
- package/dist/core/userkeys/generationSignature.d.ts.map +1 -0
- package/dist/core/userkeys/generationSignature.js +136 -0
- package/dist/core/userkeys/generationSignature.js.map +1 -0
- package/dist/core/userkeys/generationValidity.d.ts +75 -0
- package/dist/core/userkeys/generationValidity.d.ts.map +1 -0
- package/dist/core/userkeys/generationValidity.js +175 -0
- package/dist/core/userkeys/generationValidity.js.map +1 -0
- package/dist/core/userkeys/index.d.ts +5 -2
- package/dist/core/userkeys/index.d.ts.map +1 -1
- package/dist/core/userkeys/index.js +21 -1
- package/dist/core/userkeys/index.js.map +1 -1
- package/dist/core/userkeys/resolveUserKeyDocument.d.ts +16 -0
- package/dist/core/userkeys/resolveUserKeyDocument.d.ts.map +1 -1
- package/dist/core/userkeys/resolveUserKeyDocument.js +42 -1
- package/dist/core/userkeys/resolveUserKeyDocument.js.map +1 -1
- package/dist/core/userkeys/types.d.ts +26 -0
- package/dist/core/userkeys/types.d.ts.map +1 -1
- package/dist/core/userkeys/types.js +3 -1
- package/dist/core/userkeys/types.js.map +1 -1
- package/dist/core/userkeys/validateUserKeyDocument.d.ts.map +1 -1
- package/dist/core/userkeys/validateUserKeyDocument.js +7 -0
- package/dist/core/userkeys/validateUserKeyDocument.js.map +1 -1
- package/dist/node/server/MindooDBServer.d.ts.map +1 -1
- package/dist/node/server/MindooDBServer.js +11 -0
- package/dist/node/server/MindooDBServer.js.map +1 -1
- package/dist/server/SyncEventBus.d.ts +22 -0
- package/dist/server/SyncEventBus.d.ts.map +1 -1
- package/dist/server/SyncEventBus.js +21 -0
- package/dist/server/SyncEventBus.js.map +1 -1
- package/dist/server/TenantManager.d.ts +9 -0
- package/dist/server/TenantManager.d.ts.map +1 -1
- package/dist/server/TenantManager.js +96 -0
- package/dist/server/TenantManager.js.map +1 -1
- package/dist/server/http/MindooDBServerCore.d.ts +39 -1
- package/dist/server/http/MindooDBServerCore.d.ts.map +1 -1
- package/dist/server/http/MindooDBServerCore.js +121 -2
- package/dist/server/http/MindooDBServerCore.js.map +1 -1
- package/dist/server/http/types.d.ts +10 -1
- package/dist/server/http/types.d.ts.map +1 -1
- package/dist/server/http/types.js.map +1 -1
- package/dist/server/index.d.ts +2 -2
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +2 -1
- package/dist/server/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -167,6 +167,7 @@ class MindooDBServer {
|
|
|
167
167
|
capabilityMatcher: this.capabilityMatcher,
|
|
168
168
|
deviceDiscovery: this.deviceDiscovery,
|
|
169
169
|
syncEvents: this.syncEventBus,
|
|
170
|
+
liveChannel: true,
|
|
170
171
|
configRepository: new config_1.FileServerConfigRepository(this.configPath),
|
|
171
172
|
getServerConfig: () => this.serverConfig,
|
|
172
173
|
reloadConfig: (newConfig) => this.reloadConfig(newConfig),
|
|
@@ -753,12 +754,22 @@ class MindooDBServer {
|
|
|
753
754
|
res.write(frame);
|
|
754
755
|
}
|
|
755
756
|
});
|
|
757
|
+
// Live channels of the databases this stream asked for (`?live=`).
|
|
758
|
+
const unsubscribeLive = subscription.liveDbIds?.length
|
|
759
|
+
? this.syncEventBus.subscribeLive((event) => {
|
|
760
|
+
const frame = (0, MindooDBServerCore_1.formatSyncLiveEvent)(subscription, event);
|
|
761
|
+
if (frame) {
|
|
762
|
+
res.write(frame);
|
|
763
|
+
}
|
|
764
|
+
})
|
|
765
|
+
: () => undefined;
|
|
756
766
|
const heartbeat = setInterval(() => {
|
|
757
767
|
res.write((0, MindooDBServerCore_1.formatSyncHeartbeat)(Date.now()));
|
|
758
768
|
}, MindooDBServerCore_1.SYNC_EVENT_HEARTBEAT_MS);
|
|
759
769
|
const cleanup = () => {
|
|
760
770
|
clearInterval(heartbeat);
|
|
761
771
|
unsubscribe();
|
|
772
|
+
unsubscribeLive();
|
|
762
773
|
};
|
|
763
774
|
req.on("close", cleanup);
|
|
764
775
|
res.on("close", cleanup);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MindooDBServer.js","sourceRoot":"","sources":["../../../src/node/server/MindooDBServer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MindooDBServer.js","sourceRoot":"","sources":["../../../src/node/server/MindooDBServer.ts"],"names":[],"mappings":"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"}
|
|
@@ -29,11 +29,33 @@ export interface SyncChangeEvent {
|
|
|
29
29
|
originPeer?: string;
|
|
30
30
|
}
|
|
31
31
|
export type SyncChangeListener = (event: SyncChangeEvent) => void;
|
|
32
|
+
/**
|
|
33
|
+
* One message on a database's live channel (capability `supportsLiveChannel`):
|
|
34
|
+
* ephemeral, never stored, relayed to the subscribers of that database only.
|
|
35
|
+
* The server cannot read `payload`; clients encrypt it with a key of the
|
|
36
|
+
* database's readers.
|
|
37
|
+
*/
|
|
38
|
+
export interface SyncLiveEvent {
|
|
39
|
+
tenantId: string;
|
|
40
|
+
dbId: string;
|
|
41
|
+
/** Base64 of the client-encrypted message. */
|
|
42
|
+
payload: string;
|
|
43
|
+
/** Username from the publisher's token (the server's word, not the message's). */
|
|
44
|
+
sender: string;
|
|
45
|
+
/** The publisher's stream id, so its own stream does not echo the message. */
|
|
46
|
+
clientId?: string;
|
|
47
|
+
}
|
|
48
|
+
export type SyncLiveListener = (event: SyncLiveEvent) => void;
|
|
32
49
|
export declare class SyncEventBus {
|
|
33
50
|
private listeners;
|
|
34
51
|
/** Register a listener; returns an unsubscribe function. */
|
|
35
52
|
subscribe(listener: SyncChangeListener): () => void;
|
|
36
53
|
publish(event: SyncChangeEvent): void;
|
|
37
54
|
get listenerCount(): number;
|
|
55
|
+
private liveListeners;
|
|
56
|
+
/** Register a live-channel listener; returns an unsubscribe function. */
|
|
57
|
+
subscribeLive(listener: SyncLiveListener): () => void;
|
|
58
|
+
publishLive(event: SyncLiveEvent): void;
|
|
59
|
+
get liveListenerCount(): number;
|
|
38
60
|
}
|
|
39
61
|
//# sourceMappingURL=SyncEventBus.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SyncEventBus.d.ts","sourceRoot":"","sources":["../../src/server/SyncEventBus.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,+DAA+D;AAC/D,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,6BAA6B;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,wEAAwE;IACxE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,MAAM,kBAAkB,GAAG,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;AAElE,qBAAa,YAAY;IACvB,OAAO,CAAC,SAAS,CAAiC;IAElD,4DAA4D;IAC5D,SAAS,CAAC,QAAQ,EAAE,kBAAkB,GAAG,MAAM,IAAI;IAOnD,OAAO,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI;IAWrC,IAAI,aAAa,IAAI,MAAM,CAE1B;CACF"}
|
|
1
|
+
{"version":3,"file":"SyncEventBus.d.ts","sourceRoot":"","sources":["../../src/server/SyncEventBus.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,+DAA+D;AAC/D,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,6BAA6B;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,wEAAwE;IACxE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,MAAM,kBAAkB,GAAG,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;AAElE;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,8CAA8C;IAC9C,OAAO,EAAE,MAAM,CAAC;IAChB,kFAAkF;IAClF,MAAM,EAAE,MAAM,CAAC;IACf,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,gBAAgB,GAAG,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;AAE9D,qBAAa,YAAY;IACvB,OAAO,CAAC,SAAS,CAAiC;IAElD,4DAA4D;IAC5D,SAAS,CAAC,QAAQ,EAAE,kBAAkB,GAAG,MAAM,IAAI;IAOnD,OAAO,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI;IAWrC,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED,OAAO,CAAC,aAAa,CAA+B;IAEpD,yEAAyE;IACzE,aAAa,CAAC,QAAQ,EAAE,gBAAgB,GAAG,MAAM,IAAI;IAOrD,WAAW,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IAUvC,IAAI,iBAAiB,IAAI,MAAM,CAE9B;CACF"}
|
|
@@ -14,6 +14,7 @@ exports.SyncEventBus = void 0;
|
|
|
14
14
|
class SyncEventBus {
|
|
15
15
|
constructor() {
|
|
16
16
|
this.listeners = new Set();
|
|
17
|
+
this.liveListeners = new Set();
|
|
17
18
|
}
|
|
18
19
|
/** Register a listener; returns an unsubscribe function. */
|
|
19
20
|
subscribe(listener) {
|
|
@@ -36,6 +37,26 @@ class SyncEventBus {
|
|
|
36
37
|
get listenerCount() {
|
|
37
38
|
return this.listeners.size;
|
|
38
39
|
}
|
|
40
|
+
/** Register a live-channel listener; returns an unsubscribe function. */
|
|
41
|
+
subscribeLive(listener) {
|
|
42
|
+
this.liveListeners.add(listener);
|
|
43
|
+
return () => {
|
|
44
|
+
this.liveListeners.delete(listener);
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
publishLive(event) {
|
|
48
|
+
for (const listener of this.liveListeners) {
|
|
49
|
+
try {
|
|
50
|
+
listener(event);
|
|
51
|
+
}
|
|
52
|
+
catch {
|
|
53
|
+
// as in publish(): one broken subscriber affects nobody else
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
get liveListenerCount() {
|
|
58
|
+
return this.liveListeners.size;
|
|
59
|
+
}
|
|
39
60
|
}
|
|
40
61
|
exports.SyncEventBus = SyncEventBus;
|
|
41
62
|
//# sourceMappingURL=SyncEventBus.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SyncEventBus.js","sourceRoot":"","sources":["../../src/server/SyncEventBus.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;
|
|
1
|
+
{"version":3,"file":"SyncEventBus.js","sourceRoot":"","sources":["../../src/server/SyncEventBus.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AA4CH,MAAa,YAAY;IAAzB;QACU,cAAS,GAAG,IAAI,GAAG,EAAsB,CAAC;QAyB1C,kBAAa,GAAG,IAAI,GAAG,EAAoB,CAAC;IAuBtD,CAAC;IA9CC,4DAA4D;IAC5D,SAAS,CAAC,QAA4B;QACpC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC7B,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAClC,CAAC,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,KAAsB;QAC5B,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACtC,IAAI,CAAC;gBACH,QAAQ,CAAC,KAAK,CAAC,CAAC;YAClB,CAAC;YAAC,MAAM,CAAC;gBACP,qEAAqE;gBACrE,6CAA6C;YAC/C,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;IAC7B,CAAC;IAID,yEAAyE;IACzE,aAAa,CAAC,QAA0B;QACtC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACjC,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACtC,CAAC,CAAC;IACJ,CAAC;IAED,WAAW,CAAC,KAAoB;QAC9B,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YAC1C,IAAI,CAAC;gBACH,QAAQ,CAAC,KAAK,CAAC,CAAC;YAClB,CAAC;YAAC,MAAM,CAAC;gBACP,6DAA6D;YAC/D,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,iBAAiB;QACnB,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;IACjC,CAAC;CACF;AAjDD,oCAiDC"}
|
|
@@ -58,6 +58,8 @@ export declare class SimpleMindooDirectory implements Pick<MindooTenantDirectory
|
|
|
58
58
|
getUserBySigningPublicKey(publicKey: string): Promise<DirectoryUserLookup | null>;
|
|
59
59
|
private toLookup;
|
|
60
60
|
isUserRevoked(username: string): Promise<boolean>;
|
|
61
|
+
/** A config-based directory knows no delegated admins (§6.13): only the root. */
|
|
62
|
+
isAdminSigningKeyAt(signingKey: string, _T: number): Promise<boolean>;
|
|
61
63
|
validatePublicSigningKey(publicKey: string, _opts?: {
|
|
62
64
|
forceRefresh?: boolean;
|
|
63
65
|
}): Promise<boolean>;
|
|
@@ -253,6 +255,13 @@ export declare class TenantManager {
|
|
|
253
255
|
* all — see `core/accesscontrol/tier1Evaluator.ts`.
|
|
254
256
|
*/
|
|
255
257
|
private buildTier1Evaluator;
|
|
258
|
+
/**
|
|
259
|
+
* Whether `signingKey` is an administrator of `tenant` at `T` (§6.13): the
|
|
260
|
+
* root admin key from the tenant config, or a delegated admin key valid at
|
|
261
|
+
* `T` according to the directory. Tenant deletion (`SystemAdminAuth`) stays
|
|
262
|
+
* root-only and does not use this.
|
|
263
|
+
*/
|
|
264
|
+
private isTenantAdminKeyAt;
|
|
256
265
|
/**
|
|
257
266
|
* Builtin `userdirectory` write invariant: admin may create/delete, only the
|
|
258
267
|
* owning person may change. `username_hash` is read from the decrypted
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TenantManager.d.ts","sourceRoot":"","sources":["../../src/server/TenantManager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,wDAAwD,CAAC;AAC/F,OAAO,EAAE,kCAAkC,EAAE,MAAM,gEAAgE,CAAC;AACpH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"TenantManager.d.ts","sourceRoot":"","sources":["../../src/server/TenantManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -120,6 +120,10 @@ class SimpleMindooDirectory {
|
|
|
120
120
|
async isUserRevoked(username) {
|
|
121
121
|
return this.revokedUsers.has(username.toLowerCase());
|
|
122
122
|
}
|
|
123
|
+
/** A config-based directory knows no delegated admins (§6.13): only the root. */
|
|
124
|
+
async isAdminSigningKeyAt(signingKey, _T) {
|
|
125
|
+
return (0, DirectoryStateNode_1.signingKeysEqual)(signingKey, this.adminSigningPublicKey);
|
|
126
|
+
}
|
|
123
127
|
async validatePublicSigningKey(publicKey, _opts) {
|
|
124
128
|
if (publicKey === this.adminSigningPublicKey) {
|
|
125
129
|
return true;
|
|
@@ -139,6 +143,10 @@ exports.SimpleMindooDirectory = SimpleMindooDirectory;
|
|
|
139
143
|
// ---------------------------------------------------------------------------
|
|
140
144
|
// CompositeMindooDirectory — wraps tenant directory + trusted servers
|
|
141
145
|
// ---------------------------------------------------------------------------
|
|
146
|
+
/** Principal name of a delegated admin key on the server (no cleartext name exists there). */
|
|
147
|
+
function delegatedAdminPrincipal(signingPublicKey) {
|
|
148
|
+
return `$adminkey:${signingPublicKey.replace(/\s+/g, "")}`;
|
|
149
|
+
}
|
|
142
150
|
/**
|
|
143
151
|
* Wraps a per-tenant directory (real or config-based) and also checks
|
|
144
152
|
* the global trusted-servers list. Holds a reference to the array so
|
|
@@ -149,6 +157,8 @@ class CompositeMindooDirectory {
|
|
|
149
157
|
this.inner = inner;
|
|
150
158
|
this.trustedServers = trustedServers;
|
|
151
159
|
this.adminBootstrapIdentity = adminBootstrapIdentity;
|
|
160
|
+
/** Signing key per delegated-admin principal name, filled as keys authenticate. */
|
|
161
|
+
this.delegatedAdminKeysByPrincipal = new Map();
|
|
152
162
|
this.adminUsernameNormalized =
|
|
153
163
|
adminBootstrapIdentity?.username.toLowerCase() ?? null;
|
|
154
164
|
}
|
|
@@ -164,6 +174,9 @@ class CompositeMindooDirectory {
|
|
|
164
174
|
encryptionPublicKey: this.adminBootstrapIdentity.encryptionPublicKey,
|
|
165
175
|
};
|
|
166
176
|
}
|
|
177
|
+
const delegated = await this.delegatedAdminForPrincipal(username);
|
|
178
|
+
if (delegated)
|
|
179
|
+
return delegated;
|
|
167
180
|
const result = await this.inner.getUserPublicKeys(username);
|
|
168
181
|
if (result)
|
|
169
182
|
return result;
|
|
@@ -188,6 +201,10 @@ class CompositeMindooDirectory {
|
|
|
188
201
|
return false;
|
|
189
202
|
}
|
|
190
203
|
}
|
|
204
|
+
// A delegated admin principal (§6.13) is "revoked" exactly when its window ended.
|
|
205
|
+
if (this.delegatedAdminKeysByPrincipal.has(username)) {
|
|
206
|
+
return (await this.delegatedAdminForPrincipal(username)) === null;
|
|
207
|
+
}
|
|
191
208
|
return this.inner.isUserRevoked(username);
|
|
192
209
|
}
|
|
193
210
|
async validatePublicSigningKey(publicKey, opts) {
|
|
@@ -219,6 +236,23 @@ class CompositeMindooDirectory {
|
|
|
219
236
|
if (innerLookup)
|
|
220
237
|
return innerLookup;
|
|
221
238
|
}
|
|
239
|
+
// A delegated admin key (docs/accesscontrol.md §6.13) holds no grant. While
|
|
240
|
+
// its window covers now it authenticates as a principal of its own, named
|
|
241
|
+
// after the key, so it can read what admins may read (personal databases,
|
|
242
|
+
// a full tenant backup). Its token stops validating when the window ends.
|
|
243
|
+
if (typeof this.inner.getDelegatedAdminKeyAt === "function") {
|
|
244
|
+
const admin = await this.inner.getDelegatedAdminKeyAt(publicKey, Date.now());
|
|
245
|
+
if (admin) {
|
|
246
|
+
const principal = delegatedAdminPrincipal(admin.signingPublicKey);
|
|
247
|
+
this.delegatedAdminKeysByPrincipal.set(principal, admin.signingPublicKey);
|
|
248
|
+
return {
|
|
249
|
+
username: principal,
|
|
250
|
+
signingPublicKey: admin.signingPublicKey,
|
|
251
|
+
encryptionPublicKey: admin.encryptionPublicKey,
|
|
252
|
+
details: null,
|
|
253
|
+
};
|
|
254
|
+
}
|
|
255
|
+
}
|
|
222
256
|
// Bootstrap/config fallback: the admin and trusted-server identities can be
|
|
223
257
|
// resolved by their signing key even without a grantaccess document on this
|
|
224
258
|
// server, mirroring getUserPublicKeys. Without this, key-based identity
|
|
@@ -257,6 +291,10 @@ class CompositeMindooDirectory {
|
|
|
257
291
|
// in this active set) does not reject a freshly-issued admin/config token.
|
|
258
292
|
// We reuse getUserPublicKeys, which already applies exactly those fallbacks.
|
|
259
293
|
const active = new Set(base.active);
|
|
294
|
+
const delegated = await this.delegatedAdminForPrincipal(username);
|
|
295
|
+
if (delegated) {
|
|
296
|
+
return { active: [delegated.signingPublicKey], wipeRequested: [] };
|
|
297
|
+
}
|
|
260
298
|
const fallback = await this.getUserPublicKeys(username);
|
|
261
299
|
if (fallback)
|
|
262
300
|
active.add(fallback.signingPublicKey);
|
|
@@ -323,6 +361,34 @@ class CompositeMindooDirectory {
|
|
|
323
361
|
? (input) => inner.evaluateReadScopeForSigningKey(input)
|
|
324
362
|
: undefined;
|
|
325
363
|
}
|
|
364
|
+
/**
|
|
365
|
+
* The keys of a delegated-admin principal (see {@link getUserBySigningPublicKey})
|
|
366
|
+
* while the key is an admin now, or null.
|
|
367
|
+
*/
|
|
368
|
+
async delegatedAdminForPrincipal(principal) {
|
|
369
|
+
const signingKey = this.delegatedAdminKeysByPrincipal.get(principal);
|
|
370
|
+
if (!signingKey || typeof this.inner.getDelegatedAdminKeyAt !== "function")
|
|
371
|
+
return null;
|
|
372
|
+
const admin = await this.inner.getDelegatedAdminKeyAt(signingKey, Date.now());
|
|
373
|
+
return admin
|
|
374
|
+
? { signingPublicKey: admin.signingPublicKey, encryptionPublicKey: admin.encryptionPublicKey }
|
|
375
|
+
: null;
|
|
376
|
+
}
|
|
377
|
+
/**
|
|
378
|
+
* Admin check at time `T` (docs/accesscontrol.md §6.13): the root, or a
|
|
379
|
+
* delegated admin key valid at `T`. Forwarded to the inner directory; the
|
|
380
|
+
* bootstrap admin identity always counts.
|
|
381
|
+
*/
|
|
382
|
+
async isAdminSigningKeyAt(signingKey, T) {
|
|
383
|
+
if (this.adminBootstrapIdentity &&
|
|
384
|
+
(0, DirectoryStateNode_1.signingKeysEqual)(this.adminBootstrapIdentity.signingPublicKey, signingKey)) {
|
|
385
|
+
return true;
|
|
386
|
+
}
|
|
387
|
+
if (typeof this.inner.isAdminSigningKeyAt === "function") {
|
|
388
|
+
return this.inner.isAdminSigningKeyAt(signingKey, T);
|
|
389
|
+
}
|
|
390
|
+
return false;
|
|
391
|
+
}
|
|
326
392
|
/**
|
|
327
393
|
* Forwarded so server-side `userdirectory` writes can resolve the signer's
|
|
328
394
|
* grant. Without this, `evaluateUserdirectoryInvariant` sees a missing
|
|
@@ -871,6 +937,14 @@ class TenantManager {
|
|
|
871
937
|
const builtinWriteContext = dbId === types_1.USER_DIRECTORY_DB_ID
|
|
872
938
|
? this.buildUserdirectoryWriteContext(tenant, localStore)
|
|
873
939
|
: undefined;
|
|
940
|
+
// Directory writes only by administrators at the server's clock, and
|
|
941
|
+
// admin keys / trusted witnesses only by the root (docs/accesscontrol.md §6.13).
|
|
942
|
+
const directoryAdminCheck = dbId === "directory"
|
|
943
|
+
? {
|
|
944
|
+
rootAdminKey: tenant.context.config.adminSigningPublicKey,
|
|
945
|
+
isAdminAt: (signingKey, T) => this.isTenantAdminKeyAt(tenant, signingKey, T),
|
|
946
|
+
}
|
|
947
|
+
: undefined;
|
|
874
948
|
const serverStore = new ServerNetworkContentAddressedStore_1.ServerNetworkContentAddressedStore(localStore, directory, tenant.authService, this.cryptoAdapter, undefined, {
|
|
875
949
|
timestampProvider,
|
|
876
950
|
witnessDbid: dbId,
|
|
@@ -884,6 +958,7 @@ class TenantManager {
|
|
|
884
958
|
docCreatorResolver,
|
|
885
959
|
purgeRequestValidator,
|
|
886
960
|
builtinWriteContext,
|
|
961
|
+
directoryAdminCheck,
|
|
887
962
|
...this.peerAccessControl,
|
|
888
963
|
});
|
|
889
964
|
tenant.serverStores.set(cacheKey, serverStore);
|
|
@@ -905,6 +980,26 @@ class TenantManager {
|
|
|
905
980
|
buildTier1Evaluator(directory, localStore) {
|
|
906
981
|
return (0, tier1Evaluator_1.buildTier1Evaluator)(directory, localStore);
|
|
907
982
|
}
|
|
983
|
+
/**
|
|
984
|
+
* Whether `signingKey` is an administrator of `tenant` at `T` (§6.13): the
|
|
985
|
+
* root admin key from the tenant config, or a delegated admin key valid at
|
|
986
|
+
* `T` according to the directory. Tenant deletion (`SystemAdminAuth`) stays
|
|
987
|
+
* root-only and does not use this.
|
|
988
|
+
*/
|
|
989
|
+
async isTenantAdminKeyAt(tenant, signingKey, T) {
|
|
990
|
+
if ((0, DirectoryStateNode_1.signingKeysEqual)(signingKey, tenant.context.config.adminSigningPublicKey))
|
|
991
|
+
return true;
|
|
992
|
+
const directory = tenant.directory;
|
|
993
|
+
if (typeof directory.isAdminSigningKeyAt !== "function")
|
|
994
|
+
return false;
|
|
995
|
+
try {
|
|
996
|
+
return await directory.isAdminSigningKeyAt(signingKey, T);
|
|
997
|
+
}
|
|
998
|
+
catch (error) {
|
|
999
|
+
console.warn(`[TenantManager] admin check failed, refusing: ${error}`);
|
|
1000
|
+
return false;
|
|
1001
|
+
}
|
|
1002
|
+
}
|
|
908
1003
|
/**
|
|
909
1004
|
* Builtin `userdirectory` write invariant: admin may create/delete, only the
|
|
910
1005
|
* owning person may change. `username_hash` is read from the decrypted
|
|
@@ -918,6 +1013,7 @@ class TenantManager {
|
|
|
918
1013
|
const mindooTenant = tenant.mindooTenant;
|
|
919
1014
|
return {
|
|
920
1015
|
adminPublicKey,
|
|
1016
|
+
isAdminAt: (signingKey, T) => this.isTenantAdminKeyAt(tenant, signingKey, T),
|
|
921
1017
|
resolveCreatorSigningKey: async (entry) => {
|
|
922
1018
|
const createEntry = await this.findCreateEntry(localStore, entry);
|
|
923
1019
|
return createEntry?.createdByPublicKey ?? null;
|