@ibgib/node-gib 0.0.14 → 0.0.17
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/data/identity_index/email/hashes/32/13/49/e64f32730f01a61ada211f29eaf0a210fc2386b668ad04d7e8a9b16766.json +4 -0
- package/dist/email/email-helpers.d.mts.map +1 -1
- package/dist/email/email-helpers.mjs.map +1 -1
- package/dist/email/index.d.mts +3 -0
- package/dist/email/index.d.mts.map +1 -1
- package/dist/email/index.mjs +3 -0
- package/dist/email/index.mjs.map +1 -1
- package/dist/email/verify/email-verify-constants.d.mts +3 -0
- package/dist/email/verify/email-verify-constants.d.mts.map +1 -0
- package/dist/email/verify/email-verify-constants.mjs +3 -0
- package/dist/email/verify/email-verify-constants.mjs.map +1 -0
- package/dist/email/verify/email-verify-helpers.d.mts +107 -0
- package/dist/email/verify/email-verify-helpers.d.mts.map +1 -0
- package/dist/email/verify/email-verify-helpers.mjs +357 -0
- package/dist/email/verify/email-verify-helpers.mjs.map +1 -0
- package/dist/email/verify/email-verify-types.d.mts +41 -0
- package/dist/email/verify/email-verify-types.d.mts.map +1 -0
- package/dist/email/verify/email-verify-types.mjs +2 -0
- package/dist/email/verify/email-verify-types.mjs.map +1 -0
- package/dist/identity/sso/custodian-auth-helpers.d.mts +45 -0
- package/dist/identity/sso/custodian-auth-helpers.d.mts.map +1 -0
- package/dist/identity/sso/custodian-auth-helpers.mjs +108 -0
- package/dist/identity/sso/custodian-auth-helpers.mjs.map +1 -0
- package/dist/identity/sso/sso-config-helper.d.mts +7 -0
- package/dist/identity/sso/sso-config-helper.d.mts.map +1 -0
- package/dist/identity/sso/sso-config-helper.mjs +42 -0
- package/dist/identity/sso/sso-config-helper.mjs.map +1 -0
- package/dist/identity/sso/sso-custodian-service.d.mts +139 -0
- package/dist/identity/sso/sso-custodian-service.d.mts.map +1 -0
- package/dist/identity/sso/sso-custodian-service.mjs +471 -0
- package/dist/identity/sso/sso-custodian-service.mjs.map +1 -0
- package/dist/identity/sso/sso-types.d.mts +71 -0
- package/dist/identity/sso/sso-types.d.mts.map +1 -0
- package/dist/identity/sso/sso-types.mjs +7 -0
- package/dist/identity/sso/sso-types.mjs.map +1 -0
- package/dist/index.d.mts +5 -1
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +5 -1
- package/dist/index.mjs.map +1 -1
- package/dist/serve-gib/handlers/api/email/email-outbound.handler.d.mts.map +1 -1
- package/dist/serve-gib/handlers/api/email/email-outbound.handler.mjs +9 -2
- package/dist/serve-gib/handlers/api/email/email-outbound.handler.mjs.map +1 -1
- package/dist/serve-gib/handlers/api/email/email-verification-code.handler.d.mts +29 -0
- package/dist/serve-gib/handlers/api/email/email-verification-code.handler.d.mts.map +1 -0
- package/dist/serve-gib/handlers/api/email/email-verification-code.handler.mjs +149 -0
- package/dist/serve-gib/handlers/api/email/email-verification-code.handler.mjs.map +1 -0
- package/dist/serve-gib/handlers/api/email/email-verify-code-onetime.handler.d.mts +24 -0
- package/dist/serve-gib/handlers/api/email/email-verify-code-onetime.handler.d.mts.map +1 -0
- package/dist/serve-gib/handlers/api/email/email-verify-code-onetime.handler.mjs +212 -0
- package/dist/serve-gib/handlers/api/email/email-verify-code-onetime.handler.mjs.map +1 -0
- package/dist/serve-gib/handlers/api/identity/keystone-custodian-genesis.handler.d.mts +37 -0
- package/dist/serve-gib/handlers/api/identity/keystone-custodian-genesis.handler.d.mts.map +1 -0
- package/dist/serve-gib/handlers/api/identity/keystone-custodian-genesis.handler.mjs +192 -0
- package/dist/serve-gib/handlers/api/identity/keystone-custodian-genesis.handler.mjs.map +1 -0
- package/dist/serve-gib/handlers/api/identity/keystone-custodian-register-delegate.handler.d.mts +33 -0
- package/dist/serve-gib/handlers/api/identity/keystone-custodian-register-delegate.handler.d.mts.map +1 -0
- package/dist/serve-gib/handlers/api/identity/keystone-custodian-register-delegate.handler.mjs +173 -0
- package/dist/serve-gib/handlers/api/identity/keystone-custodian-register-delegate.handler.mjs.map +1 -0
- package/dist/serve-gib/handlers/api/keystone/keystone-check-email.handler.d.mts.map +1 -1
- package/dist/serve-gib/handlers/api/keystone/keystone-check-email.handler.mjs +2 -3
- package/dist/serve-gib/handlers/api/keystone/keystone-check-email.handler.mjs.map +1 -1
- package/dist/serve-gib/handlers/api/keystone/keystone-evolve.handler.d.mts.map +1 -1
- package/dist/serve-gib/handlers/api/keystone/keystone-evolve.handler.mjs +38 -3
- package/dist/serve-gib/handlers/api/keystone/keystone-evolve.handler.mjs.map +1 -1
- package/dist/serve-gib/handlers/api/keystone/keystone-genesis.handler.d.mts.map +1 -1
- package/dist/serve-gib/handlers/api/keystone/keystone-genesis.handler.mjs +54 -24
- package/dist/serve-gib/handlers/api/keystone/keystone-genesis.handler.mjs.map +1 -1
- package/dist/serve-gib/handlers/api/keystone/keystone-lookup.handler.d.mts.map +1 -1
- package/dist/serve-gib/handlers/api/keystone/keystone-lookup.handler.mjs +13 -13
- package/dist/serve-gib/handlers/api/keystone/keystone-lookup.handler.mjs.map +1 -1
- package/dist/serve-gib/handlers/api/keystone/keystone-post.handler.mjs +1 -1
- package/dist/serve-gib/handlers/api/keystone/keystone-post.handler.mjs.map +1 -1
- package/dist/serve-gib/handlers/api/keystone/sso-config.handler.mjs +3 -3
- package/dist/serve-gib/handlers/api/keystone/sso-config.handler.mjs.map +1 -1
- package/dist/serve-gib/handlers/api/keystone/sso-link.handler.d.mts.map +1 -1
- package/dist/serve-gib/handlers/api/keystone/sso-link.handler.mjs +28 -15
- package/dist/serve-gib/handlers/api/keystone/sso-link.handler.mjs.map +1 -1
- package/dist/serve-gib/handlers/api/keystone/sso-login.handler.d.mts +29 -15
- package/dist/serve-gib/handlers/api/keystone/sso-login.handler.d.mts.map +1 -1
- package/dist/serve-gib/handlers/api/keystone/sso-login.handler.mjs +105 -108
- package/dist/serve-gib/handlers/api/keystone/sso-login.handler.mjs.map +1 -1
- package/dist/serve-gib/identity-index/identity-index-constants.d.mts +3 -2
- package/dist/serve-gib/identity-index/identity-index-constants.d.mts.map +1 -1
- package/dist/serve-gib/identity-index/identity-index-constants.mjs +4 -2
- package/dist/serve-gib/identity-index/identity-index-constants.mjs.map +1 -1
- package/dist/serve-gib/identity-index/identity-index-helpers.d.mts.map +1 -1
- package/dist/serve-gib/identity-index/identity-index-helpers.mjs +28 -11
- package/dist/serve-gib/identity-index/identity-index-helpers.mjs.map +1 -1
- package/dist/serve-gib/identity-index/identity-index-service.d.mts +20 -3
- package/dist/serve-gib/identity-index/identity-index-service.d.mts.map +1 -1
- package/dist/serve-gib/identity-index/identity-index-service.mjs +134 -18
- package/dist/serve-gib/identity-index/identity-index-service.mjs.map +1 -1
- package/dist/serve-gib/identity-index/identity-index-types.d.mts +4 -2
- package/dist/serve-gib/identity-index/identity-index-types.d.mts.map +1 -1
- package/dist/serve-gib/index.d.mts +4 -0
- package/dist/serve-gib/index.d.mts.map +1 -1
- package/dist/serve-gib/index.mjs +12 -0
- package/dist/serve-gib/index.mjs.map +1 -1
- package/dist/serve-gib/path-constants.d.mts +17 -0
- package/dist/serve-gib/path-constants.d.mts.map +1 -1
- package/dist/serve-gib/path-constants.mjs +17 -0
- package/dist/serve-gib/path-constants.mjs.map +1 -1
- package/e2e/identity-custodian-lifecycle.e2e.md +93 -0
- package/e2e/identity-sso-lifecycle.e2e.md +132 -0
- package/package.json +5 -5
- package/src/email/email-helpers.mts +0 -1
- package/src/email/index.mts +3 -0
- package/src/email/verify/email-verify-constants.mts +3 -0
- package/src/email/verify/email-verify-helpers.mts +466 -0
- package/src/email/verify/email-verify-types.mts +47 -0
- package/src/identity/sso/custodian-auth-helpers.mts +146 -0
- package/src/identity/sso/custodian-auth-helpers.respec.mts +97 -0
- package/src/identity/sso/sso-config-helper.mts +52 -0
- package/src/identity/sso/sso-custodian-service.mts +566 -0
- package/src/identity/sso/sso-custodian-service.respec.mts +297 -0
- package/src/identity/sso/sso-types.mts +80 -0
- package/src/index.mts +14 -0
- package/src/serve-gib/handlers/api/email/email-outbound.handler.mts +8 -2
- package/src/serve-gib/handlers/api/email/email-verification-code.handler.mts +163 -0
- package/src/serve-gib/handlers/api/email/email-verify-code-onetime.handler.mts +231 -0
- package/src/serve-gib/handlers/api/email/email-verify.respec.mts +183 -0
- package/src/serve-gib/handlers/api/identity/keystone-custodian-genesis.handler.mts +233 -0
- package/src/serve-gib/handlers/api/identity/keystone-custodian-genesis.respec.mts +93 -0
- package/src/serve-gib/handlers/api/identity/keystone-custodian-register-delegate.handler.mts +210 -0
- package/src/serve-gib/handlers/api/identity/keystone-custodian-register-delegate.respec.mts +112 -0
- package/src/serve-gib/handlers/api/keystone/keystone-check-email.handler.mts +2 -4
- package/src/serve-gib/handlers/api/keystone/keystone-evolve.handler.mts +42 -3
- package/src/serve-gib/handlers/api/keystone/keystone-genesis.handler.mts +46 -23
- package/src/serve-gib/handlers/api/keystone/keystone-lookup.handler.mts +11 -15
- package/src/serve-gib/handlers/api/keystone/keystone-post.handler.mts +1 -1
- package/src/serve-gib/handlers/api/keystone/sso-config.handler.mts +3 -3
- package/src/serve-gib/handlers/api/keystone/sso-link.handler.mts +29 -17
- package/src/serve-gib/handlers/api/keystone/sso-login.handler.mts +132 -125
- package/src/serve-gib/identity-index/identity-index-constants.mts +5 -2
- package/src/serve-gib/identity-index/identity-index-helpers.mts +26 -12
- package/src/serve-gib/identity-index/identity-index-service.mts +133 -16
- package/src/serve-gib/identity-index/identity-index-service.respec.mts +1 -1
- package/src/serve-gib/identity-index/identity-index-types.mts +4 -2
- package/src/serve-gib/index.mts +12 -0
- package/src/serve-gib/path-constants.mts +20 -0
- package/tsconfig.json +2 -2
- package/tsconfig.test.json +1 -1
- package/dist/assumptions.respec.d.mts +0 -2
- package/dist/assumptions.respec.d.mts.map +0 -1
- package/dist/assumptions.respec.mjs +0 -41
- package/dist/assumptions.respec.mjs.map +0 -1
- package/dist/email/email-service.respec.d.mts +0 -2
- package/dist/email/email-service.respec.d.mts.map +0 -1
- package/dist/email/email-service.respec.mjs +0 -115
- package/dist/email/email-service.respec.mjs.map +0 -1
- package/dist/serve-gib/bootstrap-helper.respec.d.mts +0 -2
- package/dist/serve-gib/bootstrap-helper.respec.d.mts.map +0 -1
- package/dist/serve-gib/bootstrap-helper.respec.mjs +0 -85
- package/dist/serve-gib/bootstrap-helper.respec.mjs.map +0 -1
- package/dist/serve-gib/handlers/api/health.respec.d.mts +0 -2
- package/dist/serve-gib/handlers/api/health.respec.d.mts.map +0 -1
- package/dist/serve-gib/handlers/api/health.respec.mjs +0 -47
- package/dist/serve-gib/handlers/api/health.respec.mjs.map +0 -1
- package/dist/serve-gib/handlers/api/keystone/keystone-get.respec.d.mts +0 -2
- package/dist/serve-gib/handlers/api/keystone/keystone-get.respec.d.mts.map +0 -1
- package/dist/serve-gib/handlers/api/keystone/keystone-get.respec.mjs +0 -98
- package/dist/serve-gib/handlers/api/keystone/keystone-get.respec.mjs.map +0 -1
- package/dist/serve-gib/handlers/api/keystone/keystone-post.respec.d.mts +0 -2
- package/dist/serve-gib/handlers/api/keystone/keystone-post.respec.d.mts.map +0 -1
- package/dist/serve-gib/handlers/api/keystone/keystone-post.respec.mjs +0 -131
- package/dist/serve-gib/handlers/api/keystone/keystone-post.respec.mjs.map +0 -1
- package/dist/serve-gib/identity-index/identity-index-service.respec.d.mts +0 -2
- package/dist/serve-gib/identity-index/identity-index-service.respec.d.mts.map +0 -1
- package/dist/serve-gib/identity-index/identity-index-service.respec.mjs +0 -109
- package/dist/serve-gib/identity-index/identity-index-service.respec.mjs.map +0 -1
- package/dist/serve-gib/keystone-schema-helpers.respec.d.mts +0 -2
- package/dist/serve-gib/keystone-schema-helpers.respec.d.mts.map +0 -1
- package/dist/serve-gib/keystone-schema-helpers.respec.mjs +0 -68
- package/dist/serve-gib/keystone-schema-helpers.respec.mjs.map +0 -1
- package/dist/serve-gib/path-helper.respec.d.mts +0 -2
- package/dist/serve-gib/path-helper.respec.d.mts.map +0 -1
- package/dist/serve-gib/path-helper.respec.mjs +0 -83
- package/dist/serve-gib/path-helper.respec.mjs.map +0 -1
- package/dist/serve-gib/serve-gib.respec.d.mts +0 -2
- package/dist/serve-gib/serve-gib.respec.d.mts.map +0 -1
- package/dist/serve-gib/serve-gib.respec.mjs +0 -85
- package/dist/serve-gib/serve-gib.respec.mjs.map +0 -1
- package/dist/spec-helper.node.respec.d.mts +0 -13
- package/dist/spec-helper.node.respec.d.mts.map +0 -1
- package/dist/spec-helper.node.respec.mjs +0 -50
- package/dist/spec-helper.node.respec.mjs.map +0 -1
- package/dist/witness/space/node-filesystem-space/node-indexed-filesystem-space/respec/testSpace_createAndInit.node-indexed-filesystem-space-v1.respec.d.mts +0 -2
- package/dist/witness/space/node-filesystem-space/node-indexed-filesystem-space/respec/testSpace_createAndInit.node-indexed-filesystem-space-v1.respec.d.mts.map +0 -1
- package/dist/witness/space/node-filesystem-space/node-indexed-filesystem-space/respec/testSpace_createAndInit.node-indexed-filesystem-space-v1.respec.mjs +0 -52
- package/dist/witness/space/node-filesystem-space/node-indexed-filesystem-space/respec/testSpace_createAndInit.node-indexed-filesystem-space-v1.respec.mjs.map +0 -1
- package/dist/witness/space/node-filesystem-space/node-indexed-filesystem-space/respec/testSpace_persistTransformResult.node-indexed-filesystem-space-v1.respec.d.mts +0 -2
- package/dist/witness/space/node-filesystem-space/node-indexed-filesystem-space/respec/testSpace_persistTransformResult.node-indexed-filesystem-space-v1.respec.d.mts.map +0 -1
- package/dist/witness/space/node-filesystem-space/node-indexed-filesystem-space/respec/testSpace_persistTransformResult.node-indexed-filesystem-space-v1.respec.mjs +0 -53
- package/dist/witness/space/node-filesystem-space/node-indexed-filesystem-space/respec/testSpace_persistTransformResult.node-indexed-filesystem-space-v1.respec.mjs.map +0 -1
- package/dist/witness/space/node-filesystem-space/node-indexed-filesystem-space/respec/testSpace_putGetDelete.node-indexed-filesystem-space-v1.respec.d.mts +0 -2
- package/dist/witness/space/node-filesystem-space/node-indexed-filesystem-space/respec/testSpace_putGetDelete.node-indexed-filesystem-space-v1.respec.d.mts.map +0 -1
- package/dist/witness/space/node-filesystem-space/node-indexed-filesystem-space/respec/testSpace_putGetDelete.node-indexed-filesystem-space-v1.respec.mjs +0 -59
- package/dist/witness/space/node-filesystem-space/node-indexed-filesystem-space/respec/testSpace_putGetDelete.node-indexed-filesystem-space-v1.respec.mjs.map +0 -1
- package/dist/witness/space/node-filesystem-space/node-indexed-filesystem-space/respec/testSpace_registerNewIbGib_GetLatest.node-indexed-filesystem-space-v1.respec.d.mts +0 -2
- package/dist/witness/space/node-filesystem-space/node-indexed-filesystem-space/respec/testSpace_registerNewIbGib_GetLatest.node-indexed-filesystem-space-v1.respec.d.mts.map +0 -1
- package/dist/witness/space/node-filesystem-space/node-indexed-filesystem-space/respec/testSpace_registerNewIbGib_GetLatest.node-indexed-filesystem-space-v1.respec.mjs +0 -55
- package/dist/witness/space/node-filesystem-space/node-indexed-filesystem-space/respec/testSpace_registerNewIbGib_GetLatest.node-indexed-filesystem-space-v1.respec.mjs.map +0 -1
- package/dist/witness/space/node-filesystem-space/respec/testSpace_createAndInit.node-filesystem-space-v1.respec.d.mts +0 -2
- package/dist/witness/space/node-filesystem-space/respec/testSpace_createAndInit.node-filesystem-space-v1.respec.d.mts.map +0 -1
- package/dist/witness/space/node-filesystem-space/respec/testSpace_createAndInit.node-filesystem-space-v1.respec.mjs +0 -67
- package/dist/witness/space/node-filesystem-space/respec/testSpace_createAndInit.node-filesystem-space-v1.respec.mjs.map +0 -1
- package/dist/witness/space/node-filesystem-space/respec/testSpace_persistTransformResult.node-filesystem-space-v1.respec.d.mts +0 -2
- package/dist/witness/space/node-filesystem-space/respec/testSpace_persistTransformResult.node-filesystem-space-v1.respec.d.mts.map +0 -1
- package/dist/witness/space/node-filesystem-space/respec/testSpace_persistTransformResult.node-filesystem-space-v1.respec.mjs +0 -67
- package/dist/witness/space/node-filesystem-space/respec/testSpace_persistTransformResult.node-filesystem-space-v1.respec.mjs.map +0 -1
- package/dist/witness/space/node-filesystem-space/respec/testSpace_putGetDelete.node-filesystem-space-v1.respec.d.mts +0 -2
- package/dist/witness/space/node-filesystem-space/respec/testSpace_putGetDelete.node-filesystem-space-v1.respec.d.mts.map +0 -1
- package/dist/witness/space/node-filesystem-space/respec/testSpace_putGetDelete.node-filesystem-space-v1.respec.mjs +0 -68
- package/dist/witness/space/node-filesystem-space/respec/testSpace_putGetDelete.node-filesystem-space-v1.respec.mjs.map +0 -1
- package/dist/witness/space/node-filesystem-space/respec/testSpace_registerNewIbGib_GetLatest.node-filesystem-space-v1.respec.d.mts +0 -2
- package/dist/witness/space/node-filesystem-space/respec/testSpace_registerNewIbGib_GetLatest.node-filesystem-space-v1.respec.d.mts.map +0 -1
- package/dist/witness/space/node-filesystem-space/respec/testSpace_registerNewIbGib_GetLatest.node-filesystem-space-v1.respec.mjs +0 -69
- package/dist/witness/space/node-filesystem-space/respec/testSpace_registerNewIbGib_GetLatest.node-filesystem-space-v1.respec.mjs.map +0 -1
|
@@ -30,18 +30,17 @@
|
|
|
30
30
|
* creates the metaspace itself using `bootstrapDomainMetaspace`.
|
|
31
31
|
*/
|
|
32
32
|
import { existsSync } from 'node:fs';
|
|
33
|
-
import
|
|
34
|
-
import { extractErrorMsg } from '@ibgib/helper-gib/dist/helpers/utils-helper.mjs';
|
|
33
|
+
import { extractErrorMsg, getUUID } from '@ibgib/helper-gib/dist/helpers/utils-helper.mjs';
|
|
35
34
|
import { getIbGibAddr } from '@ibgib/ts-gib/dist/helper.mjs';
|
|
36
35
|
import { validateIbGibIntrinsically } from '@ibgib/ts-gib/dist/V1/validate-helper.mjs';
|
|
37
36
|
import { getGibInfo } from '@ibgib/ts-gib/dist/V1/transforms/transform-helper.mjs';
|
|
38
37
|
import { KeystoneService_V1 } from '@ibgib/core-gib/dist/keystone/keystone-service-v1.mjs';
|
|
39
|
-
import { IdentityIndexService } from '../../../identity-index/identity-index-service.mjs';
|
|
40
38
|
import { GLOBAL_LOG_A_LOT } from '../../../constants.mjs';
|
|
41
39
|
import { ServeGibHandlerBase } from '../../handler-base.mjs';
|
|
42
40
|
import { API_PATH_REGEXES } from '../../../path-constants.mjs';
|
|
43
41
|
import { getDomainRootPath } from '../../../bootstrap-helper.mjs';
|
|
44
42
|
import { bootstrapDomainMetaspace } from '../../../bootstrap-helper.mjs';
|
|
43
|
+
import { savePendingStagingKeystone, dispatchVerificationCode } from '../../../../email/verify/email-verify-helpers.mjs';
|
|
45
44
|
const logalot = GLOBAL_LOG_A_LOT || true;
|
|
46
45
|
/**
|
|
47
46
|
* POST /api/keystone/genesis
|
|
@@ -54,9 +53,13 @@ export class KeystoneGenesisHandler extends ServeGibHandlerBase {
|
|
|
54
53
|
regex = API_PATH_REGEXES.KEYSTONE_GENESIS;
|
|
55
54
|
async handleRouteImpl(reqCtx) {
|
|
56
55
|
const lc = `${this.lc}[${this.handleRouteImpl.name}]`;
|
|
56
|
+
const timestampUUID = `${lc}${[(await getUUID()).substring(0, 8)]}`;
|
|
57
57
|
try {
|
|
58
58
|
if (logalot) {
|
|
59
|
-
console.log(`${lc} starting... (I:
|
|
59
|
+
console.log(`${lc} starting... (I: 866db89dfcb947c7353a1a8849bb2826)`);
|
|
60
|
+
}
|
|
61
|
+
if (logalot) {
|
|
62
|
+
console.time(timestampUUID);
|
|
60
63
|
}
|
|
61
64
|
// ----------------------------------------------------------------
|
|
62
65
|
// 1. Parse body — expect { keystoneIbGib }
|
|
@@ -68,6 +71,9 @@ export class KeystoneGenesisHandler extends ServeGibHandlerBase {
|
|
|
68
71
|
catch {
|
|
69
72
|
return this.error(400, 'Request body must be valid JSON (E: dd8618857568f8fc5e9c62b8ed135826)');
|
|
70
73
|
}
|
|
74
|
+
if (logalot) {
|
|
75
|
+
console.timeLog(timestampUUID, 'parse complete');
|
|
76
|
+
}
|
|
71
77
|
const { keystoneIbGib } = parsed;
|
|
72
78
|
if (!keystoneIbGib) {
|
|
73
79
|
return this.error(400, 'Body must contain keystoneIbGib (E: 9c8c5d979d7842cd716ba64f69349c26)');
|
|
@@ -79,6 +85,9 @@ export class KeystoneGenesisHandler extends ServeGibHandlerBase {
|
|
|
79
85
|
if (intrinsicErrors) {
|
|
80
86
|
return this.error(422, 'Intrinsic keystone validation failed (E: 76d388e198f23a87dd6596f59c36e826)', { errors: intrinsicErrors });
|
|
81
87
|
}
|
|
88
|
+
if (logalot) {
|
|
89
|
+
console.timeLog(timestampUUID, 'intrinsic validation complete');
|
|
90
|
+
}
|
|
82
91
|
// ----------------------------------------------------------------
|
|
83
92
|
// 3. Structural keystone + genesis-frame checks
|
|
84
93
|
// ----------------------------------------------------------------
|
|
@@ -89,10 +98,17 @@ export class KeystoneGenesisHandler extends ServeGibHandlerBase {
|
|
|
89
98
|
if (keystoneErrors && keystoneErrors.length > 0) {
|
|
90
99
|
return this.error(422, `Keystone genesis validation failed. Errors: ${keystoneErrors} (E: 8384285be7a8ab0d41cfd1df2e2aa826)`, { errors: keystoneErrors });
|
|
91
100
|
}
|
|
101
|
+
if (logalot) {
|
|
102
|
+
console.timeLog(timestampUUID, 'keystone validation complete');
|
|
103
|
+
}
|
|
92
104
|
// ----------------------------------------------------------------
|
|
93
105
|
// 4. Domain uniqueness & Email Index Registration
|
|
94
106
|
// ----------------------------------------------------------------
|
|
95
107
|
const addr = getIbGibAddr({ ibGib: keystoneIbGib });
|
|
108
|
+
const primaryTjpAddr = addr;
|
|
109
|
+
if (logalot) {
|
|
110
|
+
console.log(`${lc} primaryTjpAddr: ${primaryTjpAddr} (I: c09d68025348261ac8ccec8ebe59d626)`);
|
|
111
|
+
}
|
|
96
112
|
const { tjpGib, punctiliarHash } = getGibInfo({ ibGibAddr: addr });
|
|
97
113
|
const domainGib = tjpGib || punctiliarHash;
|
|
98
114
|
if (!domainGib) {
|
|
@@ -104,33 +120,43 @@ export class KeystoneGenesisHandler extends ServeGibHandlerBase {
|
|
|
104
120
|
}
|
|
105
121
|
// Extract email addresses attached to primary identity keystone (if present)
|
|
106
122
|
const emails = keystoneIbGib.data?.emails ?? keystoneIbGib.data?.frameDetails?.emails ?? [];
|
|
107
|
-
const indexService = new IdentityIndexService({ baseDir: path.join(reqCtx.dataDir, 'index') });
|
|
108
|
-
const registeredHashes = [];
|
|
109
123
|
if (emails.length > 0) {
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
}
|
|
127
|
-
throw err;
|
|
124
|
+
// Staging Quarantine: Save keystone & email records to email/pending/
|
|
125
|
+
console.log(`${lc} Staging genesis keystone with unverified email(s): ${emails.join(', ')} (I: c123456789abcdef0123456789abcdef)`);
|
|
126
|
+
const saveRes = await savePendingStagingKeystone({
|
|
127
|
+
keystone: keystoneIbGib,
|
|
128
|
+
emails,
|
|
129
|
+
primaryTjpAddr: addr,
|
|
130
|
+
dataDir: reqCtx.dataDir
|
|
131
|
+
});
|
|
132
|
+
// Immediately dispatch 6-digit verification code email for primary email
|
|
133
|
+
const primaryEmail = emails[0];
|
|
134
|
+
await dispatchVerificationCode({
|
|
135
|
+
email: primaryEmail,
|
|
136
|
+
primaryTjpAddr: addr,
|
|
137
|
+
pendingDir: saveRes.pendingDir,
|
|
138
|
+
});
|
|
139
|
+
if (logalot) {
|
|
140
|
+
console.timeLog(timestampUUID, `quarantine staging complete & code dispatched to ${primaryEmail}`);
|
|
128
141
|
}
|
|
142
|
+
// EARLY RETURN 202 Accepted — do NOT bootstrap domain space or write to email/hashes/ until email is verified!
|
|
143
|
+
return this.ok({
|
|
144
|
+
success: true,
|
|
145
|
+
pending: true,
|
|
146
|
+
addr,
|
|
147
|
+
message: 'Genesis keystone quarantined in pending staging area. 6-digit verification code sent to your email.'
|
|
148
|
+
}, 202);
|
|
149
|
+
}
|
|
150
|
+
if (logalot) {
|
|
151
|
+
console.timeLog(timestampUUID, 'emails complete');
|
|
129
152
|
}
|
|
130
153
|
// ----------------------------------------------------------------
|
|
131
154
|
// 5. Bootstrap the new domain metaspace (creates folders)
|
|
132
155
|
// ----------------------------------------------------------------
|
|
133
156
|
const metaspace = await bootstrapDomainMetaspace(addr, reqCtx.dataDir);
|
|
157
|
+
if (logalot) {
|
|
158
|
+
console.timeLog(timestampUUID, 'metaspace bootstrap complete');
|
|
159
|
+
}
|
|
134
160
|
// ----------------------------------------------------------------
|
|
135
161
|
// 6. Persist the genesis keystone into the new domain space
|
|
136
162
|
// ----------------------------------------------------------------
|
|
@@ -141,6 +167,9 @@ export class KeystoneGenesisHandler extends ServeGibHandlerBase {
|
|
|
141
167
|
await metaspace.put({ ibGibs: [keystoneIbGib], space });
|
|
142
168
|
await metaspace.registerNewIbGib({ ibGib: keystoneIbGib, space });
|
|
143
169
|
console.log(`${lc} domain created and keystone persisted: ${addr}`);
|
|
170
|
+
if (logalot) {
|
|
171
|
+
console.timeLog(timestampUUID, 'domain created complete');
|
|
172
|
+
}
|
|
144
173
|
// if (logalot) { console.log(`${lc} keystoneIbGib: ${pretty(keystoneIbGib)} (I: d598c6ff7a48997d585b84c19c464826)`); }
|
|
145
174
|
return this.ok({ success: true, addr }, 201);
|
|
146
175
|
}
|
|
@@ -152,6 +181,7 @@ export class KeystoneGenesisHandler extends ServeGibHandlerBase {
|
|
|
152
181
|
finally {
|
|
153
182
|
if (logalot) {
|
|
154
183
|
console.log(`${lc} complete.`);
|
|
184
|
+
console.timeEnd(timestampUUID);
|
|
155
185
|
}
|
|
156
186
|
}
|
|
157
187
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keystone-genesis.handler.mjs","sourceRoot":"","sources":["../../../../../src/serve-gib/handlers/api/keystone/keystone-genesis.handler.mts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"keystone-genesis.handler.mjs","sourceRoot":"","sources":["../../../../../src/serve-gib/handlers/api/keystone/keystone-genesis.handler.mts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keystone-lookup.handler.d.mts","sourceRoot":"","sources":["../../../../../src/serve-gib/handlers/api/keystone/keystone-lookup.handler.mts"],"names":[],"mappings":"AAAA;;;;;;GAMG;
|
|
1
|
+
{"version":3,"file":"keystone-lookup.handler.d.mts","sourceRoot":"","sources":["../../../../../src/serve-gib/handlers/api/keystone/keystone-lookup.handler.mts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAMxF;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC;IAChF,UAAmB,EAAE,EAAE,MAAM,CAAqC;IAClE,UAAmB,MAAM,EAAE,kBAAkB,CAAU;IACvD,UAAmB,KAAK,SAAoC;IAE5D,UAAgB,eAAe,CAC3B,MAAM,EAAE,cAAc,CAAC,SAAS,EAAE,SAAS,CAAC,GAC7C,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CA4DrC;CACJ"}
|
|
@@ -5,13 +5,13 @@
|
|
|
5
5
|
*
|
|
6
6
|
* Looks up a primary identity keystone by username or email hash in the server's identity index.
|
|
7
7
|
*/
|
|
8
|
-
import
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import { IdentityIndexService } from '../../../identity-index/identity-index-service.mjs';
|
|
8
|
+
import { extractErrorMsg, pretty } from '@ibgib/helper-gib/dist/helpers/utils-helper.mjs';
|
|
9
|
+
import { GLOBAL_LOG_A_LOT } from '../../../server-constants.mjs';
|
|
10
|
+
import { getIdentityIndexService } from '../../../identity-index/identity-index-service.mjs';
|
|
12
11
|
import { ServeGibHandlerBase } from '../../handler-base.mjs';
|
|
13
12
|
import { API_PATH_REGEXES } from '../../../path-constants.mjs';
|
|
14
13
|
import { bootstrapDomainMetaspace } from '../../../bootstrap-helper.mjs';
|
|
14
|
+
const logalot = GLOBAL_LOG_A_LOT || true;
|
|
15
15
|
/**
|
|
16
16
|
* POST /api/keystone/lookup
|
|
17
17
|
*/
|
|
@@ -38,24 +38,24 @@ export class KeystoneLookupHandler extends ServeGibHandlerBase {
|
|
|
38
38
|
console.error(`${lc} Rejecting lookup: identifier missing or empty.`);
|
|
39
39
|
return this.error(400, 'Identifier is required');
|
|
40
40
|
}
|
|
41
|
-
const indexService =
|
|
41
|
+
const indexService = getIdentityIndexService();
|
|
42
|
+
if (logalot) {
|
|
43
|
+
console.log(`${lc} identifier: ${identifier} (I: 1c417812d9781c5888090ae8d18d0826)`);
|
|
44
|
+
}
|
|
42
45
|
const record = await indexService.getEmailIndex({ email: identifier });
|
|
46
|
+
if (logalot) {
|
|
47
|
+
console.log(`${lc} record: ${record ? pretty(record) : 'undefined'} (I: 7c6ce86b3ad8e3a138991211b5ec5826)`);
|
|
48
|
+
}
|
|
43
49
|
if (!record) {
|
|
44
50
|
console.log(`${lc} Lookup missed for identifier '${identifier}'`);
|
|
45
|
-
return this.error(404, `No registered identity found for '${identifier}'. Please check your
|
|
51
|
+
return this.error(404, `No registered identity found for '${identifier}'. Please check your email or create a new account.`);
|
|
46
52
|
}
|
|
47
53
|
const { tjpAddr } = record;
|
|
48
|
-
const { tjpGib, punctiliarHash } = getGibInfo({ ibGibAddr: tjpAddr });
|
|
49
|
-
const domainGib = tjpGib || punctiliarHash;
|
|
50
|
-
if (!domainGib) {
|
|
51
|
-
console.error(`${lc} Could not extract domain identifier from tjpAddr: ${tjpAddr}`);
|
|
52
|
-
return this.error(500, `Internal server error locating primary identity.`);
|
|
53
|
-
}
|
|
54
54
|
// Load primary keystone from domain space
|
|
55
55
|
const metaspace = await bootstrapDomainMetaspace(tjpAddr, reqCtx.dataDir);
|
|
56
56
|
const space = await metaspace.getLocalUserSpace({ lock: false });
|
|
57
57
|
if (!space) {
|
|
58
|
-
console.error(`${lc} Could not load space for domain ${
|
|
58
|
+
console.error(`${lc} Could not load space for domain ${tjpAddr}`);
|
|
59
59
|
return this.error(500, `Internal server error loading domain space.`);
|
|
60
60
|
}
|
|
61
61
|
const latestAddr = await metaspace.getLatestAddr({ addr: tjpAddr, space }) ?? tjpAddr;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keystone-lookup.handler.mjs","sourceRoot":"","sources":["../../../../../src/serve-gib/handlers/api/keystone/keystone-lookup.handler.mts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"keystone-lookup.handler.mjs","sourceRoot":"","sources":["../../../../../src/serve-gib/handlers/api/keystone/keystone-lookup.handler.mts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ import { GLOBAL_LOG_A_LOT } from '../../../constants.mjs';
|
|
|
7
7
|
import { ServeGibHandlerWithMetaspaceBase } from '../../handler-base.mjs';
|
|
8
8
|
import { API_PATH_REGEXES } from '../../../path-constants.mjs';
|
|
9
9
|
import { getIbGibAddr } from '@ibgib/ts-gib/dist/helper.mjs';
|
|
10
|
-
const logalot = GLOBAL_LOG_A_LOT
|
|
10
|
+
const logalot = GLOBAL_LOG_A_LOT;
|
|
11
11
|
/**
|
|
12
12
|
* POST /api/keystone
|
|
13
13
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keystone-post.handler.mjs","sourceRoot":"","sources":["../../../../../src/serve-gib/handlers/api/keystone/keystone-post.handler.mts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,iDAAiD,CAAC;AAClF,OAAO,EAAE,gCAAgC,EAAE,MAAM,sHAAsH,CAAC;AAExK,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,gCAAgC,EAAE,MAAM,wBAAwB,CAAC;AAE1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE/D,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D,MAAM,OAAO,GAAG,gBAAgB,
|
|
1
|
+
{"version":3,"file":"keystone-post.handler.mjs","sourceRoot":"","sources":["../../../../../src/serve-gib/handlers/api/keystone/keystone-post.handler.mts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { extractErrorMsg } from '@ibgib/helper-gib/dist/helpers/utils-helper.mjs';
|
|
2
|
-
import { loadSsoServerConfig } from '
|
|
3
|
-
import { SsoCustodianService } from '
|
|
2
|
+
import { loadSsoServerConfig } from '../../../../identity/sso/sso-config-helper.mjs';
|
|
3
|
+
import { SsoCustodianService } from '../../../../identity/sso/sso-custodian-service.mjs';
|
|
4
4
|
import { GLOBAL_LOG_A_LOT } from '../../../constants.mjs';
|
|
5
5
|
import { ServeGibHandlerBase } from '../../handler-base.mjs';
|
|
6
6
|
import { API_PATH_REGEXES } from '../../../path-constants.mjs';
|
|
7
|
-
const logalot = GLOBAL_LOG_A_LOT
|
|
7
|
+
const logalot = GLOBAL_LOG_A_LOT;
|
|
8
8
|
let custodian;
|
|
9
9
|
function getCustodian() {
|
|
10
10
|
if (!custodian) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sso-config.handler.mjs","sourceRoot":"","sources":["../../../../../src/serve-gib/handlers/api/keystone/sso-config.handler.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iDAAiD,CAAC;AAClF,OAAO,EAAE,mBAAmB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"sso-config.handler.mjs","sourceRoot":"","sources":["../../../../../src/serve-gib/handlers/api/keystone/sso-config.handler.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iDAAiD,CAAC;AAClF,OAAO,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,oDAAoD,CAAC;AAEzF,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAG/D,MAAM,OAAO,GAAG,gBAAgB,CAAC;AAEjC,IAAI,SAA0C,CAAC;AAC/C,SAAS,YAAY;IACjB,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,MAAM,MAAM,GAAG,mBAAmB,EAAE,CAAC;QACrC,SAAS,GAAG,IAAI,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,SAAS,CAAC;AACrB,CAAC;AAED;;;;GAIG;AACH,MAAM,OAAO,gBAAiB,SAAQ,mBAA6B;IAC5C,EAAE,GAAW,IAAI,gBAAgB,CAAC,IAAI,GAAG,CAAC;IAC1C,MAAM,GAAuB,KAAK,CAAC;IACnC,KAAK,GAAG,gBAAgB,CAAC,mBAAmB,CAAC;IAE7C,KAAK,CAAC,eAAe,CAAC,MAAgC;QACrE,OAAO,SAAS,CAAC;IACrB,CAAC;IAEkB,KAAK,CAAC,mBAAmB,CAAC,EAAE,WAAW,EAAwB;QAC9E,OAAO,EAAE,CAAC;IACd,CAAC;IAED;;;;OAIG;IACO,KAAK,CAAC,eAAe,CAAC,MAA2B;QACvD,MAAM,EAAE,GAAG,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,eAAe,CAAC,IAAI,GAAG,CAAC;QACtD,IAAI,CAAC;YACD,IAAI,OAAO,EAAE,CAAC;gBAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;YAAC,CAAC;YAElD,MAAM,OAAO,GAAG,YAAY,EAAE,CAAC;YAC/B,MAAM,OAAO,GAAG,GAAG,MAAM,CAAC,QAAQ,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAC9D,MAAM,SAAS,GAAG,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;YAEvD,OAAO,IAAI,CAAC,EAAE,CAAC;gBACX,OAAO,EAAE,IAAI;gBACb,SAAS;aACZ,EAAE,GAAG,CAAC,CAAC;QAEZ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,IAAI,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;YACpC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,gCAAgC,IAAI,EAAE,CAAC,CAAC;YAC3D,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,uCAAuC,IAAI,EAAE,CAAC,CAAC;QAC1E,CAAC;gBAAS,CAAC;YACP,IAAI,OAAO,EAAE,CAAC;gBAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;YAAC,CAAC;QACpD,CAAC;IACL,CAAC;CACJ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sso-link.handler.d.mts","sourceRoot":"","sources":["../../../../../src/serve-gib/handlers/api/keystone/sso-link.handler.mts"],"names":[],"mappings":"AASA,OAAO,EAAE,gCAAgC,EAAE,MAAM,wBAAwB,CAAC;AAE1E,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAa1G,UAAU,UAAW,SAAQ,gBAAgB;IACzC,aAAa,EAAE,MAAM,CAAC;CACzB;AAUD;;;;;GAKG;AACH,qBAAa,cAAe,SAAQ,gCAAgC,CAAC,UAAU,EAAE,GAAG,CAAC;IACjF,UAAmB,EAAE,EAAE,MAAM,CAA8B;IAC3D,UAAmB,MAAM,EAAE,kBAAkB,CAAU;IACvD,UAAmB,KAAK,SAAsC;IAE9D,UAAyB,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC,UAAU,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAajH;IAED,UAAyB,mBAAmB,CAAC,EAAE,WAAW,EAAE,EAAE;QAAE,WAAW,EAAE,GAAG,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAErG;IAED,UAAgB,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"sso-link.handler.d.mts","sourceRoot":"","sources":["../../../../../src/serve-gib/handlers/api/keystone/sso-link.handler.mts"],"names":[],"mappings":"AASA,OAAO,EAAE,gCAAgC,EAAE,MAAM,wBAAwB,CAAC;AAE1E,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAa1G,UAAU,UAAW,SAAQ,gBAAgB;IACzC,aAAa,EAAE,MAAM,CAAC;CACzB;AAUD;;;;;GAKG;AACH,qBAAa,cAAe,SAAQ,gCAAgC,CAAC,UAAU,EAAE,GAAG,CAAC;IACjF,UAAmB,EAAE,EAAE,MAAM,CAA8B;IAC3D,UAAmB,MAAM,EAAE,kBAAkB,CAAU;IACvD,UAAmB,KAAK,SAAsC;IAE9D,UAAyB,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC,UAAU,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAajH;IAED,UAAyB,mBAAmB,CAAC,EAAE,WAAW,EAAE,EAAE;QAAE,WAAW,EAAE,GAAG,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAErG;IAED,UAAgB,eAAe,CAAC,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAoFvG;CACJ"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { extractErrorMsg } from '@ibgib/helper-gib/dist/helpers/utils-helper.mjs';
|
|
2
|
-
import { loadSsoServerConfig } from '
|
|
3
|
-
import { SsoCustodianService } from '
|
|
2
|
+
import { loadSsoServerConfig } from '../../../../identity/sso/sso-config-helper.mjs';
|
|
3
|
+
import { SsoCustodianService } from '../../../../identity/sso/sso-custodian-service.mjs';
|
|
4
4
|
import { isSsoProviderLinked } from '@ibgib/web-gib/dist/identity/sso/sso-helpers.mjs';
|
|
5
5
|
import { KeystoneService_V1 } from '@ibgib/core-gib/dist/keystone/keystone-service-v1.mjs';
|
|
6
|
+
import { getIdentityIndexService } from '../../../identity-index/identity-index-service.mjs';
|
|
6
7
|
import { GLOBAL_LOG_A_LOT } from '../../../constants.mjs';
|
|
7
8
|
import { ServeGibHandlerWithMetaspaceBase } from '../../handler-base.mjs';
|
|
8
9
|
import { API_PATH_REGEXES } from '../../../path-constants.mjs';
|
|
9
|
-
const logalot = GLOBAL_LOG_A_LOT
|
|
10
|
+
const logalot = GLOBAL_LOG_A_LOT;
|
|
10
11
|
let custodian;
|
|
11
12
|
function getCustodian() {
|
|
12
13
|
if (!custodian) {
|
|
@@ -49,28 +50,28 @@ export class SsoLinkHandler extends ServeGibHandlerWithMetaspaceBase {
|
|
|
49
50
|
const lc = `${this.lc}[${this.handleRouteImpl.name}]`;
|
|
50
51
|
try {
|
|
51
52
|
if (logalot) {
|
|
52
|
-
console.log(`${lc} starting
|
|
53
|
+
console.log(`${lc} starting... (I: 8a4c1f930e7b2d5a6c1e9f8a3b5c7d1e)`);
|
|
53
54
|
}
|
|
54
55
|
if (!reqCtx.params) {
|
|
55
|
-
return this.error(400, 'Invalid parameters: parentTjpAddr missing');
|
|
56
|
+
return this.error(400, 'Invalid parameters: parentTjpAddr missing (E: c9f1a2b3d4e5f60718293a4b5c6d7e8f)');
|
|
56
57
|
}
|
|
57
58
|
if (!reqCtx.metaspace) {
|
|
58
|
-
return this.error(500, 'Metaspace not initialized');
|
|
59
|
+
return this.error(500, 'Metaspace not initialized (E: d0a1b2c3d4e5f6789a0b1c2d3e4f5a6b)');
|
|
59
60
|
}
|
|
60
61
|
let parsed;
|
|
61
62
|
try {
|
|
62
63
|
parsed = JSON.parse(reqCtx.body);
|
|
63
64
|
}
|
|
64
65
|
catch {
|
|
65
|
-
return this.error(400, 'Request body must be valid JSON');
|
|
66
|
+
return this.error(400, 'Request body must be valid JSON (E: e1b2c3d4e5f67890a1b2c3d4e5f67890)');
|
|
66
67
|
}
|
|
67
68
|
const { code, providerId, parentTjpAddr, userNonce, redirectUri } = parsed;
|
|
68
69
|
if (!code || !providerId || !parentTjpAddr || !userNonce || !redirectUri) {
|
|
69
|
-
return this.error(400, 'Body missing required parameters (code, providerId, parentTjpAddr, userNonce, redirectUri)');
|
|
70
|
+
return this.error(400, 'Body missing required parameters (code, providerId, parentTjpAddr, userNonce, redirectUri) (E: f2c3d4e5f6789012a3b4c5d6e7f89012)');
|
|
70
71
|
}
|
|
71
72
|
const space = await reqCtx.metaspace.getLocalUserSpace({ lock: false });
|
|
72
73
|
if (!space) {
|
|
73
|
-
return this.error(500, 'No local user space found in domain metaspace');
|
|
74
|
+
return this.error(500, 'No local user space found in domain metaspace (E: 03d4e5f678901234b5c6d7e8f9012345)');
|
|
74
75
|
}
|
|
75
76
|
// 0. Fetch target keystone and verify if already linked
|
|
76
77
|
const keystoneService = new KeystoneService_V1();
|
|
@@ -80,14 +81,26 @@ export class SsoLinkHandler extends ServeGibHandlerWithMetaspaceBase {
|
|
|
80
81
|
space
|
|
81
82
|
});
|
|
82
83
|
if (!targetKeystone) {
|
|
83
|
-
return this.error(400, `Keystone not found for address: ${parentTjpAddr}`);
|
|
84
|
+
return this.error(400, `Keystone not found for address: ${parentTjpAddr} (E: 14e5f67890123456c7d8e9f012345678)`);
|
|
84
85
|
}
|
|
85
86
|
if (isSsoProviderLinked({ keystone: targetKeystone, providerId })) {
|
|
86
|
-
return this.error(400, `SSO provider "${providerId}" is already linked to this keystone
|
|
87
|
+
return this.error(400, `SSO provider "${providerId}" is already linked to this keystone. (E: 25f6789012345678d9e0f12345678901)`);
|
|
87
88
|
}
|
|
88
89
|
// 1. Authenticate with provider and retrieve user info
|
|
89
90
|
const service = getCustodian();
|
|
90
91
|
const userInfo = await service.getOAuthUserInfo(providerId, code, redirectUri);
|
|
92
|
+
if (userInfo.email) {
|
|
93
|
+
try {
|
|
94
|
+
await getIdentityIndexService().registerEmailIndex({
|
|
95
|
+
email: userInfo.email,
|
|
96
|
+
primaryTjpAddr: parentTjpAddr,
|
|
97
|
+
});
|
|
98
|
+
console.log(`(I: 9f8e7d6c5b4a3f2e1d0c9b8a7f6e5d4c) Registered email index for SSO provider ${providerId}: ${userInfo.email}`);
|
|
99
|
+
}
|
|
100
|
+
catch (err) {
|
|
101
|
+
console.log(`${lc} Email index registration note for ${userInfo.email}: ${err.message} (I: 3607890123456789e0f1a23456789012)`);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
91
104
|
// 2. Generate the custodian foreign challenge pool
|
|
92
105
|
const custodianPool = await service.createCustodianChallengePool({
|
|
93
106
|
providerId,
|
|
@@ -97,7 +110,7 @@ export class SsoLinkHandler extends ServeGibHandlerWithMetaspaceBase {
|
|
|
97
110
|
metaspace: reqCtx.metaspace,
|
|
98
111
|
space
|
|
99
112
|
});
|
|
100
|
-
console.log(`${lc} created custodian pool for: ${userInfo.providerKey}`);
|
|
113
|
+
console.log(`${lc} created custodian pool for: ${userInfo.providerKey} (I: 4718901234567890f1a2b34567890123)`);
|
|
101
114
|
return this.ok({
|
|
102
115
|
success: true,
|
|
103
116
|
custodianPool
|
|
@@ -105,12 +118,12 @@ export class SsoLinkHandler extends ServeGibHandlerWithMetaspaceBase {
|
|
|
105
118
|
}
|
|
106
119
|
catch (error) {
|
|
107
120
|
const emsg = extractErrorMsg(error);
|
|
108
|
-
console.error(`${lc} Link failed: ${emsg}`);
|
|
109
|
-
return this.error(500, `Link failed: ${emsg}`);
|
|
121
|
+
console.error(`${lc} Link failed: ${emsg} (E: 5829012345678901a2b3c45678901234)`);
|
|
122
|
+
return this.error(500, `Link failed: ${emsg} (E: 693a012345678901b2c3d45678901234)`);
|
|
110
123
|
}
|
|
111
124
|
finally {
|
|
112
125
|
if (logalot) {
|
|
113
|
-
console.log(`${lc} complete
|
|
126
|
+
console.log(`${lc} complete. (I: 7a4b123456789012c3d4e56789012345)`);
|
|
114
127
|
}
|
|
115
128
|
}
|
|
116
129
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sso-link.handler.mjs","sourceRoot":"","sources":["../../../../../src/serve-gib/handlers/api/keystone/sso-link.handler.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iDAAiD,CAAC;
|
|
1
|
+
{"version":3,"file":"sso-link.handler.mjs","sourceRoot":"","sources":["../../../../../src/serve-gib/handlers/api/keystone/sso-link.handler.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,iDAAiD,CAAC;AAClF,OAAO,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,oDAAoD,CAAC;AAEzF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kDAAkD,CAAC;AACvF,OAAO,EAAE,kBAAkB,EAAE,MAAM,uDAAuD,CAAC;AAC3F,OAAO,EAAE,uBAAuB,EAAE,MAAM,oDAAoD,CAAC;AAE7F,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,gCAAgC,EAAE,MAAM,wBAAwB,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAG/D,MAAM,OAAO,GAAG,gBAAgB,CAAC;AAEjC,IAAI,SAA0C,CAAC;AAC/C,SAAS,YAAY;IACjB,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,MAAM,MAAM,GAAG,mBAAmB,EAAE,CAAC;QACrC,SAAS,GAAG,IAAI,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,SAAS,CAAC;AACrB,CAAC;AAcD;;;;;GAKG;AACH,MAAM,OAAO,cAAe,SAAQ,gCAAiD;IAC9D,EAAE,GAAW,IAAI,cAAc,CAAC,IAAI,GAAG,CAAC;IACxC,MAAM,GAAuB,MAAM,CAAC;IACpC,KAAK,GAAG,gBAAgB,CAAC,iBAAiB,CAAC;IAE3C,KAAK,CAAC,eAAe,CAAC,MAAuC;QAC5E,IAAI,MAAW,CAAC;QAChB,IAAI,CAAC;YACD,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACrC,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,SAAS,CAAC;QACrB,CAAC;QACD,MAAM,aAAa,GAAG,MAAM,EAAE,aAAa,CAAC;QAC5C,IAAI,CAAC,aAAa,EAAE,CAAC;YAAC,OAAO,SAAS,CAAC;QAAC,CAAC;QACzC,OAAO;YACH,aAAa;YACb,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC;SAChE,CAAC;IACN,CAAC;IAEkB,KAAK,CAAC,mBAAmB,CAAC,EAAE,WAAW,EAAwB;QAC9E,OAAO,EAAE,CAAC;IACd,CAAC;IAES,KAAK,CAAC,eAAe,CAAC,MAAkC;QAC9D,MAAM,EAAE,GAAG,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,eAAe,CAAC,IAAI,GAAG,CAAC;QACtD,IAAI,CAAC;YACD,IAAI,OAAO,EAAE,CAAC;gBAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,oDAAoD,CAAC,CAAC;YAAC,CAAC;YAExF,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;gBACjB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,iFAAiF,CAAC,CAAC;YAC9G,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;gBACpB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,iEAAiE,CAAC,CAAC;YAC9F,CAAC;YAED,IAAI,MAAgB,CAAC;YACrB,IAAI,CAAC;gBACD,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACrC,CAAC;YAAC,MAAM,CAAC;gBACL,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,uEAAuE,CAAC,CAAC;YACpG,CAAC;YAED,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;YAC3E,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,aAAa,IAAI,CAAC,SAAS,IAAI,CAAC,WAAW,EAAE,CAAC;gBACvE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,kIAAkI,CAAC,CAAC;YAC/J,CAAC;YAED,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YACxE,IAAI,CAAC,KAAK,EAAE,CAAC;gBACT,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,qFAAqF,CAAC,CAAC;YAClH,CAAC;YAED,wDAAwD;YACxD,MAAM,eAAe,GAAG,IAAI,kBAAkB,EAAE,CAAC;YACjD,MAAM,cAAc,GAAG,MAAM,eAAe,CAAC,iBAAiB,CAAC;gBAC3D,IAAI,EAAE,aAAa;gBACnB,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,KAAK;aACR,CAAC,CAAC;YACH,IAAI,CAAC,cAAc,EAAE,CAAC;gBAClB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,mCAAmC,aAAa,wCAAwC,CAAC,CAAC;YACrH,CAAC;YAED,IAAI,mBAAmB,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC;gBAChE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,iBAAiB,UAAU,6EAA6E,CAAC,CAAC;YACrI,CAAC;YAED,uDAAuD;YACvD,MAAM,OAAO,GAAG,YAAY,EAAE,CAAC;YAC/B,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;YAE/E,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;gBACjB,IAAI,CAAC;oBACD,MAAM,uBAAuB,EAAE,CAAC,kBAAkB,CAAC;wBAC/C,KAAK,EAAE,QAAQ,CAAC,KAAK;wBACrB,cAAc,EAAE,aAAa;qBAChC,CAAC,CAAC;oBACH,OAAO,CAAC,GAAG,CAAC,iFAAiF,UAAU,KAAK,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;gBAClI,CAAC;gBAAC,OAAO,GAAQ,EAAE,CAAC;oBAChB,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,sCAAsC,QAAQ,CAAC,KAAK,KAAK,GAAG,CAAC,OAAO,wCAAwC,CAAC,CAAC;gBACnI,CAAC;YACL,CAAC;YAED,mDAAmD;YACnD,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,4BAA4B,CAAC;gBAC7D,UAAU;gBACV,WAAW,EAAE,QAAQ,CAAC,WAAW;gBACjC,SAAS;gBACT,YAAY,EAAE,aAAa;gBAC3B,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,KAAK;aACR,CAAC,CAAC;YAEH,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,gCAAgC,QAAQ,CAAC,WAAW,wCAAwC,CAAC,CAAC;YAE/G,OAAO,IAAI,CAAC,EAAE,CAAC;gBACX,OAAO,EAAE,IAAI;gBACb,aAAa;aAChB,EAAE,GAAG,CAAC,CAAC;QAEZ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,IAAI,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;YACpC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,iBAAiB,IAAI,wCAAwC,CAAC,CAAC;YAClF,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,gBAAgB,IAAI,wCAAwC,CAAC,CAAC;QACzF,CAAC;gBAAS,CAAC;YACP,IAAI,OAAO,EAAE,CAAC;gBAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,kDAAkD,CAAC,CAAC;YAAC,CAAC;QAC1F,CAAC;IACL,CAAC;CACJ"}
|
|
@@ -1,24 +1,38 @@
|
|
|
1
|
-
import { ServeGibHandlerWithMetaspaceBase } from '../../handler-base.mjs';
|
|
2
|
-
import { ParamsWithDomain, RequestContext, ResponseResult, ServeGibHttpMethod } from '../../../types.mjs';
|
|
3
|
-
interface LoginParams extends ParamsWithDomain {
|
|
4
|
-
parentTjpAddr: string;
|
|
5
|
-
}
|
|
6
1
|
/**
|
|
2
|
+
* @module serve-gib/handlers/api/keystone/sso-login.handler
|
|
3
|
+
*
|
|
7
4
|
* POST /api/identity/sso/login
|
|
8
5
|
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
* and
|
|
6
|
+
* Handles OAuth2 SSO code exchange (Google, GitHub, etc.).
|
|
7
|
+
* Retrieves verified email, looks up or provisions the custodian primary identity keystone,
|
|
8
|
+
* generates a fresh single-turn `CustodianRequirements` payload, and returns it to the client.
|
|
9
|
+
*/
|
|
10
|
+
import { ServeGibHandlerBase } from '../../handler-base.mjs';
|
|
11
|
+
import { RequestContext, ResponseResult, ServeGibHttpMethod } from '../../../types.mjs';
|
|
12
|
+
import { SsoProviderId } from '../../../../identity/sso/sso-types.mjs';
|
|
13
|
+
export interface SsoLoginBody {
|
|
14
|
+
code: string;
|
|
15
|
+
providerId: SsoProviderId;
|
|
16
|
+
redirectUri: string;
|
|
17
|
+
}
|
|
18
|
+
export interface SsoLoginResponseBody {
|
|
19
|
+
success: boolean;
|
|
20
|
+
isNewIdentity?: boolean;
|
|
21
|
+
primaryTjpAddr?: string;
|
|
22
|
+
primaryKeystone?: any;
|
|
23
|
+
custodianReqs?: any;
|
|
24
|
+
userInfo?: any;
|
|
25
|
+
message?: string;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* POST /api/identity/sso/login
|
|
12
29
|
*/
|
|
13
|
-
export declare class SsoLoginHandler extends
|
|
30
|
+
export declare class SsoLoginHandler extends ServeGibHandlerBase<undefined, undefined> {
|
|
14
31
|
protected lc: string;
|
|
15
32
|
protected method: ServeGibHttpMethod;
|
|
16
33
|
protected regex: RegExp;
|
|
17
|
-
protected parseParamsImpl(
|
|
18
|
-
protected validateQueryParams(
|
|
19
|
-
|
|
20
|
-
}): Promise<string[]>;
|
|
21
|
-
protected handleRouteImpl(reqCtx: RequestContext<LoginParams>): Promise<ResponseResult | undefined>;
|
|
34
|
+
protected parseParamsImpl(): Promise<undefined>;
|
|
35
|
+
protected validateQueryParams(): Promise<string[]>;
|
|
36
|
+
protected handleRouteImpl(reqCtx: RequestContext<undefined, undefined>): Promise<ResponseResult | undefined>;
|
|
22
37
|
}
|
|
23
|
-
export {};
|
|
24
38
|
//# sourceMappingURL=sso-login.handler.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sso-login.handler.d.mts","sourceRoot":"","sources":["../../../../../src/serve-gib/handlers/api/keystone/sso-login.handler.mts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sso-login.handler.d.mts","sourceRoot":"","sources":["../../../../../src/serve-gib/handlers/api/keystone/sso-login.handler.mts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAQH,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAE7D,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAIxF,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AAevE,MAAM,WAAW,YAAY;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,aAAa,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,oBAAoB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,GAAG,CAAC;IACtB,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC;IAC1E,UAAmB,EAAE,EAAE,MAAM,CAA+B;IAC5D,UAAmB,MAAM,EAAE,kBAAkB,CAAU;IACvD,UAAmB,KAAK,SAAuC;IAE/D,UAAyB,eAAe,IAAI,OAAO,CAAC,SAAS,CAAC,CAE7D;IAED,UAAyB,mBAAmB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAEhE;IAED,UAAgB,eAAe,CAC3B,MAAM,EAAE,cAAc,CAAC,SAAS,EAAE,SAAS,CAAC,GAC7C,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CA4HrC;CACJ"}
|