@aws-amplify/auth 6.10.0 → 6.10.1-graphql-data-ka.8391522.0
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/cjs/providers/cognito/tokenProvider/TokenStore.js +9 -1
- package/dist/cjs/providers/cognito/tokenProvider/TokenStore.js.map +1 -1
- package/dist/esm/providers/cognito/tokenProvider/TokenStore.mjs +9 -1
- package/dist/esm/providers/cognito/tokenProvider/TokenStore.mjs.map +1 -1
- package/package.json +106 -106
- package/src/providers/cognito/tokenProvider/TokenStore.ts +8 -2
|
@@ -64,7 +64,6 @@ class DefaultTokenStore {
|
|
|
64
64
|
}
|
|
65
65
|
async storeTokens(tokens) {
|
|
66
66
|
(0, errorHelpers_1.assert)(tokens !== undefined, errorHelpers_1.TokenProviderErrorCode.InvalidAuthTokens);
|
|
67
|
-
await this.clearTokens();
|
|
68
67
|
const lastAuthUser = tokens.username;
|
|
69
68
|
await this.getKeyValueStorage().setItem(this.getLastAuthUserKey(), lastAuthUser);
|
|
70
69
|
const authKeys = await this.getAuthKeys();
|
|
@@ -72,9 +71,15 @@ class DefaultTokenStore {
|
|
|
72
71
|
if (tokens.idToken) {
|
|
73
72
|
await this.getKeyValueStorage().setItem(authKeys.idToken, tokens.idToken.toString());
|
|
74
73
|
}
|
|
74
|
+
else {
|
|
75
|
+
await this.getKeyValueStorage().removeItem(authKeys.idToken);
|
|
76
|
+
}
|
|
75
77
|
if (tokens.refreshToken) {
|
|
76
78
|
await this.getKeyValueStorage().setItem(authKeys.refreshToken, tokens.refreshToken);
|
|
77
79
|
}
|
|
80
|
+
else {
|
|
81
|
+
await this.getKeyValueStorage().removeItem(authKeys.refreshToken);
|
|
82
|
+
}
|
|
78
83
|
if (tokens.deviceMetadata) {
|
|
79
84
|
if (tokens.deviceMetadata.deviceKey) {
|
|
80
85
|
await this.getKeyValueStorage().setItem(authKeys.deviceKey, tokens.deviceMetadata.deviceKey);
|
|
@@ -87,6 +92,9 @@ class DefaultTokenStore {
|
|
|
87
92
|
if (tokens.signInDetails) {
|
|
88
93
|
await this.getKeyValueStorage().setItem(authKeys.signInDetails, JSON.stringify(tokens.signInDetails));
|
|
89
94
|
}
|
|
95
|
+
else {
|
|
96
|
+
await this.getKeyValueStorage().removeItem(authKeys.signInDetails);
|
|
97
|
+
}
|
|
90
98
|
await this.getKeyValueStorage().setItem(authKeys.clockDrift, `${tokens.clockDrift}`);
|
|
91
99
|
}
|
|
92
100
|
async clearTokens() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TokenStore.js","sources":["../../../../../src/providers/cognito/tokenProvider/TokenStore.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getAuthStorageKeys = exports.createKeysForAuthStorage = exports.DefaultTokenStore = void 0;\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst AuthError_1 = require(\"../../../errors/AuthError\");\nconst types_1 = require(\"./types\");\nconst errorHelpers_1 = require(\"./errorHelpers\");\nclass DefaultTokenStore {\n constructor() {\n this.name = 'CognitoIdentityServiceProvider'; // To be backwards compatible with V5, no migration needed\n }\n getKeyValueStorage() {\n if (!this.keyValueStorage) {\n throw new AuthError_1.AuthError({\n name: 'KeyValueStorageNotFoundException',\n message: 'KeyValueStorage was not found in TokenStore',\n });\n }\n return this.keyValueStorage;\n }\n setKeyValueStorage(keyValueStorage) {\n this.keyValueStorage = keyValueStorage;\n }\n setAuthConfig(authConfig) {\n this.authConfig = authConfig;\n }\n async loadTokens() {\n // TODO(v6): migration logic should be here\n // Reading V5 tokens old format\n try {\n const authKeys = await this.getAuthKeys();\n const accessTokenString = await this.getKeyValueStorage().getItem(authKeys.accessToken);\n if (!accessTokenString) {\n throw new AuthError_1.AuthError({\n name: 'NoSessionFoundException',\n message: 'Auth session was not found. Make sure to call signIn.',\n });\n }\n const accessToken = (0, utils_1.decodeJWT)(accessTokenString);\n const itString = await this.getKeyValueStorage().getItem(authKeys.idToken);\n const idToken = itString ? (0, utils_1.decodeJWT)(itString) : undefined;\n const refreshToken = (await this.getKeyValueStorage().getItem(authKeys.refreshToken)) ??\n undefined;\n const clockDriftString = (await this.getKeyValueStorage().getItem(authKeys.clockDrift)) ?? '0';\n const clockDrift = Number.parseInt(clockDriftString);\n const signInDetails = await this.getKeyValueStorage().getItem(authKeys.signInDetails);\n const tokens = {\n accessToken,\n idToken,\n refreshToken,\n deviceMetadata: (await this.getDeviceMetadata()) ?? undefined,\n clockDrift,\n username: await this.getLastAuthUser(),\n };\n if (signInDetails) {\n tokens.signInDetails = JSON.parse(signInDetails);\n }\n return tokens;\n }\n catch (err) {\n return null;\n }\n }\n async storeTokens(tokens) {\n (0, errorHelpers_1.assert)(tokens !== undefined, errorHelpers_1.TokenProviderErrorCode.InvalidAuthTokens);\n await this.clearTokens();\n const lastAuthUser = tokens.username;\n await this.getKeyValueStorage().setItem(this.getLastAuthUserKey(), lastAuthUser);\n const authKeys = await this.getAuthKeys();\n await this.getKeyValueStorage().setItem(authKeys.accessToken, tokens.accessToken.toString());\n if (tokens.idToken) {\n await this.getKeyValueStorage().setItem(authKeys.idToken, tokens.idToken.toString());\n }\n if (tokens.refreshToken) {\n await this.getKeyValueStorage().setItem(authKeys.refreshToken, tokens.refreshToken);\n }\n if (tokens.deviceMetadata) {\n if (tokens.deviceMetadata.deviceKey) {\n await this.getKeyValueStorage().setItem(authKeys.deviceKey, tokens.deviceMetadata.deviceKey);\n }\n if (tokens.deviceMetadata.deviceGroupKey) {\n await this.getKeyValueStorage().setItem(authKeys.deviceGroupKey, tokens.deviceMetadata.deviceGroupKey);\n }\n await this.getKeyValueStorage().setItem(authKeys.randomPasswordKey, tokens.deviceMetadata.randomPassword);\n }\n if (tokens.signInDetails) {\n await this.getKeyValueStorage().setItem(authKeys.signInDetails, JSON.stringify(tokens.signInDetails));\n }\n await this.getKeyValueStorage().setItem(authKeys.clockDrift, `${tokens.clockDrift}`);\n }\n async clearTokens() {\n const authKeys = await this.getAuthKeys();\n // Not calling clear because it can remove data that is not managed by AuthTokenStore\n await Promise.all([\n this.getKeyValueStorage().removeItem(authKeys.accessToken),\n this.getKeyValueStorage().removeItem(authKeys.idToken),\n this.getKeyValueStorage().removeItem(authKeys.clockDrift),\n this.getKeyValueStorage().removeItem(authKeys.refreshToken),\n this.getKeyValueStorage().removeItem(authKeys.signInDetails),\n this.getKeyValueStorage().removeItem(this.getLastAuthUserKey()),\n this.getKeyValueStorage().removeItem(authKeys.oauthMetadata),\n ]);\n }\n async getDeviceMetadata(username) {\n const authKeys = await this.getAuthKeys(username);\n const deviceKey = await this.getKeyValueStorage().getItem(authKeys.deviceKey);\n const deviceGroupKey = await this.getKeyValueStorage().getItem(authKeys.deviceGroupKey);\n const randomPassword = await this.getKeyValueStorage().getItem(authKeys.randomPasswordKey);\n return randomPassword && deviceGroupKey && deviceKey\n ? {\n deviceKey,\n deviceGroupKey,\n randomPassword,\n }\n : null;\n }\n async clearDeviceMetadata(username) {\n const authKeys = await this.getAuthKeys(username);\n await Promise.all([\n this.getKeyValueStorage().removeItem(authKeys.deviceKey),\n this.getKeyValueStorage().removeItem(authKeys.deviceGroupKey),\n this.getKeyValueStorage().removeItem(authKeys.randomPasswordKey),\n ]);\n }\n async getAuthKeys(username) {\n (0, utils_1.assertTokenProviderConfig)(this.authConfig?.Cognito);\n const lastAuthUser = username ?? (await this.getLastAuthUser());\n return (0, exports.createKeysForAuthStorage)(this.name, `${this.authConfig.Cognito.userPoolClientId}.${lastAuthUser}`);\n }\n getLastAuthUserKey() {\n (0, utils_1.assertTokenProviderConfig)(this.authConfig?.Cognito);\n const identifier = this.authConfig.Cognito.userPoolClientId;\n return `${this.name}.${identifier}.LastAuthUser`;\n }\n async getLastAuthUser() {\n const lastAuthUser = (await this.getKeyValueStorage().getItem(this.getLastAuthUserKey())) ??\n 'username';\n return lastAuthUser;\n }\n async setOAuthMetadata(metadata) {\n const { oauthMetadata: oauthMetadataKey } = await this.getAuthKeys();\n await this.getKeyValueStorage().setItem(oauthMetadataKey, JSON.stringify(metadata));\n }\n async getOAuthMetadata() {\n const { oauthMetadata: oauthMetadataKey } = await this.getAuthKeys();\n const oauthMetadata = await this.getKeyValueStorage().getItem(oauthMetadataKey);\n return oauthMetadata && JSON.parse(oauthMetadata);\n }\n}\nexports.DefaultTokenStore = DefaultTokenStore;\nconst createKeysForAuthStorage = (provider, identifier) => {\n return getAuthStorageKeys(types_1.AuthTokenStorageKeys)(`${provider}`, identifier);\n};\nexports.createKeysForAuthStorage = createKeysForAuthStorage;\nfunction getAuthStorageKeys(authKeys) {\n const keys = Object.values({ ...authKeys });\n return (prefix, identifier) => keys.reduce((acc, authKey) => ({\n ...acc,\n [authKey]: `${prefix}.${identifier}.${authKey}`,\n }), {});\n}\nexports.getAuthStorageKeys = getAuthStorageKeys;\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TokenStore.js","sources":["../../../../../src/providers/cognito/tokenProvider/TokenStore.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getAuthStorageKeys = exports.createKeysForAuthStorage = exports.DefaultTokenStore = void 0;\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst AuthError_1 = require(\"../../../errors/AuthError\");\nconst types_1 = require(\"./types\");\nconst errorHelpers_1 = require(\"./errorHelpers\");\nclass DefaultTokenStore {\n constructor() {\n this.name = 'CognitoIdentityServiceProvider'; // To be backwards compatible with V5, no migration needed\n }\n getKeyValueStorage() {\n if (!this.keyValueStorage) {\n throw new AuthError_1.AuthError({\n name: 'KeyValueStorageNotFoundException',\n message: 'KeyValueStorage was not found in TokenStore',\n });\n }\n return this.keyValueStorage;\n }\n setKeyValueStorage(keyValueStorage) {\n this.keyValueStorage = keyValueStorage;\n }\n setAuthConfig(authConfig) {\n this.authConfig = authConfig;\n }\n async loadTokens() {\n // TODO(v6): migration logic should be here\n // Reading V5 tokens old format\n try {\n const authKeys = await this.getAuthKeys();\n const accessTokenString = await this.getKeyValueStorage().getItem(authKeys.accessToken);\n if (!accessTokenString) {\n throw new AuthError_1.AuthError({\n name: 'NoSessionFoundException',\n message: 'Auth session was not found. Make sure to call signIn.',\n });\n }\n const accessToken = (0, utils_1.decodeJWT)(accessTokenString);\n const itString = await this.getKeyValueStorage().getItem(authKeys.idToken);\n const idToken = itString ? (0, utils_1.decodeJWT)(itString) : undefined;\n const refreshToken = (await this.getKeyValueStorage().getItem(authKeys.refreshToken)) ??\n undefined;\n const clockDriftString = (await this.getKeyValueStorage().getItem(authKeys.clockDrift)) ?? '0';\n const clockDrift = Number.parseInt(clockDriftString);\n const signInDetails = await this.getKeyValueStorage().getItem(authKeys.signInDetails);\n const tokens = {\n accessToken,\n idToken,\n refreshToken,\n deviceMetadata: (await this.getDeviceMetadata()) ?? undefined,\n clockDrift,\n username: await this.getLastAuthUser(),\n };\n if (signInDetails) {\n tokens.signInDetails = JSON.parse(signInDetails);\n }\n return tokens;\n }\n catch (err) {\n return null;\n }\n }\n async storeTokens(tokens) {\n (0, errorHelpers_1.assert)(tokens !== undefined, errorHelpers_1.TokenProviderErrorCode.InvalidAuthTokens);\n const lastAuthUser = tokens.username;\n await this.getKeyValueStorage().setItem(this.getLastAuthUserKey(), lastAuthUser);\n const authKeys = await this.getAuthKeys();\n await this.getKeyValueStorage().setItem(authKeys.accessToken, tokens.accessToken.toString());\n if (tokens.idToken) {\n await this.getKeyValueStorage().setItem(authKeys.idToken, tokens.idToken.toString());\n }\n else {\n await this.getKeyValueStorage().removeItem(authKeys.idToken);\n }\n if (tokens.refreshToken) {\n await this.getKeyValueStorage().setItem(authKeys.refreshToken, tokens.refreshToken);\n }\n else {\n await this.getKeyValueStorage().removeItem(authKeys.refreshToken);\n }\n if (tokens.deviceMetadata) {\n if (tokens.deviceMetadata.deviceKey) {\n await this.getKeyValueStorage().setItem(authKeys.deviceKey, tokens.deviceMetadata.deviceKey);\n }\n if (tokens.deviceMetadata.deviceGroupKey) {\n await this.getKeyValueStorage().setItem(authKeys.deviceGroupKey, tokens.deviceMetadata.deviceGroupKey);\n }\n await this.getKeyValueStorage().setItem(authKeys.randomPasswordKey, tokens.deviceMetadata.randomPassword);\n }\n if (tokens.signInDetails) {\n await this.getKeyValueStorage().setItem(authKeys.signInDetails, JSON.stringify(tokens.signInDetails));\n }\n else {\n await this.getKeyValueStorage().removeItem(authKeys.signInDetails);\n }\n await this.getKeyValueStorage().setItem(authKeys.clockDrift, `${tokens.clockDrift}`);\n }\n async clearTokens() {\n const authKeys = await this.getAuthKeys();\n // Not calling clear because it can remove data that is not managed by AuthTokenStore\n await Promise.all([\n this.getKeyValueStorage().removeItem(authKeys.accessToken),\n this.getKeyValueStorage().removeItem(authKeys.idToken),\n this.getKeyValueStorage().removeItem(authKeys.clockDrift),\n this.getKeyValueStorage().removeItem(authKeys.refreshToken),\n this.getKeyValueStorage().removeItem(authKeys.signInDetails),\n this.getKeyValueStorage().removeItem(this.getLastAuthUserKey()),\n this.getKeyValueStorage().removeItem(authKeys.oauthMetadata),\n ]);\n }\n async getDeviceMetadata(username) {\n const authKeys = await this.getAuthKeys(username);\n const deviceKey = await this.getKeyValueStorage().getItem(authKeys.deviceKey);\n const deviceGroupKey = await this.getKeyValueStorage().getItem(authKeys.deviceGroupKey);\n const randomPassword = await this.getKeyValueStorage().getItem(authKeys.randomPasswordKey);\n return randomPassword && deviceGroupKey && deviceKey\n ? {\n deviceKey,\n deviceGroupKey,\n randomPassword,\n }\n : null;\n }\n async clearDeviceMetadata(username) {\n const authKeys = await this.getAuthKeys(username);\n await Promise.all([\n this.getKeyValueStorage().removeItem(authKeys.deviceKey),\n this.getKeyValueStorage().removeItem(authKeys.deviceGroupKey),\n this.getKeyValueStorage().removeItem(authKeys.randomPasswordKey),\n ]);\n }\n async getAuthKeys(username) {\n (0, utils_1.assertTokenProviderConfig)(this.authConfig?.Cognito);\n const lastAuthUser = username ?? (await this.getLastAuthUser());\n return (0, exports.createKeysForAuthStorage)(this.name, `${this.authConfig.Cognito.userPoolClientId}.${lastAuthUser}`);\n }\n getLastAuthUserKey() {\n (0, utils_1.assertTokenProviderConfig)(this.authConfig?.Cognito);\n const identifier = this.authConfig.Cognito.userPoolClientId;\n return `${this.name}.${identifier}.LastAuthUser`;\n }\n async getLastAuthUser() {\n const lastAuthUser = (await this.getKeyValueStorage().getItem(this.getLastAuthUserKey())) ??\n 'username';\n return lastAuthUser;\n }\n async setOAuthMetadata(metadata) {\n const { oauthMetadata: oauthMetadataKey } = await this.getAuthKeys();\n await this.getKeyValueStorage().setItem(oauthMetadataKey, JSON.stringify(metadata));\n }\n async getOAuthMetadata() {\n const { oauthMetadata: oauthMetadataKey } = await this.getAuthKeys();\n const oauthMetadata = await this.getKeyValueStorage().getItem(oauthMetadataKey);\n return oauthMetadata && JSON.parse(oauthMetadata);\n }\n}\nexports.DefaultTokenStore = DefaultTokenStore;\nconst createKeysForAuthStorage = (provider, identifier) => {\n return getAuthStorageKeys(types_1.AuthTokenStorageKeys)(`${provider}`, identifier);\n};\nexports.createKeysForAuthStorage = createKeysForAuthStorage;\nfunction getAuthStorageKeys(authKeys) {\n const keys = Object.values({ ...authKeys });\n return (prefix, identifier) => keys.reduce((acc, authKey) => ({\n ...acc,\n [authKey]: `${prefix}.${identifier}.${authKey}`,\n }), {});\n}\nexports.getAuthStorageKeys = getAuthStorageKeys;\n"],"names":[],"mappings":"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"}
|
|
@@ -61,7 +61,6 @@ class DefaultTokenStore {
|
|
|
61
61
|
}
|
|
62
62
|
async storeTokens(tokens) {
|
|
63
63
|
assert(tokens !== undefined, TokenProviderErrorCode.InvalidAuthTokens);
|
|
64
|
-
await this.clearTokens();
|
|
65
64
|
const lastAuthUser = tokens.username;
|
|
66
65
|
await this.getKeyValueStorage().setItem(this.getLastAuthUserKey(), lastAuthUser);
|
|
67
66
|
const authKeys = await this.getAuthKeys();
|
|
@@ -69,9 +68,15 @@ class DefaultTokenStore {
|
|
|
69
68
|
if (tokens.idToken) {
|
|
70
69
|
await this.getKeyValueStorage().setItem(authKeys.idToken, tokens.idToken.toString());
|
|
71
70
|
}
|
|
71
|
+
else {
|
|
72
|
+
await this.getKeyValueStorage().removeItem(authKeys.idToken);
|
|
73
|
+
}
|
|
72
74
|
if (tokens.refreshToken) {
|
|
73
75
|
await this.getKeyValueStorage().setItem(authKeys.refreshToken, tokens.refreshToken);
|
|
74
76
|
}
|
|
77
|
+
else {
|
|
78
|
+
await this.getKeyValueStorage().removeItem(authKeys.refreshToken);
|
|
79
|
+
}
|
|
75
80
|
if (tokens.deviceMetadata) {
|
|
76
81
|
if (tokens.deviceMetadata.deviceKey) {
|
|
77
82
|
await this.getKeyValueStorage().setItem(authKeys.deviceKey, tokens.deviceMetadata.deviceKey);
|
|
@@ -84,6 +89,9 @@ class DefaultTokenStore {
|
|
|
84
89
|
if (tokens.signInDetails) {
|
|
85
90
|
await this.getKeyValueStorage().setItem(authKeys.signInDetails, JSON.stringify(tokens.signInDetails));
|
|
86
91
|
}
|
|
92
|
+
else {
|
|
93
|
+
await this.getKeyValueStorage().removeItem(authKeys.signInDetails);
|
|
94
|
+
}
|
|
87
95
|
await this.getKeyValueStorage().setItem(authKeys.clockDrift, `${tokens.clockDrift}`);
|
|
88
96
|
}
|
|
89
97
|
async clearTokens() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TokenStore.mjs","sources":["../../../../../src/providers/cognito/tokenProvider/TokenStore.ts"],"sourcesContent":["import { assertTokenProviderConfig, decodeJWT, } from '@aws-amplify/core/internals/utils';\nimport { AuthError } from '../../../errors/AuthError';\nimport { AuthTokenStorageKeys, } from './types';\nimport { TokenProviderErrorCode, assert } from './errorHelpers';\nexport class DefaultTokenStore {\n constructor() {\n this.name = 'CognitoIdentityServiceProvider'; // To be backwards compatible with V5, no migration needed\n }\n getKeyValueStorage() {\n if (!this.keyValueStorage) {\n throw new AuthError({\n name: 'KeyValueStorageNotFoundException',\n message: 'KeyValueStorage was not found in TokenStore',\n });\n }\n return this.keyValueStorage;\n }\n setKeyValueStorage(keyValueStorage) {\n this.keyValueStorage = keyValueStorage;\n }\n setAuthConfig(authConfig) {\n this.authConfig = authConfig;\n }\n async loadTokens() {\n // TODO(v6): migration logic should be here\n // Reading V5 tokens old format\n try {\n const authKeys = await this.getAuthKeys();\n const accessTokenString = await this.getKeyValueStorage().getItem(authKeys.accessToken);\n if (!accessTokenString) {\n throw new AuthError({\n name: 'NoSessionFoundException',\n message: 'Auth session was not found. Make sure to call signIn.',\n });\n }\n const accessToken = decodeJWT(accessTokenString);\n const itString = await this.getKeyValueStorage().getItem(authKeys.idToken);\n const idToken = itString ? decodeJWT(itString) : undefined;\n const refreshToken = (await this.getKeyValueStorage().getItem(authKeys.refreshToken)) ??\n undefined;\n const clockDriftString = (await this.getKeyValueStorage().getItem(authKeys.clockDrift)) ?? '0';\n const clockDrift = Number.parseInt(clockDriftString);\n const signInDetails = await this.getKeyValueStorage().getItem(authKeys.signInDetails);\n const tokens = {\n accessToken,\n idToken,\n refreshToken,\n deviceMetadata: (await this.getDeviceMetadata()) ?? undefined,\n clockDrift,\n username: await this.getLastAuthUser(),\n };\n if (signInDetails) {\n tokens.signInDetails = JSON.parse(signInDetails);\n }\n return tokens;\n }\n catch (err) {\n return null;\n }\n }\n async storeTokens(tokens) {\n assert(tokens !== undefined, TokenProviderErrorCode.InvalidAuthTokens);\n await this.clearTokens();\n const lastAuthUser = tokens.username;\n await this.getKeyValueStorage().setItem(this.getLastAuthUserKey(), lastAuthUser);\n const authKeys = await this.getAuthKeys();\n await this.getKeyValueStorage().setItem(authKeys.accessToken, tokens.accessToken.toString());\n if (tokens.idToken) {\n await this.getKeyValueStorage().setItem(authKeys.idToken, tokens.idToken.toString());\n }\n if (tokens.refreshToken) {\n await this.getKeyValueStorage().setItem(authKeys.refreshToken, tokens.refreshToken);\n }\n if (tokens.deviceMetadata) {\n if (tokens.deviceMetadata.deviceKey) {\n await this.getKeyValueStorage().setItem(authKeys.deviceKey, tokens.deviceMetadata.deviceKey);\n }\n if (tokens.deviceMetadata.deviceGroupKey) {\n await this.getKeyValueStorage().setItem(authKeys.deviceGroupKey, tokens.deviceMetadata.deviceGroupKey);\n }\n await this.getKeyValueStorage().setItem(authKeys.randomPasswordKey, tokens.deviceMetadata.randomPassword);\n }\n if (tokens.signInDetails) {\n await this.getKeyValueStorage().setItem(authKeys.signInDetails, JSON.stringify(tokens.signInDetails));\n }\n await this.getKeyValueStorage().setItem(authKeys.clockDrift, `${tokens.clockDrift}`);\n }\n async clearTokens() {\n const authKeys = await this.getAuthKeys();\n // Not calling clear because it can remove data that is not managed by AuthTokenStore\n await Promise.all([\n this.getKeyValueStorage().removeItem(authKeys.accessToken),\n this.getKeyValueStorage().removeItem(authKeys.idToken),\n this.getKeyValueStorage().removeItem(authKeys.clockDrift),\n this.getKeyValueStorage().removeItem(authKeys.refreshToken),\n this.getKeyValueStorage().removeItem(authKeys.signInDetails),\n this.getKeyValueStorage().removeItem(this.getLastAuthUserKey()),\n this.getKeyValueStorage().removeItem(authKeys.oauthMetadata),\n ]);\n }\n async getDeviceMetadata(username) {\n const authKeys = await this.getAuthKeys(username);\n const deviceKey = await this.getKeyValueStorage().getItem(authKeys.deviceKey);\n const deviceGroupKey = await this.getKeyValueStorage().getItem(authKeys.deviceGroupKey);\n const randomPassword = await this.getKeyValueStorage().getItem(authKeys.randomPasswordKey);\n return randomPassword && deviceGroupKey && deviceKey\n ? {\n deviceKey,\n deviceGroupKey,\n randomPassword,\n }\n : null;\n }\n async clearDeviceMetadata(username) {\n const authKeys = await this.getAuthKeys(username);\n await Promise.all([\n this.getKeyValueStorage().removeItem(authKeys.deviceKey),\n this.getKeyValueStorage().removeItem(authKeys.deviceGroupKey),\n this.getKeyValueStorage().removeItem(authKeys.randomPasswordKey),\n ]);\n }\n async getAuthKeys(username) {\n assertTokenProviderConfig(this.authConfig?.Cognito);\n const lastAuthUser = username ?? (await this.getLastAuthUser());\n return createKeysForAuthStorage(this.name, `${this.authConfig.Cognito.userPoolClientId}.${lastAuthUser}`);\n }\n getLastAuthUserKey() {\n assertTokenProviderConfig(this.authConfig?.Cognito);\n const identifier = this.authConfig.Cognito.userPoolClientId;\n return `${this.name}.${identifier}.LastAuthUser`;\n }\n async getLastAuthUser() {\n const lastAuthUser = (await this.getKeyValueStorage().getItem(this.getLastAuthUserKey())) ??\n 'username';\n return lastAuthUser;\n }\n async setOAuthMetadata(metadata) {\n const { oauthMetadata: oauthMetadataKey } = await this.getAuthKeys();\n await this.getKeyValueStorage().setItem(oauthMetadataKey, JSON.stringify(metadata));\n }\n async getOAuthMetadata() {\n const { oauthMetadata: oauthMetadataKey } = await this.getAuthKeys();\n const oauthMetadata = await this.getKeyValueStorage().getItem(oauthMetadataKey);\n return oauthMetadata && JSON.parse(oauthMetadata);\n }\n}\nexport const createKeysForAuthStorage = (provider, identifier) => {\n return getAuthStorageKeys(AuthTokenStorageKeys)(`${provider}`, identifier);\n};\nexport function getAuthStorageKeys(authKeys) {\n const keys = Object.values({ ...authKeys });\n return (prefix, identifier) => keys.reduce((acc, authKey) => ({\n ...acc,\n [authKey]: `${prefix}.${identifier}.${authKey}`,\n }), {});\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TokenStore.mjs","sources":["../../../../../src/providers/cognito/tokenProvider/TokenStore.ts"],"sourcesContent":["import { assertTokenProviderConfig, decodeJWT, } from '@aws-amplify/core/internals/utils';\nimport { AuthError } from '../../../errors/AuthError';\nimport { AuthTokenStorageKeys, } from './types';\nimport { TokenProviderErrorCode, assert } from './errorHelpers';\nexport class DefaultTokenStore {\n constructor() {\n this.name = 'CognitoIdentityServiceProvider'; // To be backwards compatible with V5, no migration needed\n }\n getKeyValueStorage() {\n if (!this.keyValueStorage) {\n throw new AuthError({\n name: 'KeyValueStorageNotFoundException',\n message: 'KeyValueStorage was not found in TokenStore',\n });\n }\n return this.keyValueStorage;\n }\n setKeyValueStorage(keyValueStorage) {\n this.keyValueStorage = keyValueStorage;\n }\n setAuthConfig(authConfig) {\n this.authConfig = authConfig;\n }\n async loadTokens() {\n // TODO(v6): migration logic should be here\n // Reading V5 tokens old format\n try {\n const authKeys = await this.getAuthKeys();\n const accessTokenString = await this.getKeyValueStorage().getItem(authKeys.accessToken);\n if (!accessTokenString) {\n throw new AuthError({\n name: 'NoSessionFoundException',\n message: 'Auth session was not found. Make sure to call signIn.',\n });\n }\n const accessToken = decodeJWT(accessTokenString);\n const itString = await this.getKeyValueStorage().getItem(authKeys.idToken);\n const idToken = itString ? decodeJWT(itString) : undefined;\n const refreshToken = (await this.getKeyValueStorage().getItem(authKeys.refreshToken)) ??\n undefined;\n const clockDriftString = (await this.getKeyValueStorage().getItem(authKeys.clockDrift)) ?? '0';\n const clockDrift = Number.parseInt(clockDriftString);\n const signInDetails = await this.getKeyValueStorage().getItem(authKeys.signInDetails);\n const tokens = {\n accessToken,\n idToken,\n refreshToken,\n deviceMetadata: (await this.getDeviceMetadata()) ?? undefined,\n clockDrift,\n username: await this.getLastAuthUser(),\n };\n if (signInDetails) {\n tokens.signInDetails = JSON.parse(signInDetails);\n }\n return tokens;\n }\n catch (err) {\n return null;\n }\n }\n async storeTokens(tokens) {\n assert(tokens !== undefined, TokenProviderErrorCode.InvalidAuthTokens);\n const lastAuthUser = tokens.username;\n await this.getKeyValueStorage().setItem(this.getLastAuthUserKey(), lastAuthUser);\n const authKeys = await this.getAuthKeys();\n await this.getKeyValueStorage().setItem(authKeys.accessToken, tokens.accessToken.toString());\n if (tokens.idToken) {\n await this.getKeyValueStorage().setItem(authKeys.idToken, tokens.idToken.toString());\n }\n else {\n await this.getKeyValueStorage().removeItem(authKeys.idToken);\n }\n if (tokens.refreshToken) {\n await this.getKeyValueStorage().setItem(authKeys.refreshToken, tokens.refreshToken);\n }\n else {\n await this.getKeyValueStorage().removeItem(authKeys.refreshToken);\n }\n if (tokens.deviceMetadata) {\n if (tokens.deviceMetadata.deviceKey) {\n await this.getKeyValueStorage().setItem(authKeys.deviceKey, tokens.deviceMetadata.deviceKey);\n }\n if (tokens.deviceMetadata.deviceGroupKey) {\n await this.getKeyValueStorage().setItem(authKeys.deviceGroupKey, tokens.deviceMetadata.deviceGroupKey);\n }\n await this.getKeyValueStorage().setItem(authKeys.randomPasswordKey, tokens.deviceMetadata.randomPassword);\n }\n if (tokens.signInDetails) {\n await this.getKeyValueStorage().setItem(authKeys.signInDetails, JSON.stringify(tokens.signInDetails));\n }\n else {\n await this.getKeyValueStorage().removeItem(authKeys.signInDetails);\n }\n await this.getKeyValueStorage().setItem(authKeys.clockDrift, `${tokens.clockDrift}`);\n }\n async clearTokens() {\n const authKeys = await this.getAuthKeys();\n // Not calling clear because it can remove data that is not managed by AuthTokenStore\n await Promise.all([\n this.getKeyValueStorage().removeItem(authKeys.accessToken),\n this.getKeyValueStorage().removeItem(authKeys.idToken),\n this.getKeyValueStorage().removeItem(authKeys.clockDrift),\n this.getKeyValueStorage().removeItem(authKeys.refreshToken),\n this.getKeyValueStorage().removeItem(authKeys.signInDetails),\n this.getKeyValueStorage().removeItem(this.getLastAuthUserKey()),\n this.getKeyValueStorage().removeItem(authKeys.oauthMetadata),\n ]);\n }\n async getDeviceMetadata(username) {\n const authKeys = await this.getAuthKeys(username);\n const deviceKey = await this.getKeyValueStorage().getItem(authKeys.deviceKey);\n const deviceGroupKey = await this.getKeyValueStorage().getItem(authKeys.deviceGroupKey);\n const randomPassword = await this.getKeyValueStorage().getItem(authKeys.randomPasswordKey);\n return randomPassword && deviceGroupKey && deviceKey\n ? {\n deviceKey,\n deviceGroupKey,\n randomPassword,\n }\n : null;\n }\n async clearDeviceMetadata(username) {\n const authKeys = await this.getAuthKeys(username);\n await Promise.all([\n this.getKeyValueStorage().removeItem(authKeys.deviceKey),\n this.getKeyValueStorage().removeItem(authKeys.deviceGroupKey),\n this.getKeyValueStorage().removeItem(authKeys.randomPasswordKey),\n ]);\n }\n async getAuthKeys(username) {\n assertTokenProviderConfig(this.authConfig?.Cognito);\n const lastAuthUser = username ?? (await this.getLastAuthUser());\n return createKeysForAuthStorage(this.name, `${this.authConfig.Cognito.userPoolClientId}.${lastAuthUser}`);\n }\n getLastAuthUserKey() {\n assertTokenProviderConfig(this.authConfig?.Cognito);\n const identifier = this.authConfig.Cognito.userPoolClientId;\n return `${this.name}.${identifier}.LastAuthUser`;\n }\n async getLastAuthUser() {\n const lastAuthUser = (await this.getKeyValueStorage().getItem(this.getLastAuthUserKey())) ??\n 'username';\n return lastAuthUser;\n }\n async setOAuthMetadata(metadata) {\n const { oauthMetadata: oauthMetadataKey } = await this.getAuthKeys();\n await this.getKeyValueStorage().setItem(oauthMetadataKey, JSON.stringify(metadata));\n }\n async getOAuthMetadata() {\n const { oauthMetadata: oauthMetadataKey } = await this.getAuthKeys();\n const oauthMetadata = await this.getKeyValueStorage().getItem(oauthMetadataKey);\n return oauthMetadata && JSON.parse(oauthMetadata);\n }\n}\nexport const createKeysForAuthStorage = (provider, identifier) => {\n return getAuthStorageKeys(AuthTokenStorageKeys)(`${provider}`, identifier);\n};\nexport function getAuthStorageKeys(authKeys) {\n const keys = Object.values({ ...authKeys });\n return (prefix, identifier) => keys.reduce((acc, authKey) => ({\n ...acc,\n [authKey]: `${prefix}.${identifier}.${authKey}`,\n }), {});\n}\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,108 +1,108 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
2
|
+
"name": "@aws-amplify/auth",
|
|
3
|
+
"version": "6.10.1-graphql-data-ka.8391522.0+8391522",
|
|
4
|
+
"description": "Auth category of aws-amplify",
|
|
5
|
+
"main": "./dist/cjs/index.js",
|
|
6
|
+
"module": "./dist/esm/index.mjs",
|
|
7
|
+
"typings": "./dist/esm/index.d.ts",
|
|
8
|
+
"react-native": "./src/index.ts",
|
|
9
|
+
"sideEffects": [
|
|
10
|
+
"./dist/cjs/providers/cognito/apis/signInWithRedirect.js",
|
|
11
|
+
"./dist/esm/providers/cognito/apis/signInWithRedirect.mjs",
|
|
12
|
+
"./dist/cjs/providers/cognito/utils/oauth/enableOAuthListener.js",
|
|
13
|
+
"./dist/esm/providers/cognito/utils/oauth/enableOAuthListener.mjs"
|
|
14
|
+
],
|
|
15
|
+
"publishConfig": {
|
|
16
|
+
"access": "public"
|
|
17
|
+
},
|
|
18
|
+
"scripts": {
|
|
19
|
+
"test": "yarn lint --fix && jest -w 1 --coverage --logHeapUsage",
|
|
20
|
+
"build-with-test": "npm test && npm run build",
|
|
21
|
+
"build:umd": "webpack && webpack --config ./webpack.config.dev.js",
|
|
22
|
+
"build:esm-cjs": "rollup --forceExit -c rollup.config.mjs",
|
|
23
|
+
"build:watch": "npm run build:esm-cjs -- --watch",
|
|
24
|
+
"build": "npm run clean && npm run build:esm-cjs && npm run build:umd",
|
|
25
|
+
"clean": "npm run clean:size && rimraf lib-esm lib dist",
|
|
26
|
+
"clean:size": "rimraf dual-publish-tmp tmp*",
|
|
27
|
+
"format": "echo \"Not implemented\"",
|
|
28
|
+
"lint": "eslint '**/*.{ts,tsx}' && npm run ts-coverage",
|
|
29
|
+
"lint:fix": "eslint '**/*.{ts,tsx}' --fix",
|
|
30
|
+
"ts-coverage": "typescript-coverage-report -p ./tsconfig.build.json -t 91.18"
|
|
31
|
+
},
|
|
32
|
+
"typesVersions": {
|
|
33
|
+
">=4.2": {
|
|
34
|
+
"cognito": [
|
|
35
|
+
"./dist/esm/providers/cognito/index.d.ts"
|
|
36
|
+
],
|
|
37
|
+
"cognito/server": [
|
|
38
|
+
"./dist/esm/providers/cognito/apis/server/index.d.ts"
|
|
39
|
+
],
|
|
40
|
+
"server": [
|
|
41
|
+
"./dist/esm/server.d.ts"
|
|
42
|
+
]
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
"exports": {
|
|
46
|
+
".": {
|
|
47
|
+
"types": "./dist/esm/index.d.ts",
|
|
48
|
+
"import": "./dist/esm/index.mjs",
|
|
49
|
+
"require": "./dist/cjs/index.js",
|
|
50
|
+
"react-native": "./src/index.ts"
|
|
51
|
+
},
|
|
52
|
+
"./cognito": {
|
|
53
|
+
"types": "./dist/esm/providers/cognito/index.d.ts",
|
|
54
|
+
"import": "./dist/esm/providers/cognito/index.mjs",
|
|
55
|
+
"require": "./dist/cjs/providers/cognito/index.js",
|
|
56
|
+
"react-native": "./src/providers/cognito/index.ts"
|
|
57
|
+
},
|
|
58
|
+
"./cognito/server": {
|
|
59
|
+
"types": "./dist/esm/providers/cognito/apis/server/index.d.ts",
|
|
60
|
+
"import": "./dist/esm/providers/cognito/apis/server/index.mjs",
|
|
61
|
+
"require": "./dist/cjs/providers/cognito/apis/server/index.js"
|
|
62
|
+
},
|
|
63
|
+
"./server": {
|
|
64
|
+
"types": "./dist/esm/server.d.ts",
|
|
65
|
+
"import": "./dist/esm/server.mjs",
|
|
66
|
+
"require": "./dist/cjs/server.js"
|
|
67
|
+
},
|
|
68
|
+
"./enable-oauth-listener": {
|
|
69
|
+
"types": "./dist/esm/providers/cognito/utils/oauth/enableOAuthListener.d.ts",
|
|
70
|
+
"import": "./dist/esm/providers/cognito/utils/oauth/enableOAuthListener.mjs",
|
|
71
|
+
"require": "./dist/cjs/providers/cognito/utils/oauth/enableOAuthListener.js"
|
|
72
|
+
},
|
|
73
|
+
"./package.json": "./package.json"
|
|
74
|
+
},
|
|
75
|
+
"repository": {
|
|
76
|
+
"type": "git",
|
|
77
|
+
"url": "https://github.com/aws-amplify/amplify-js.git"
|
|
78
|
+
},
|
|
79
|
+
"author": "Amazon Web Services",
|
|
80
|
+
"license": "Apache-2.0",
|
|
81
|
+
"bugs": {
|
|
82
|
+
"url": "https://github.com/aws/aws-amplify/issues"
|
|
83
|
+
},
|
|
84
|
+
"homepage": "https://aws-amplify.github.io/",
|
|
85
|
+
"files": [
|
|
86
|
+
"dist/cjs",
|
|
87
|
+
"dist/esm",
|
|
88
|
+
"src",
|
|
89
|
+
"cognito",
|
|
90
|
+
"server",
|
|
91
|
+
"enable-oauth-listener"
|
|
92
|
+
],
|
|
93
|
+
"dependencies": {
|
|
94
|
+
"@aws-crypto/sha256-js": "5.2.0",
|
|
95
|
+
"@smithy/types": "^3.3.0",
|
|
96
|
+
"tslib": "^2.5.0"
|
|
97
|
+
},
|
|
98
|
+
"peerDependencies": {
|
|
99
|
+
"@aws-amplify/core": "6.9.2-graphql-data-ka.8391522.0+8391522"
|
|
100
|
+
},
|
|
101
|
+
"devDependencies": {
|
|
102
|
+
"@aws-amplify/core": "6.9.2-graphql-data-ka.8391522.0+8391522",
|
|
103
|
+
"@aws-amplify/react-native": "1.1.7-graphql-data-ka.8391522.0+8391522",
|
|
104
|
+
"@jest/test-sequencer": "^29.7.0",
|
|
105
|
+
"typescript": "5.0.2"
|
|
106
|
+
},
|
|
107
|
+
"gitHead": "8391522364599d9990561238c7421742ee379de7"
|
|
108
108
|
}
|
|
@@ -95,13 +95,12 @@ export class DefaultTokenStore implements AuthTokenStore {
|
|
|
95
95
|
|
|
96
96
|
async storeTokens(tokens: CognitoAuthTokens): Promise<void> {
|
|
97
97
|
assert(tokens !== undefined, TokenProviderErrorCode.InvalidAuthTokens);
|
|
98
|
-
await this.clearTokens();
|
|
99
|
-
|
|
100
98
|
const lastAuthUser = tokens.username;
|
|
101
99
|
await this.getKeyValueStorage().setItem(
|
|
102
100
|
this.getLastAuthUserKey(),
|
|
103
101
|
lastAuthUser,
|
|
104
102
|
);
|
|
103
|
+
|
|
105
104
|
const authKeys = await this.getAuthKeys();
|
|
106
105
|
await this.getKeyValueStorage().setItem(
|
|
107
106
|
authKeys.accessToken,
|
|
@@ -113,6 +112,8 @@ export class DefaultTokenStore implements AuthTokenStore {
|
|
|
113
112
|
authKeys.idToken,
|
|
114
113
|
tokens.idToken.toString(),
|
|
115
114
|
);
|
|
115
|
+
} else {
|
|
116
|
+
await this.getKeyValueStorage().removeItem(authKeys.idToken);
|
|
116
117
|
}
|
|
117
118
|
|
|
118
119
|
if (tokens.refreshToken) {
|
|
@@ -120,6 +121,8 @@ export class DefaultTokenStore implements AuthTokenStore {
|
|
|
120
121
|
authKeys.refreshToken,
|
|
121
122
|
tokens.refreshToken,
|
|
122
123
|
);
|
|
124
|
+
} else {
|
|
125
|
+
await this.getKeyValueStorage().removeItem(authKeys.refreshToken);
|
|
123
126
|
}
|
|
124
127
|
|
|
125
128
|
if (tokens.deviceMetadata) {
|
|
@@ -141,11 +144,14 @@ export class DefaultTokenStore implements AuthTokenStore {
|
|
|
141
144
|
tokens.deviceMetadata.randomPassword,
|
|
142
145
|
);
|
|
143
146
|
}
|
|
147
|
+
|
|
144
148
|
if (tokens.signInDetails) {
|
|
145
149
|
await this.getKeyValueStorage().setItem(
|
|
146
150
|
authKeys.signInDetails,
|
|
147
151
|
JSON.stringify(tokens.signInDetails),
|
|
148
152
|
);
|
|
153
|
+
} else {
|
|
154
|
+
await this.getKeyValueStorage().removeItem(authKeys.signInDetails);
|
|
149
155
|
}
|
|
150
156
|
|
|
151
157
|
await this.getKeyValueStorage().setItem(
|