@goldstack/template-user-management 0.1.1 → 0.1.2
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/src/cognitoClientAuth.d.ts +1 -1
- package/dist/src/cognitoClientAuth.d.ts.map +1 -1
- package/dist/src/cognitoClientAuth.js +11 -4
- package/dist/src/cognitoClientAuth.js.map +1 -1
- package/dist/src/cognitoTokenVerify.d.ts +6 -12
- package/dist/src/cognitoTokenVerify.d.ts.map +1 -1
- package/dist/src/cognitoTokenVerify.js +3 -43
- package/dist/src/cognitoTokenVerify.js.map +1 -1
- package/dist/src/templateUserManagement.d.ts +11 -2
- package/dist/src/templateUserManagement.d.ts.map +1 -1
- package/dist/src/templateUserManagement.js +119 -23
- package/dist/src/templateUserManagement.js.map +1 -1
- package/dist/src/userManagementClientMock.d.ts +7 -0
- package/dist/src/userManagementClientMock.d.ts.map +1 -0
- package/dist/src/userManagementClientMock.js +77 -0
- package/dist/src/userManagementClientMock.js.map +1 -0
- package/dist/src/userManagementConfig.d.ts.map +1 -1
- package/dist/src/userManagementConfig.js +4 -0
- package/dist/src/userManagementConfig.js.map +1 -1
- package/dist/src/userManagementMock.d.ts +35 -0
- package/dist/src/userManagementMock.d.ts.map +1 -0
- package/dist/src/userManagementMock.js +44 -0
- package/dist/src/userManagementMock.js.map +1 -0
- package/dist/src/userManagementServerMock.d.ts +13 -0
- package/dist/src/userManagementServerMock.d.ts.map +1 -0
- package/dist/src/userManagementServerMock.js +79 -0
- package/dist/src/userManagementServerMock.js.map +1 -0
- package/package.json +1 -1
|
@@ -10,7 +10,7 @@ export declare function getToken(args: {
|
|
|
10
10
|
packageSchema: any;
|
|
11
11
|
deploymentsOutput: any;
|
|
12
12
|
deploymentName?: string;
|
|
13
|
-
}): Promise<GetTokenResults>;
|
|
13
|
+
}): Promise<GetTokenResults | undefined>;
|
|
14
14
|
export declare function executeTokenRequest(args: {
|
|
15
15
|
tokenEndpoint: string;
|
|
16
16
|
clientId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cognitoClientAuth.d.ts","sourceRoot":"","sources":["../../src/cognitoClientAuth.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cognitoClientAuth.d.ts","sourceRoot":"","sources":["../../src/cognitoClientAuth.ts"],"names":[],"mappings":"AAkBA,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAsB,QAAQ,CAAC,IAAI,EAAE;IACnC,eAAe,EAAE,GAAG,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,GAAG,CAAC;IACnB,iBAAiB,EAAE,GAAG,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,GAAG,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC,CA2CvC;AAED,wBAAsB,mBAAmB,CAAC,IAAI,EAAE;IAC9C,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;CACrB,GAAG,OAAO,CAAC,eAAe,CAAC,CAmC3B"}
|
|
@@ -1,20 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
/* esbuild-ignore server */
|
|
2
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
4
|
exports.executeTokenRequest = exports.getToken = void 0;
|
|
4
5
|
const utils_package_config_embedded_1 = require("@goldstack/utils-package-config-embedded");
|
|
5
6
|
const codeChallenge_1 = require("./codeChallenge");
|
|
6
7
|
const cognitoEndpoints_1 = require("./cognitoEndpoints");
|
|
8
|
+
const userManagementClientMock_1 = require("./userManagementClientMock");
|
|
7
9
|
const userManagementConfig_1 = require("./userManagementConfig");
|
|
8
10
|
async function getToken(args) {
|
|
9
11
|
const deploymentName = (0, userManagementConfig_1.getDeploymentName)(args.deploymentName);
|
|
10
12
|
if (deploymentName === 'local') {
|
|
11
|
-
if (args.code !== 'dummy-client-
|
|
12
|
-
throw new Error(`Unexpected code for client auth: '${args.code}'. Expected: dummy-client-
|
|
13
|
+
if (args.code !== 'dummy-local-client-code') {
|
|
14
|
+
throw new Error(`Unexpected code for client auth: '${args.code}'. Expected: dummy-local-client-code`);
|
|
15
|
+
}
|
|
16
|
+
const mockedUserAccessToken = (0, userManagementClientMock_1.getMockedUserAccessToken)();
|
|
17
|
+
const mockedIdToken = (0, userManagementClientMock_1.getMockedUserIdToken)();
|
|
18
|
+
if (!mockedUserAccessToken || !mockedIdToken) {
|
|
19
|
+
return;
|
|
13
20
|
}
|
|
14
21
|
return {
|
|
15
|
-
accessToken:
|
|
22
|
+
accessToken: mockedUserAccessToken,
|
|
16
23
|
refreshToken: 'dummyRefreshToken',
|
|
17
|
-
idToken:
|
|
24
|
+
idToken: mockedIdToken,
|
|
18
25
|
};
|
|
19
26
|
}
|
|
20
27
|
const packageConfig = new utils_package_config_embedded_1.EmbeddedPackageConfig({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cognitoClientAuth.js","sourceRoot":"","sources":["../../src/cognitoClientAuth.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cognitoClientAuth.js","sourceRoot":"","sources":["../../src/cognitoClientAuth.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,5 @@
|
|
|
1
1
|
import { CognitoJwtVerifier } from 'aws-jwt-verify';
|
|
2
2
|
import type { CognitoAccessTokenPayload, CognitoIdTokenPayload } from 'aws-jwt-verify/jwt-model';
|
|
3
|
-
export declare function connectWithCognito({ goldstackConfig, packageSchema, deploymentsOutput, deploymentName, }: {
|
|
4
|
-
goldstackConfig: any;
|
|
5
|
-
packageSchema: any;
|
|
6
|
-
deploymentsOutput: any;
|
|
7
|
-
deploymentName?: string;
|
|
8
|
-
}): Promise<CognitoManager>;
|
|
9
3
|
export interface CognitoManager {
|
|
10
4
|
validate(accessToken: string): Promise<CognitoAccessTokenPayload>;
|
|
11
5
|
/**
|
|
@@ -16,6 +10,12 @@ export interface CognitoManager {
|
|
|
16
10
|
email: string;
|
|
17
11
|
}>;
|
|
18
12
|
}
|
|
13
|
+
export declare function connectWithCognito({ goldstackConfig, packageSchema, deploymentsOutput, deploymentName, }: {
|
|
14
|
+
goldstackConfig: any;
|
|
15
|
+
packageSchema: any;
|
|
16
|
+
deploymentsOutput: any;
|
|
17
|
+
deploymentName?: string;
|
|
18
|
+
}): Promise<CognitoManager>;
|
|
19
19
|
export declare class CognitoManagerImpl implements CognitoManager {
|
|
20
20
|
accessTokenVerifier: CognitoJwtVerifier<any, any, any>;
|
|
21
21
|
idTokenVerifier: CognitoJwtVerifier<any, any, any>;
|
|
@@ -25,10 +25,4 @@ export declare class CognitoManagerImpl implements CognitoManager {
|
|
|
25
25
|
email: string;
|
|
26
26
|
}>;
|
|
27
27
|
}
|
|
28
|
-
export declare class LocalUserManagerImpl implements CognitoManager {
|
|
29
|
-
validateIdToken(idToken: string): Promise<CognitoIdTokenPayload & {
|
|
30
|
-
email: string;
|
|
31
|
-
}>;
|
|
32
|
-
validate(jwtToken: string): Promise<CognitoAccessTokenPayload>;
|
|
33
|
-
}
|
|
34
28
|
//# sourceMappingURL=cognitoTokenVerify.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cognitoTokenVerify.d.ts","sourceRoot":"","sources":["../../src/cognitoTokenVerify.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAGpD,OAAO,KAAK,EACV,yBAAyB,EACzB,qBAAqB,EACtB,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"cognitoTokenVerify.d.ts","sourceRoot":"","sources":["../../src/cognitoTokenVerify.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAGpD,OAAO,KAAK,EACV,yBAAyB,EACzB,qBAAqB,EACtB,MAAM,0BAA0B,CAAC;AAWlC,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAC;IAClE;;;OAGG;IACH,eAAe,CACb,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,qBAAqB,GAAG;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACvD;AAOD,wBAAsB,kBAAkB,CAAC,EACvC,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,cAAc,GACf,EAAE;IACD,eAAe,EAAE,GAAG,CAAC;IACrB,aAAa,EAAE,GAAG,CAAC;IACnB,iBAAiB,EAAE,GAAG,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,GAAG,OAAO,CAAC,cAAc,CAAC,CAqC1B;AAED,qBAAa,kBAAmB,YAAW,cAAc;IACvD,mBAAmB,EAAE,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACvD,eAAe,EAAE,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;gBAGjD,mBAAmB,EAAE,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EACtD,eAAe,EAAE,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IAM9C,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAS9D,eAAe,CACnB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,qBAAqB,GAAG;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAQtD"}
|
|
@@ -2,10 +2,11 @@
|
|
|
2
2
|
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
3
3
|
/* esbuild-ignore ui */
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
-
exports.
|
|
5
|
+
exports.CognitoManagerImpl = exports.connectWithCognito = void 0;
|
|
6
6
|
const aws_jwt_verify_1 = require("aws-jwt-verify");
|
|
7
7
|
const jwk_1 = require("aws-jwt-verify/jwk");
|
|
8
8
|
const userManagementConfig_1 = require("./userManagementConfig");
|
|
9
|
+
const userManagementServerMock_1 = require("./userManagementServerMock");
|
|
9
10
|
/**
|
|
10
11
|
* We want to keep only one JWKS cache globally for our application.
|
|
11
12
|
*/
|
|
@@ -13,7 +14,7 @@ let sharedJwksCache = undefined;
|
|
|
13
14
|
async function connectWithCognito({ goldstackConfig, packageSchema, deploymentsOutput, deploymentName, }) {
|
|
14
15
|
deploymentName = (0, userManagementConfig_1.getDeploymentName)(deploymentName);
|
|
15
16
|
if (deploymentName === 'local') {
|
|
16
|
-
return
|
|
17
|
+
return (0, userManagementServerMock_1.getLocalUserManager)();
|
|
17
18
|
}
|
|
18
19
|
const deploymentOutput = (0, userManagementConfig_1.getDeploymentsOutput)(deploymentsOutput, deploymentName);
|
|
19
20
|
if (!sharedJwksCache) {
|
|
@@ -61,45 +62,4 @@ class CognitoManagerImpl {
|
|
|
61
62
|
}
|
|
62
63
|
}
|
|
63
64
|
exports.CognitoManagerImpl = CognitoManagerImpl;
|
|
64
|
-
class LocalUserManagerImpl {
|
|
65
|
-
async validateIdToken(idToken) {
|
|
66
|
-
return {
|
|
67
|
-
at_hash: 'NixgfrD9129y_3vcIILTIg',
|
|
68
|
-
sub: '9ad18936-07ce-4c17-8ed9-278fdd35406a',
|
|
69
|
-
email_verified: true,
|
|
70
|
-
phone_number_verified: false,
|
|
71
|
-
'cognito:preferred_role': '',
|
|
72
|
-
'cognito:roles': [],
|
|
73
|
-
identities: [],
|
|
74
|
-
iss: 'https://cognito-idp.us-west-2.amazonaws.com/us-west-2_AnBhna7ph',
|
|
75
|
-
'cognito:username': '9ad18936-07ce-4c17-8ed9-278fdd35406a',
|
|
76
|
-
origin_jti: '72408fc1-2223-4a04-9a45-f10aaefd77ee',
|
|
77
|
-
aud: '7cuiqmug2c50sgqi93igjk16mf',
|
|
78
|
-
event_id: '4dcbf59b-53a8-4674-94c9-81eb2171b66d',
|
|
79
|
-
token_use: 'id',
|
|
80
|
-
auth_time: Math.floor(Date.now() / 1000),
|
|
81
|
-
exp: Math.floor(Date.now() / 1000) + 60 * 60 * 24,
|
|
82
|
-
iat: Math.floor(Date.now() / 1000),
|
|
83
|
-
jti: '17fdf966-9882-4114-8095-ecc9ac19aa7b',
|
|
84
|
-
email: 'dummy@dummy.com',
|
|
85
|
-
};
|
|
86
|
-
}
|
|
87
|
-
async validate(jwtToken) {
|
|
88
|
-
return {
|
|
89
|
-
auth_time: Math.floor(Date.now() / 1000),
|
|
90
|
-
client_id: '7cuiqmug2c50sgqi93igjk16mf',
|
|
91
|
-
exp: Math.floor(Date.now() / 1000) + 60 * 60 * 24,
|
|
92
|
-
iat: Math.floor(Date.now() / 1000),
|
|
93
|
-
iss: 'https://cognito-idp.us-west-2.amazonaws.com/us-west-2_AnBhna7ph',
|
|
94
|
-
jti: '53b68584-3a9e-4b97-b7de-10924c57d191',
|
|
95
|
-
origin_jti: '4ee806c2-6948-4d57-886b-1e94eb0f5193',
|
|
96
|
-
scope: 'openid email',
|
|
97
|
-
sub: '9ad18936-07ce-4c17-8ed9-278fdd35406a',
|
|
98
|
-
username: '9ad18936-07ce-4c17-8ed9-278fdd35406a',
|
|
99
|
-
token_use: 'access',
|
|
100
|
-
version: 2,
|
|
101
|
-
};
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
exports.LocalUserManagerImpl = LocalUserManagerImpl;
|
|
105
65
|
//# sourceMappingURL=cognitoTokenVerify.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cognitoTokenVerify.js","sourceRoot":"","sources":["../../src/cognitoTokenVerify.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,uBAAuB;;;AAEvB,mDAAoD;AACpD,4CAAqD;AAOrD,iEAGgC;
|
|
1
|
+
{"version":3,"file":"cognitoTokenVerify.js","sourceRoot":"","sources":["../../src/cognitoTokenVerify.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,uBAAuB;;;AAEvB,mDAAoD;AACpD,4CAAqD;AAOrD,iEAGgC;AAChC,yEAGoC;AAapC;;GAEG;AACH,IAAI,eAAe,GAAgC,SAAS,CAAC;AAEtD,KAAK,UAAU,kBAAkB,CAAC,EACvC,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,cAAc,GAMf;IACC,cAAc,GAAG,IAAA,wCAAiB,EAAC,cAAc,CAAC,CAAC;IAEnD,IAAI,cAAc,KAAK,OAAO,EAAE;QAC9B,OAAO,IAAA,8CAAmB,GAAE,CAAC;KAC9B;IAED,MAAM,gBAAgB,GAAG,IAAA,2CAAoB,EAC3C,iBAAiB,EACjB,cAAc,CACf,CAAC;IAEF,IAAI,CAAC,eAAe,EAAE;QACpB,eAAe,GAAG,IAAI,qBAAe,EAAE,CAAC;KACzC;IAED,MAAM,mBAAmB,GAAG,mCAAkB,CAAC,MAAM,CACnD;QACE,UAAU,EAAE,gBAAgB,CAAC,SAAS,CAAC,YAAY,CAAC,KAAK;QACzD,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,gBAAgB,CAAC,SAAS,CAAC,mBAAmB,CAAC,KAAK;KAC/D,EACD;QACE,SAAS,EAAE,eAAe;KAC3B,CACF,CAAC;IACF,MAAM,eAAe,GAAG,mCAAkB,CAAC,MAAM,CAC/C;QACE,UAAU,EAAE,gBAAgB,CAAC,SAAS,CAAC,YAAY,CAAC,KAAK;QACzD,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,gBAAgB,CAAC,SAAS,CAAC,mBAAmB,CAAC,KAAK;KAC/D,EACD;QACE,SAAS,EAAE,eAAe;KAC3B,CACF,CAAC;IACF,OAAO,IAAI,kBAAkB,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC;AACtE,CAAC;AA/CD,gDA+CC;AAED,MAAa,kBAAkB;IAI7B,YACE,mBAAsD,EACtD,eAAkD;QAElD,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;QAC/C,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,QAAgB;QAC7B,IAAI;YACF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAChE,OAAO,OAAc,CAAC;SACvB;QAAC,MAAM;YACN,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;SAClC;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,QAAgB;QAEhB,IAAI;YACF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC5D,OAAO,OAAc,CAAC;SACvB;QAAC,MAAM;YACN,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;SAClC;IACH,CAAC;CACF;AA/BD,gDA+BC"}
|
|
@@ -2,6 +2,7 @@ export * from './types/UserManagementPackage';
|
|
|
2
2
|
import type { CognitoManager } from './cognitoTokenVerify';
|
|
3
3
|
export type { CognitoManager } from './cognitoTokenVerify';
|
|
4
4
|
import type { GetTokenResults } from './cognitoClientAuth';
|
|
5
|
+
import { CognitoAccessTokenPayload, CognitoIdTokenPayload } from 'aws-jwt-verify/jwt-model';
|
|
5
6
|
export type { GetTokenResults };
|
|
6
7
|
export declare function connectWithCognito(args: {
|
|
7
8
|
goldstackConfig: any;
|
|
@@ -9,6 +10,14 @@ export declare function connectWithCognito(args: {
|
|
|
9
10
|
deploymentsOutput: any;
|
|
10
11
|
deploymentName?: string;
|
|
11
12
|
}): Promise<CognitoManager>;
|
|
13
|
+
export declare function getLocalUserManager(): CognitoManager;
|
|
14
|
+
export declare function setLocalUserManager(userManager: CognitoManager): void;
|
|
15
|
+
export declare function generateTestIdToken(properties: CognitoIdTokenPayload | object): string;
|
|
16
|
+
export declare function generateTestAccessToken(properties: CognitoAccessTokenPayload | object): string;
|
|
17
|
+
export declare function getMockedUserIdToken(): string | undefined;
|
|
18
|
+
export declare function setMockedUserIdToken(propertiesOrToken: CognitoIdTokenPayload | object | string | undefined): void;
|
|
19
|
+
export declare function getMockedUserAccessToken(): string | undefined;
|
|
20
|
+
export declare function setMockedUserAccessToken(propertiesOrToken: CognitoAccessTokenPayload | object | string | undefined): void;
|
|
12
21
|
export declare type Endpoint = 'authorize' | 'token' | 'logout';
|
|
13
22
|
export declare function getEndpoint(args: {
|
|
14
23
|
goldstackConfig: any;
|
|
@@ -24,14 +33,14 @@ export declare function getToken(args: {
|
|
|
24
33
|
packageSchema: any;
|
|
25
34
|
deploymentsOutput: any;
|
|
26
35
|
deploymentName?: string;
|
|
27
|
-
}): Promise<GetTokenResults>;
|
|
36
|
+
}): Promise<GetTokenResults | undefined>;
|
|
28
37
|
export interface ClientAuthResult {
|
|
29
38
|
accessToken: string;
|
|
30
39
|
idToken: string;
|
|
31
40
|
}
|
|
32
41
|
/**
|
|
33
42
|
* <p>Performs client-side authentication.
|
|
34
|
-
* <p>Will redirect to Cognito hosted UI for
|
|
43
|
+
* <p>Will redirect to Cognito hosted UI for signIn if required.
|
|
35
44
|
* <p>Sets client-side cookies and session variables.
|
|
36
45
|
* <p>For more control on what gets persisted on the client-side, use the method <code>getToken</code>.
|
|
37
46
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templateUserManagement.d.ts","sourceRoot":"","sources":["../../src/templateUserManagement.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"templateUserManagement.d.ts","sourceRoot":"","sources":["../../src/templateUserManagement.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAC;AAQ9C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAM3D,YAAY,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EACL,yBAAyB,EACzB,qBAAqB,EACtB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EAAE,eAAe,EAAE,CAAC;AAEhC,wBAAsB,kBAAkB,CAAC,IAAI,EAAE;IAC7C,eAAe,EAAE,GAAG,CAAC;IACrB,aAAa,EAAE,GAAG,CAAC;IACnB,iBAAiB,EAAE,GAAG,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,GAAG,OAAO,CAAC,cAAc,CAAC,CAE1B;AAED,wBAAgB,mBAAmB,IAAI,cAAc,CAEpD;AAED,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,cAAc,GAAG,IAAI,CAErE;AAED,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,qBAAqB,GAAG,MAAM,GACzC,MAAM,CAER;AAED,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,yBAAyB,GAAG,MAAM,GAC7C,MAAM,CAER;AAED,wBAAgB,oBAAoB,uBAKnC;AAED,wBAAgB,oBAAoB,CAClC,iBAAiB,EAAE,qBAAqB,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,QAMvE;AAED,wBAAgB,wBAAwB,uBAKvC;AAED,wBAAgB,wBAAwB,CACtC,iBAAiB,EAAE,yBAAyB,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,QAM3E;AAED,oBAAY,QAAQ,GAChB,WAAW,GACX,OAAO,GACP,QAAQ,CAAC;AAEb,wBAAsB,WAAW,CAAC,IAAI,EAAE;IACtC,eAAe,EAAE,GAAG,CAAC;IACrB,QAAQ,EAAE,QAAQ,CAAC;IACnB,aAAa,EAAE,GAAG,CAAC;IACnB,iBAAiB,EAAE,GAAG,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,GAAG,OAAO,CAAC,MAAM,CAAC,CAElB;AAED,wBAAsB,QAAQ,CAAC,IAAI,EAAE;IACnC,eAAe,EAAE,GAAG,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,GAAG,CAAC;IACnB,iBAAiB,EAAE,GAAG,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,GAAG,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC,CAEvC;AAuBD,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE;IAC5C,eAAe,EAAE,GAAG,CAAC;IACrB,aAAa,EAAE,GAAG,CAAC;IACnB,iBAAiB,EAAE,GAAG,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,GAAG,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAsHxC;AAyBD;;;GAGG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE;IACxC,eAAe,EAAE,GAAG,CAAC;IACrB,aAAa,EAAE,GAAG,CAAC;IACnB,iBAAiB,EAAE,GAAG,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,iBAuBA"}
|
|
@@ -26,23 +26,69 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
26
26
|
return result;
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.performLogout = exports.performClientAuth = exports.getToken = exports.getEndpoint = exports.connectWithCognito = void 0;
|
|
29
|
+
exports.performLogout = exports.performClientAuth = exports.getToken = exports.getEndpoint = exports.setMockedUserAccessToken = exports.getMockedUserAccessToken = exports.setMockedUserIdToken = exports.getMockedUserIdToken = exports.generateTestAccessToken = exports.generateTestIdToken = exports.setLocalUserManager = exports.getLocalUserManager = exports.connectWithCognito = void 0;
|
|
30
30
|
__exportStar(require("./types/UserManagementPackage"), exports);
|
|
31
31
|
const tokenVerify = __importStar(require("./cognitoTokenVerify"));
|
|
32
|
+
const userManagementServerMock = __importStar(require("./userManagementServerMock"));
|
|
33
|
+
const userManagementClientMock = __importStar(require("./userManagementClientMock"));
|
|
34
|
+
const cognitoClientAuth = __importStar(require("./cognitoClientAuth"));
|
|
32
35
|
const cognitoEndpoints_1 = require("./cognitoEndpoints");
|
|
33
|
-
const cognitoClientAuth_1 = require("./cognitoClientAuth");
|
|
34
36
|
const userManagementConfig_1 = require("./userManagementConfig");
|
|
35
37
|
const utils_package_config_embedded_1 = require("@goldstack/utils-package-config-embedded");
|
|
36
38
|
async function connectWithCognito(args) {
|
|
37
39
|
return tokenVerify.connectWithCognito(args);
|
|
38
40
|
}
|
|
39
41
|
exports.connectWithCognito = connectWithCognito;
|
|
42
|
+
function getLocalUserManager() {
|
|
43
|
+
return userManagementServerMock.getLocalUserManager();
|
|
44
|
+
}
|
|
45
|
+
exports.getLocalUserManager = getLocalUserManager;
|
|
46
|
+
function setLocalUserManager(userManager) {
|
|
47
|
+
userManagementServerMock.setLocalUserManager(userManager);
|
|
48
|
+
}
|
|
49
|
+
exports.setLocalUserManager = setLocalUserManager;
|
|
50
|
+
function generateTestIdToken(properties) {
|
|
51
|
+
return userManagementServerMock.generateTestIdToken(properties);
|
|
52
|
+
}
|
|
53
|
+
exports.generateTestIdToken = generateTestIdToken;
|
|
54
|
+
function generateTestAccessToken(properties) {
|
|
55
|
+
return userManagementServerMock.generateTestAccessToken(properties);
|
|
56
|
+
}
|
|
57
|
+
exports.generateTestAccessToken = generateTestAccessToken;
|
|
58
|
+
function getMockedUserIdToken() {
|
|
59
|
+
if (typeof window === 'undefined') {
|
|
60
|
+
return undefined;
|
|
61
|
+
}
|
|
62
|
+
return userManagementClientMock.getMockedUserIdToken();
|
|
63
|
+
}
|
|
64
|
+
exports.getMockedUserIdToken = getMockedUserIdToken;
|
|
65
|
+
function setMockedUserIdToken(propertiesOrToken) {
|
|
66
|
+
if (typeof window === 'undefined') {
|
|
67
|
+
return undefined;
|
|
68
|
+
}
|
|
69
|
+
return userManagementClientMock.setMockedUserIdToken(propertiesOrToken);
|
|
70
|
+
}
|
|
71
|
+
exports.setMockedUserIdToken = setMockedUserIdToken;
|
|
72
|
+
function getMockedUserAccessToken() {
|
|
73
|
+
if (typeof window === 'undefined') {
|
|
74
|
+
return undefined;
|
|
75
|
+
}
|
|
76
|
+
return userManagementClientMock.getMockedUserAccessToken();
|
|
77
|
+
}
|
|
78
|
+
exports.getMockedUserAccessToken = getMockedUserAccessToken;
|
|
79
|
+
function setMockedUserAccessToken(propertiesOrToken) {
|
|
80
|
+
if (typeof window === 'undefined') {
|
|
81
|
+
return undefined;
|
|
82
|
+
}
|
|
83
|
+
return userManagementClientMock.setMockedUserAccessToken(propertiesOrToken);
|
|
84
|
+
}
|
|
85
|
+
exports.setMockedUserAccessToken = setMockedUserAccessToken;
|
|
40
86
|
async function getEndpoint(args) {
|
|
41
87
|
return (0, cognitoEndpoints_1.getEndpoint)(args);
|
|
42
88
|
}
|
|
43
89
|
exports.getEndpoint = getEndpoint;
|
|
44
90
|
async function getToken(args) {
|
|
45
|
-
return
|
|
91
|
+
return cognitoClientAuth.getToken(args);
|
|
46
92
|
}
|
|
47
93
|
exports.getToken = getToken;
|
|
48
94
|
function setCookie(name, value, minutes) {
|
|
@@ -55,10 +101,10 @@ function setCookie(name, value, minutes) {
|
|
|
55
101
|
else {
|
|
56
102
|
expires = '';
|
|
57
103
|
}
|
|
58
|
-
document.cookie = name + '=' + value + expires + '; path
|
|
104
|
+
document.cookie = name + '=' + value + expires + '; path=/; SameSite=Strict';
|
|
59
105
|
}
|
|
60
106
|
function eraseCookie(name) {
|
|
61
|
-
document.cookie = name + '=; Max-Age=0';
|
|
107
|
+
document.cookie = name + '=; Max-Age=0; SameSite=Strict';
|
|
62
108
|
}
|
|
63
109
|
/*
|
|
64
110
|
* Keeping this only in memory
|
|
@@ -66,12 +112,20 @@ function eraseCookie(name) {
|
|
|
66
112
|
let refreshTokenStorage = undefined;
|
|
67
113
|
/**
|
|
68
114
|
* <p>Performs client-side authentication.
|
|
69
|
-
* <p>Will redirect to Cognito hosted UI for
|
|
115
|
+
* <p>Will redirect to Cognito hosted UI for signIn if required.
|
|
70
116
|
* <p>Sets client-side cookies and session variables.
|
|
71
117
|
* <p>For more control on what gets persisted on the client-side, use the method <code>getToken</code>.
|
|
72
118
|
*/
|
|
73
119
|
async function performClientAuth(args) {
|
|
120
|
+
if (forceLogout) {
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
74
123
|
const deploymentName = (0, userManagementConfig_1.getDeploymentName)(args.deploymentName);
|
|
124
|
+
// if running on the server, such as for rendering a page for SSR, client auth
|
|
125
|
+
// cannot be performed
|
|
126
|
+
if (typeof window === 'undefined') {
|
|
127
|
+
return;
|
|
128
|
+
}
|
|
75
129
|
const params = new URLSearchParams(window.location.search);
|
|
76
130
|
const code = params.get('code');
|
|
77
131
|
const existingAccessToken = window.sessionStorage.getItem('goldstack_access_token');
|
|
@@ -95,40 +149,56 @@ async function performClientAuth(args) {
|
|
|
95
149
|
idToken: existingIdToken,
|
|
96
150
|
};
|
|
97
151
|
}
|
|
152
|
+
// do not redirect in Jest tests
|
|
153
|
+
if (typeof process !== 'undefined' && typeof jest !== 'undefined') {
|
|
154
|
+
const token = await getAndPersistToken({
|
|
155
|
+
...args,
|
|
156
|
+
code: 'dummy-local-client-code',
|
|
157
|
+
});
|
|
158
|
+
if (!token) {
|
|
159
|
+
return;
|
|
160
|
+
}
|
|
161
|
+
return {
|
|
162
|
+
accessToken: token.accessToken,
|
|
163
|
+
idToken: token.idToken,
|
|
164
|
+
};
|
|
165
|
+
}
|
|
98
166
|
if (code) {
|
|
99
|
-
const token = await
|
|
100
|
-
window.sessionStorage.setItem('goldstack_access_token', token.accessToken);
|
|
101
|
-
window.sessionStorage.setItem('goldstack_id_token', token.idToken);
|
|
102
|
-
refreshTokenStorage = token.refreshToken;
|
|
103
|
-
// only store access and id token in cookie
|
|
104
|
-
setCookie('goldstack_access_token', token.accessToken, 60);
|
|
105
|
-
setCookie('goldstack_id_token', token.idToken, 60);
|
|
167
|
+
const token = await getAndPersistToken({ ...args, code });
|
|
106
168
|
const packageConfig = new utils_package_config_embedded_1.EmbeddedPackageConfig({
|
|
107
169
|
goldstackJson: args.goldstackConfig,
|
|
108
170
|
packageSchema: args.packageSchema,
|
|
109
171
|
});
|
|
110
|
-
|
|
111
|
-
|
|
172
|
+
if (deploymentName === 'local') {
|
|
173
|
+
window.location.href = window.location.href.replace('?code=dummy-local-client-code', '');
|
|
174
|
+
}
|
|
175
|
+
else {
|
|
176
|
+
const deployment = packageConfig.getDeployment(deploymentName);
|
|
177
|
+
window.location.href = deployment.configuration.callbackUrl;
|
|
178
|
+
}
|
|
179
|
+
if (!token) {
|
|
180
|
+
return;
|
|
181
|
+
}
|
|
112
182
|
return {
|
|
113
183
|
accessToken: token.accessToken,
|
|
114
184
|
idToken: token.idToken,
|
|
115
185
|
};
|
|
116
186
|
}
|
|
117
187
|
if (deploymentName === 'local') {
|
|
118
|
-
|
|
188
|
+
if (getMockedUserAccessToken() === undefined) {
|
|
189
|
+
return;
|
|
190
|
+
}
|
|
191
|
+
window.location.href = '?code=dummy-local-client-code';
|
|
119
192
|
return;
|
|
120
193
|
}
|
|
121
194
|
const refreshToken = refreshTokenStorage;
|
|
122
195
|
// if there is a refresh token, try to get a new token with that first before doing a redirect
|
|
123
196
|
if (refreshToken) {
|
|
124
197
|
try {
|
|
125
|
-
const token = await
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
// only store access and id token in cookie
|
|
130
|
-
setCookie('goldstack_access_token', token.accessToken, 60);
|
|
131
|
-
setCookie('goldstack_id_token', token.idToken, 60);
|
|
198
|
+
const token = await getAndPersistToken({ ...args, refreshToken });
|
|
199
|
+
if (!token) {
|
|
200
|
+
return;
|
|
201
|
+
}
|
|
132
202
|
return {
|
|
133
203
|
accessToken: token.accessToken,
|
|
134
204
|
idToken: token.idToken,
|
|
@@ -145,16 +215,42 @@ async function performClientAuth(args) {
|
|
|
145
215
|
return undefined;
|
|
146
216
|
}
|
|
147
217
|
exports.performClientAuth = performClientAuth;
|
|
218
|
+
let forceLogout = false;
|
|
219
|
+
async function getAndPersistToken(args) {
|
|
220
|
+
const token = await getToken({ ...args });
|
|
221
|
+
if (!token) {
|
|
222
|
+
return;
|
|
223
|
+
}
|
|
224
|
+
window.sessionStorage.setItem('goldstack_access_token', token.accessToken);
|
|
225
|
+
window.sessionStorage.setItem('goldstack_id_token', token.idToken);
|
|
226
|
+
refreshTokenStorage = token.refreshToken;
|
|
227
|
+
// only store access and id token in cookie
|
|
228
|
+
setCookie('goldstack_access_token', token.accessToken, 60);
|
|
229
|
+
setCookie('goldstack_id_token', token.idToken, 60);
|
|
230
|
+
return token;
|
|
231
|
+
}
|
|
148
232
|
/**
|
|
149
233
|
* <p>Will clear all cached variables set in <code>performClientAuth</code> and redirect user to the sign in page.
|
|
150
234
|
* <p>If you manage your own client-side config, use <code>getEndpoint</code> to obtain the logout endpoint.
|
|
151
235
|
*/
|
|
152
236
|
async function performLogout(args) {
|
|
237
|
+
if (typeof window === 'undefined') {
|
|
238
|
+
return;
|
|
239
|
+
}
|
|
240
|
+
const wasLoggedIn = window.sessionStorage.getItem('goldstack_access_token');
|
|
153
241
|
refreshTokenStorage = undefined;
|
|
154
242
|
eraseCookie('goldstack_access_token');
|
|
155
243
|
eraseCookie('goldstack_id_token');
|
|
156
244
|
window.sessionStorage.removeItem('goldstack_access_token');
|
|
157
245
|
window.sessionStorage.removeItem('goldstack_id_token');
|
|
246
|
+
forceLogout = true;
|
|
247
|
+
const deploymentName = (0, userManagementConfig_1.getDeploymentName)(args.deploymentName);
|
|
248
|
+
if (deploymentName === 'local') {
|
|
249
|
+
if (wasLoggedIn) {
|
|
250
|
+
window.location.reload();
|
|
251
|
+
}
|
|
252
|
+
return;
|
|
253
|
+
}
|
|
158
254
|
const endpoint = await getEndpoint({ ...args, endpoint: 'logout' });
|
|
159
255
|
window.location.href = endpoint;
|
|
160
256
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templateUserManagement.js","sourceRoot":"","sources":["../../src/templateUserManagement.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gEAA8C;AAE9C,kEAAoD;
|
|
1
|
+
{"version":3,"file":"templateUserManagement.js","sourceRoot":"","sources":["../../src/templateUserManagement.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { CognitoAccessTokenPayload, CognitoIdTokenPayload } from 'aws-jwt-verify/jwt-model';
|
|
2
|
+
export declare function setMockedUserAccessToken(propertiesOrToken: CognitoAccessTokenPayload | object | string | undefined): void;
|
|
3
|
+
export declare function setMockedUserIdToken(propertiesOrToken: CognitoIdTokenPayload | object | string | undefined): void;
|
|
4
|
+
export declare function getMockedUserAccessToken(): string | undefined;
|
|
5
|
+
export declare function getMockedUserIdToken(): string | undefined;
|
|
6
|
+
export declare function parseToken(token: string): any;
|
|
7
|
+
//# sourceMappingURL=userManagementClientMock.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"userManagementClientMock.d.ts","sourceRoot":"","sources":["../../src/userManagementClientMock.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,yBAAyB,EACzB,qBAAqB,EACtB,MAAM,0BAA0B,CAAC;AASlC,wBAAgB,wBAAwB,CACtC,iBAAiB,EAAE,yBAAyB,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,QAkB3E;AAED,wBAAgB,oBAAoB,CAClC,iBAAiB,EAAE,qBAAqB,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,QAkBvE;AA2BD,wBAAgB,wBAAwB,uBAEvC;AAED,wBAAgB,oBAAoB,uBAEnC;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,OAEvC"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* esbuild-ignore server */
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.parseToken = exports.getMockedUserIdToken = exports.getMockedUserAccessToken = exports.setMockedUserIdToken = exports.setMockedUserAccessToken = void 0;
|
|
5
|
+
const userManagementMock_1 = require("./userManagementMock");
|
|
6
|
+
let mockedUserAccessToken = undefined;
|
|
7
|
+
let mockedUserIdToken = undefined;
|
|
8
|
+
function setMockedUserAccessToken(propertiesOrToken) {
|
|
9
|
+
if (!propertiesOrToken) {
|
|
10
|
+
mockedUserAccessToken = undefined;
|
|
11
|
+
return;
|
|
12
|
+
}
|
|
13
|
+
if (typeof propertiesOrToken === 'string') {
|
|
14
|
+
mockedUserAccessToken = propertiesOrToken;
|
|
15
|
+
}
|
|
16
|
+
if (!(typeof propertiesOrToken === 'object')) {
|
|
17
|
+
throw new Error('Properties for access token must be an object if not string token provided.');
|
|
18
|
+
}
|
|
19
|
+
mockedUserAccessToken = generateToken({
|
|
20
|
+
...(0, userManagementMock_1.getMockedAccessTokenProperties)(),
|
|
21
|
+
...propertiesOrToken,
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
exports.setMockedUserAccessToken = setMockedUserAccessToken;
|
|
25
|
+
function setMockedUserIdToken(propertiesOrToken) {
|
|
26
|
+
if (!propertiesOrToken) {
|
|
27
|
+
mockedUserIdToken = undefined;
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
if (typeof propertiesOrToken === 'string') {
|
|
31
|
+
mockedUserIdToken = propertiesOrToken;
|
|
32
|
+
}
|
|
33
|
+
if (!(typeof propertiesOrToken === 'object')) {
|
|
34
|
+
throw new Error('Properties for id token must be an object if not string token provided.');
|
|
35
|
+
}
|
|
36
|
+
mockedUserIdToken = generateToken({
|
|
37
|
+
...(0, userManagementMock_1.getMockedIdTokenProperties)(),
|
|
38
|
+
...propertiesOrToken,
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
exports.setMockedUserIdToken = setMockedUserIdToken;
|
|
42
|
+
function encodeBase64(str) {
|
|
43
|
+
return btoa(str);
|
|
44
|
+
}
|
|
45
|
+
function stringify(obj) {
|
|
46
|
+
return JSON.stringify(obj);
|
|
47
|
+
}
|
|
48
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
49
|
+
function checkSumGen(head, body) {
|
|
50
|
+
return 'vCooWRquc3jzGtERLzDmO1JIjdXSwTVKHbA1T34VR0w';
|
|
51
|
+
}
|
|
52
|
+
function generateToken(properties) {
|
|
53
|
+
let result = '';
|
|
54
|
+
const alg = { alg: 'HS256', typ: 'JWT' };
|
|
55
|
+
const header = encodeBase64(stringify(alg));
|
|
56
|
+
result += header + '.';
|
|
57
|
+
const body = encodeBase64(stringify(properties));
|
|
58
|
+
result += body + '.';
|
|
59
|
+
const checkSum = checkSumGen(header, body);
|
|
60
|
+
result += checkSum;
|
|
61
|
+
return result;
|
|
62
|
+
}
|
|
63
|
+
function getMockedUserAccessToken() {
|
|
64
|
+
return mockedUserAccessToken;
|
|
65
|
+
}
|
|
66
|
+
exports.getMockedUserAccessToken = getMockedUserAccessToken;
|
|
67
|
+
function getMockedUserIdToken() {
|
|
68
|
+
return mockedUserIdToken;
|
|
69
|
+
}
|
|
70
|
+
exports.getMockedUserIdToken = getMockedUserIdToken;
|
|
71
|
+
function parseToken(token) {
|
|
72
|
+
return JSON.parse(atob(token.split('.')[1]));
|
|
73
|
+
}
|
|
74
|
+
exports.parseToken = parseToken;
|
|
75
|
+
setMockedUserAccessToken({});
|
|
76
|
+
setMockedUserIdToken({});
|
|
77
|
+
//# sourceMappingURL=userManagementClientMock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"userManagementClientMock.js","sourceRoot":"","sources":["../../src/userManagementClientMock.ts"],"names":[],"mappings":";AAAA,2BAA2B;;;AAM3B,6DAG8B;AAE9B,IAAI,qBAAqB,GAAuB,SAAS,CAAC;AAC1D,IAAI,iBAAiB,GAAuB,SAAS,CAAC;AAEtD,SAAgB,wBAAwB,CACtC,iBAA0E;IAE1E,IAAI,CAAC,iBAAiB,EAAE;QACtB,qBAAqB,GAAG,SAAS,CAAC;QAClC,OAAO;KACR;IACD,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE;QACzC,qBAAqB,GAAG,iBAAiB,CAAC;KAC3C;IACD,IAAI,CAAC,CAAC,OAAO,iBAAiB,KAAK,QAAQ,CAAC,EAAE;QAC5C,MAAM,IAAI,KAAK,CACb,6EAA6E,CAC9E,CAAC;KACH;IACD,qBAAqB,GAAG,aAAa,CAAC;QACpC,GAAG,IAAA,mDAA8B,GAAE;QACnC,GAAG,iBAAiB;KACrB,CAAC,CAAC;AACL,CAAC;AAnBD,4DAmBC;AAED,SAAgB,oBAAoB,CAClC,iBAAsE;IAEtE,IAAI,CAAC,iBAAiB,EAAE;QACtB,iBAAiB,GAAG,SAAS,CAAC;QAC9B,OAAO;KACR;IACD,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE;QACzC,iBAAiB,GAAG,iBAAiB,CAAC;KACvC;IACD,IAAI,CAAC,CAAC,OAAO,iBAAiB,KAAK,QAAQ,CAAC,EAAE;QAC5C,MAAM,IAAI,KAAK,CACb,yEAAyE,CAC1E,CAAC;KACH;IACD,iBAAiB,GAAG,aAAa,CAAC;QAChC,GAAG,IAAA,+CAA0B,GAAE;QAC/B,GAAG,iBAAiB;KACrB,CAAC,CAAC;AACL,CAAC;AAnBD,oDAmBC;AAED,SAAS,YAAY,CAAC,GAAW;IAC/B,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;AACnB,CAAC;AAED,SAAS,SAAS,CAAC,GAAY;IAC7B,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;AAC7B,CAAC;AAED,6DAA6D;AAC7D,SAAS,WAAW,CAAC,IAAY,EAAE,IAAY;IAC7C,OAAO,6CAA6C,CAAC;AACvD,CAAC;AAED,SAAS,aAAa,CAAC,UAAmB;IACxC,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,MAAM,GAAG,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IACzC,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5C,MAAM,IAAI,MAAM,GAAG,GAAG,CAAC;IACvB,MAAM,IAAI,GAAG,YAAY,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;IACjD,MAAM,IAAI,IAAI,GAAG,GAAG,CAAC;IACrB,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC3C,MAAM,IAAI,QAAQ,CAAC;IACnB,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAgB,wBAAwB;IACtC,OAAO,qBAAqB,CAAC;AAC/B,CAAC;AAFD,4DAEC;AAED,SAAgB,oBAAoB;IAClC,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAFD,oDAEC;AAED,SAAgB,UAAU,CAAC,KAAa;IACtC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC/C,CAAC;AAFD,gCAEC;AAED,wBAAwB,CAAC,EAAE,CAAC,CAAC;AAC7B,oBAAoB,CAAC,EAAE,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"userManagementConfig.d.ts","sourceRoot":"","sources":["../../src/userManagementConfig.ts"],"names":[],"mappings":"AAAA,wBAAgB,iBAAiB,CAAC,cAAc,CAAC,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"userManagementConfig.d.ts","sourceRoot":"","sources":["../../src/userManagementConfig.ts"],"names":[],"mappings":"AAAA,wBAAgB,iBAAiB,CAAC,cAAc,CAAC,EAAE,MAAM,UAkBxD;AAED,wBAAgB,oBAAoB,CAClC,iBAAiB,EAAE,GAAG,EACtB,cAAc,EAAE,MAAM,OAWvB"}
|
|
@@ -8,6 +8,10 @@ function getDeploymentName(deploymentName) {
|
|
|
8
8
|
}
|
|
9
9
|
else {
|
|
10
10
|
deploymentName = window.GOLDSTACK_DEPLOYMENT;
|
|
11
|
+
// fallback for Jest tests
|
|
12
|
+
if (!deploymentName && typeof process !== 'undefined') {
|
|
13
|
+
deploymentName = process.env.GOLDSTACK_DEPLOYMENT;
|
|
14
|
+
}
|
|
11
15
|
}
|
|
12
16
|
}
|
|
13
17
|
if (!deploymentName) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"userManagementConfig.js","sourceRoot":"","sources":["../../src/userManagementConfig.ts"],"names":[],"mappings":";;;AAAA,SAAgB,iBAAiB,CAAC,cAAuB;IACvD,IAAI,CAAC,cAAc,EAAE;QACnB,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;YACjC,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC;SACnD;aAAM;YACL,cAAc,GAAI,MAAc,CAAC,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"userManagementConfig.js","sourceRoot":"","sources":["../../src/userManagementConfig.ts"],"names":[],"mappings":";;;AAAA,SAAgB,iBAAiB,CAAC,cAAuB;IACvD,IAAI,CAAC,cAAc,EAAE;QACnB,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;YACjC,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC;SACnD;aAAM;YACL,cAAc,GAAI,MAAc,CAAC,oBAAoB,CAAC;YACtD,0BAA0B;YAC1B,IAAI,CAAC,cAAc,IAAI,OAAO,OAAO,KAAK,WAAW,EAAE;gBACrD,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC;aACnD;SACF;KACF;IAED,IAAI,CAAC,cAAc,EAAE;QACnB,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;KAC3E;IAED,OAAO,cAAc,CAAC;AACxB,CAAC;AAlBD,8CAkBC;AAED,SAAgB,oBAAoB,CAClC,iBAAsB,EACtB,cAAsB;IAEtB,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,IAAI,CAC7C,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,IAAI,GAAG,cAAc,CAAC,CACnD,CAAC;IACF,IAAI,CAAC,gBAAgB,EAAE;QACrB,MAAM,IAAI,KAAK,CACb,6DAA6D,cAAc,qDAAqD,CACjI,CAAC;KACH;IACD,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAbD,oDAaC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
export declare function getMockedIdTokenProperties(): {
|
|
2
|
+
at_hash: string;
|
|
3
|
+
sub: string;
|
|
4
|
+
email_verified: boolean;
|
|
5
|
+
phone_number_verified: boolean;
|
|
6
|
+
'cognito:preferred_role': string;
|
|
7
|
+
'cognito:roles': never[];
|
|
8
|
+
identities: never[];
|
|
9
|
+
iss: string;
|
|
10
|
+
'cognito:username': string;
|
|
11
|
+
origin_jti: string;
|
|
12
|
+
aud: string;
|
|
13
|
+
event_id: string;
|
|
14
|
+
token_use: string;
|
|
15
|
+
auth_time: number;
|
|
16
|
+
exp: number;
|
|
17
|
+
iat: number;
|
|
18
|
+
jti: string;
|
|
19
|
+
email: string;
|
|
20
|
+
};
|
|
21
|
+
export declare function getMockedAccessTokenProperties(): {
|
|
22
|
+
auth_time: number;
|
|
23
|
+
client_id: string;
|
|
24
|
+
exp: number;
|
|
25
|
+
iat: number;
|
|
26
|
+
iss: string;
|
|
27
|
+
jti: string;
|
|
28
|
+
origin_jti: string;
|
|
29
|
+
scope: string;
|
|
30
|
+
sub: string;
|
|
31
|
+
username: string;
|
|
32
|
+
token_use: string;
|
|
33
|
+
version: number;
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=userManagementMock.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"userManagementMock.d.ts","sourceRoot":"","sources":["../../src/userManagementMock.ts"],"names":[],"mappings":"AAAA,wBAAgB,0BAA0B;;;;;;;;;;;;;;;;;;;EAqBzC;AAED,wBAAgB,8BAA8B;;;;;;;;;;;;;EAe7C"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getMockedAccessTokenProperties = exports.getMockedIdTokenProperties = void 0;
|
|
4
|
+
function getMockedIdTokenProperties() {
|
|
5
|
+
return {
|
|
6
|
+
at_hash: 'NixgfrD9129y_3vcIILTIg',
|
|
7
|
+
sub: '9ad18936-07ce-4c17-8ed9-278fdd35406a',
|
|
8
|
+
email_verified: true,
|
|
9
|
+
phone_number_verified: false,
|
|
10
|
+
'cognito:preferred_role': '',
|
|
11
|
+
'cognito:roles': [],
|
|
12
|
+
identities: [],
|
|
13
|
+
iss: 'https://cognito-idp.us-west-2.amazonaws.com/us-west-2_AnBhna7ph',
|
|
14
|
+
'cognito:username': '9ad18936-07ce-4c17-8ed9-278fdd35406a',
|
|
15
|
+
origin_jti: '72408fc1-2223-4a04-9a45-f10aaefd77ee',
|
|
16
|
+
aud: '7cuiqmug2c50sgqi93igjk16mf',
|
|
17
|
+
event_id: '4dcbf59b-53a8-4674-94c9-81eb2171b66d',
|
|
18
|
+
token_use: 'id',
|
|
19
|
+
auth_time: Math.floor(Date.now() / 1000),
|
|
20
|
+
exp: Math.floor(Date.now() / 1000) + 60 * 60 * 24,
|
|
21
|
+
iat: Math.floor(Date.now() / 1000),
|
|
22
|
+
jti: '17fdf966-9882-4114-8095-ecc9ac19aa7b',
|
|
23
|
+
email: 'dummy@dummy.com',
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
exports.getMockedIdTokenProperties = getMockedIdTokenProperties;
|
|
27
|
+
function getMockedAccessTokenProperties() {
|
|
28
|
+
return {
|
|
29
|
+
auth_time: Math.floor(Date.now() / 1000),
|
|
30
|
+
client_id: '7cuiqmug2c50sgqi93igjk16mf',
|
|
31
|
+
exp: Math.floor(Date.now() / 1000) + 60 * 60 * 24,
|
|
32
|
+
iat: Math.floor(Date.now() / 1000),
|
|
33
|
+
iss: 'https://cognito-idp.us-west-2.amazonaws.com/us-west-2_AnBhna7ph',
|
|
34
|
+
jti: '53b68584-3a9e-4b97-b7de-10924c57d191',
|
|
35
|
+
origin_jti: '4ee806c2-6948-4d57-886b-1e94eb0f5193',
|
|
36
|
+
scope: 'openid email',
|
|
37
|
+
sub: '9ad18936-07ce-4c17-8ed9-278fdd35406a',
|
|
38
|
+
username: '9ad18936-07ce-4c17-8ed9-278fdd35406a',
|
|
39
|
+
token_use: 'access',
|
|
40
|
+
version: 2,
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
exports.getMockedAccessTokenProperties = getMockedAccessTokenProperties;
|
|
44
|
+
//# sourceMappingURL=userManagementMock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"userManagementMock.js","sourceRoot":"","sources":["../../src/userManagementMock.ts"],"names":[],"mappings":";;;AAAA,SAAgB,0BAA0B;IACxC,OAAO;QACL,OAAO,EAAE,wBAAwB;QACjC,GAAG,EAAE,sCAAsC;QAC3C,cAAc,EAAE,IAAI;QACpB,qBAAqB,EAAE,KAAK;QAC5B,wBAAwB,EAAE,EAAE;QAC5B,eAAe,EAAE,EAAE;QACnB,UAAU,EAAE,EAAE;QACd,GAAG,EAAE,iEAAiE;QACtE,kBAAkB,EAAE,sCAAsC;QAC1D,UAAU,EAAE,sCAAsC;QAClD,GAAG,EAAE,4BAA4B;QACjC,QAAQ,EAAE,sCAAsC;QAChD,SAAS,EAAE,IAAI;QACf,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;QACxC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;QACjD,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;QAClC,GAAG,EAAE,sCAAsC;QAC3C,KAAK,EAAE,iBAAiB;KACzB,CAAC;AACJ,CAAC;AArBD,gEAqBC;AAED,SAAgB,8BAA8B;IAC5C,OAAO;QACL,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;QACxC,SAAS,EAAE,4BAA4B;QACvC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;QACjD,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;QAClC,GAAG,EAAE,iEAAiE;QACtE,GAAG,EAAE,sCAAsC;QAC3C,UAAU,EAAE,sCAAsC;QAClD,KAAK,EAAE,cAAc;QACrB,GAAG,EAAE,sCAAsC;QAC3C,QAAQ,EAAE,sCAAsC;QAChD,SAAS,EAAE,QAAQ;QACnB,OAAO,EAAE,CAAC;KACX,CAAC;AACJ,CAAC;AAfD,wEAeC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { CognitoAccessTokenPayload, CognitoIdTokenPayload } from 'aws-jwt-verify/jwt-model';
|
|
2
|
+
import { CognitoManager } from './cognitoTokenVerify';
|
|
3
|
+
export declare function getLocalUserManager(): CognitoManager;
|
|
4
|
+
export declare function setLocalUserManager(userManager: CognitoManager): void;
|
|
5
|
+
export declare function generateTestIdToken(properties: CognitoIdTokenPayload | object): string;
|
|
6
|
+
export declare function generateTestAccessToken(properties: CognitoAccessTokenPayload | object): string;
|
|
7
|
+
export declare class LocalUserManagerImpl implements CognitoManager {
|
|
8
|
+
validateIdToken(idToken: string): Promise<CognitoIdTokenPayload & {
|
|
9
|
+
email: string;
|
|
10
|
+
}>;
|
|
11
|
+
validate(jwtToken: string): Promise<CognitoAccessTokenPayload>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=userManagementServerMock.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"userManagementServerMock.d.ts","sourceRoot":"","sources":["../../src/userManagementServerMock.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,yBAAyB,EACzB,qBAAqB,EACtB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAQtD,wBAAgB,mBAAmB,IAAI,cAAc,CAMpD;AAED,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,cAAc,QAE9D;AA6BD,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,qBAAqB,GAAG,MAAM,GACzC,MAAM,CAMR;AAED,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,yBAAyB,GAAG,MAAM,GAC7C,MAAM,CAMR;AAWD,qBAAa,oBAAqB,YAAW,cAAc;IACnD,eAAe,CACnB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,qBAAqB,GAAG;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAK/C,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,CAAC;CAIrE"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.LocalUserManagerImpl = exports.generateTestAccessToken = exports.generateTestIdToken = exports.setLocalUserManager = exports.getLocalUserManager = void 0;
|
|
7
|
+
/* esbuild-ignore ui */
|
|
8
|
+
const crypto_1 = __importDefault(require("crypto"));
|
|
9
|
+
const userManagementMock_1 = require("./userManagementMock");
|
|
10
|
+
let localCognitoManager;
|
|
11
|
+
function getLocalUserManager() {
|
|
12
|
+
if (localCognitoManager) {
|
|
13
|
+
return localCognitoManager;
|
|
14
|
+
}
|
|
15
|
+
localCognitoManager = new LocalUserManagerImpl();
|
|
16
|
+
return localCognitoManager;
|
|
17
|
+
}
|
|
18
|
+
exports.getLocalUserManager = getLocalUserManager;
|
|
19
|
+
function setLocalUserManager(userManager) {
|
|
20
|
+
localCognitoManager = userManager;
|
|
21
|
+
}
|
|
22
|
+
exports.setLocalUserManager = setLocalUserManager;
|
|
23
|
+
function encodeBase64(str) {
|
|
24
|
+
return Buffer.from(str).toString('base64');
|
|
25
|
+
}
|
|
26
|
+
function stringify(obj) {
|
|
27
|
+
return JSON.stringify(obj);
|
|
28
|
+
}
|
|
29
|
+
function checkSumGen(head, body) {
|
|
30
|
+
const checkSumStr = head + '.' + body;
|
|
31
|
+
const hash = crypto_1.default.createHmac('sha256', 'dummy-key-for-local-testing');
|
|
32
|
+
const checkSum = hash.update(checkSumStr).digest('base64');
|
|
33
|
+
return checkSum;
|
|
34
|
+
}
|
|
35
|
+
function generateToken(properties) {
|
|
36
|
+
let result = '';
|
|
37
|
+
const alg = { alg: 'HS256', typ: 'JWT' };
|
|
38
|
+
const header = encodeBase64(stringify(alg));
|
|
39
|
+
result += header + '.';
|
|
40
|
+
const body = encodeBase64(stringify(properties));
|
|
41
|
+
result += body + '.';
|
|
42
|
+
const checkSum = checkSumGen(header, body);
|
|
43
|
+
result += checkSum;
|
|
44
|
+
return result;
|
|
45
|
+
}
|
|
46
|
+
function generateTestIdToken(properties) {
|
|
47
|
+
const data = {
|
|
48
|
+
...(0, userManagementMock_1.getMockedIdTokenProperties)(),
|
|
49
|
+
...properties,
|
|
50
|
+
};
|
|
51
|
+
return generateToken(data);
|
|
52
|
+
}
|
|
53
|
+
exports.generateTestIdToken = generateTestIdToken;
|
|
54
|
+
function generateTestAccessToken(properties) {
|
|
55
|
+
const data = {
|
|
56
|
+
...(0, userManagementMock_1.getMockedAccessTokenProperties)(),
|
|
57
|
+
...properties,
|
|
58
|
+
};
|
|
59
|
+
return generateToken(data);
|
|
60
|
+
}
|
|
61
|
+
exports.generateTestAccessToken = generateTestAccessToken;
|
|
62
|
+
function assertNotInProd() {
|
|
63
|
+
if (process.env.LAMBDA_TASK_ROOT) {
|
|
64
|
+
console.warn('JWT token validated using mock validator. ' +
|
|
65
|
+
'This validator does not verify if the token is verified correctly.');
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
class LocalUserManagerImpl {
|
|
69
|
+
async validateIdToken(idToken) {
|
|
70
|
+
assertNotInProd();
|
|
71
|
+
return JSON.parse(Buffer.from(idToken.split('.')[1], 'base64').toString());
|
|
72
|
+
}
|
|
73
|
+
async validate(jwtToken) {
|
|
74
|
+
assertNotInProd();
|
|
75
|
+
return JSON.parse(Buffer.from(jwtToken.split('.')[1], 'base64').toString());
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
exports.LocalUserManagerImpl = LocalUserManagerImpl;
|
|
79
|
+
//# sourceMappingURL=userManagementServerMock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"userManagementServerMock.js","sourceRoot":"","sources":["../../src/userManagementServerMock.ts"],"names":[],"mappings":"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"}
|