@aws-amplify/auth 6.5.1-email-mfa-test.4e655bc.0 → 6.5.1-storage-browser.4db9fef.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/common/AuthErrorStrings.js +2 -2
- package/dist/cjs/common/AuthErrorStrings.js.map +1 -1
- package/dist/cjs/providers/cognito/apis/confirmSignIn.js +2 -2
- package/dist/cjs/providers/cognito/apis/confirmSignIn.js.map +1 -1
- package/dist/cjs/providers/cognito/apis/updateMFAPreference.js +1 -2
- package/dist/cjs/providers/cognito/apis/updateMFAPreference.js.map +1 -1
- package/dist/cjs/providers/cognito/utils/signInHelpers.js +130 -183
- package/dist/cjs/providers/cognito/utils/signInHelpers.js.map +1 -1
- package/dist/esm/common/AuthErrorStrings.mjs +2 -2
- package/dist/esm/common/AuthErrorStrings.mjs.map +1 -1
- package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/constants.d.ts +1 -1
- package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createAssociateSoftwareTokenClient.d.ts +1 -1
- package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createChangePasswordClient.d.ts +1 -1
- package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createConfirmDeviceClient.d.ts +1 -1
- package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createConfirmForgotPasswordClient.d.ts +1 -1
- package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createConfirmSignUpClient.d.ts +1 -1
- package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createDeleteUserAttributesClient.d.ts +1 -1
- package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createDeleteUserClient.d.ts +1 -1
- package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createForgetDeviceClient.d.ts +1 -1
- package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createForgotPasswordClient.d.ts +1 -1
- package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createGetUserAttributeVerificationCodeClient.d.ts +1 -1
- package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createGetUserClient.d.ts +1 -1
- package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createGlobalSignOutClient.d.ts +1 -1
- package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createInitiateAuthClient.d.ts +1 -1
- package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createListDevicesClient.d.ts +1 -1
- package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createResendConfirmationCodeClient.d.ts +1 -1
- package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createRespondToAuthChallengeClient.d.ts +1 -1
- package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createRevokeTokenClient.d.ts +1 -1
- package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createSetUserMFAPreferenceClient.d.ts +1 -1
- package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createSignUpClient.d.ts +1 -1
- package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createUpdateDeviceStatusClient.d.ts +1 -1
- package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createUpdateUserAttributesClient.d.ts +1 -1
- package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createVerifySoftwareTokenClient.d.ts +1 -1
- package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/createVerifyUserAttributeClient.d.ts +1 -1
- package/dist/esm/foundation/factories/serviceClients/cognitoIdentityProvider/types/sdk.d.ts +3 -24
- package/dist/esm/providers/cognito/apis/confirmSignIn.mjs +2 -2
- package/dist/esm/providers/cognito/apis/confirmSignIn.mjs.map +1 -1
- package/dist/esm/providers/cognito/apis/updateMFAPreference.mjs +1 -2
- package/dist/esm/providers/cognito/apis/updateMFAPreference.mjs.map +1 -1
- package/dist/esm/providers/cognito/types/inputs.d.ts +0 -1
- package/dist/esm/providers/cognito/utils/signInHelpers.d.ts +3 -4
- package/dist/esm/providers/cognito/utils/signInHelpers.mjs +127 -181
- package/dist/esm/providers/cognito/utils/signInHelpers.mjs.map +1 -1
- package/dist/esm/types/models.d.ts +2 -44
- package/package.json +5 -5
- package/src/common/AuthErrorStrings.ts +2 -4
- package/src/foundation/factories/serviceClients/cognitoIdentityProvider/types/sdk.ts +1 -23
- package/src/providers/cognito/apis/confirmSignIn.ts +2 -2
- package/src/providers/cognito/apis/updateMFAPreference.ts +1 -2
- package/src/providers/cognito/types/inputs.ts +0 -1
- package/src/providers/cognito/utils/signInHelpers.ts +166 -240
- package/src/types/models.ts +1 -48
|
@@ -76,90 +76,43 @@ async function handleCustomChallenge({ challengeResponse, clientMetadata, sessio
|
|
|
76
76
|
}
|
|
77
77
|
async function handleMFASetupChallenge({ challengeResponse, username, clientMetadata, session, deviceName, config, }) {
|
|
78
78
|
const { userPoolId, userPoolClientId, userPoolEndpoint } = config;
|
|
79
|
-
if (challengeResponse === 'EMAIL') {
|
|
80
|
-
return {
|
|
81
|
-
ChallengeName: 'MFA_SETUP',
|
|
82
|
-
Session: session,
|
|
83
|
-
ChallengeParameters: {
|
|
84
|
-
MFAS_CAN_SETUP: '["EMAIL_OTP"]',
|
|
85
|
-
},
|
|
86
|
-
$metadata: {},
|
|
87
|
-
};
|
|
88
|
-
}
|
|
89
|
-
if (challengeResponse === 'TOTP') {
|
|
90
|
-
return {
|
|
91
|
-
ChallengeName: 'MFA_SETUP',
|
|
92
|
-
Session: session,
|
|
93
|
-
ChallengeParameters: {
|
|
94
|
-
MFAS_CAN_SETUP: '["SOFTWARE_TOKEN_MFA"]',
|
|
95
|
-
},
|
|
96
|
-
$metadata: {},
|
|
97
|
-
};
|
|
98
|
-
}
|
|
99
79
|
const challengeResponses = {
|
|
100
80
|
USERNAME: username,
|
|
101
81
|
};
|
|
102
|
-
const
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
endpointOverride: userPoolEndpoint,
|
|
131
|
-
}),
|
|
132
|
-
});
|
|
133
|
-
return respondToAuthChallenge({ region: getRegionFromUserPoolId(userPoolId) }, jsonReq);
|
|
134
|
-
}
|
|
135
|
-
const isEmail = /^\S+@\S+\.\S+$/.test(challengeResponse.trim());
|
|
136
|
-
if (isEmail) {
|
|
137
|
-
challengeResponses.EMAIL = challengeResponse;
|
|
138
|
-
const jsonReq = {
|
|
139
|
-
ChallengeName: 'MFA_SETUP',
|
|
140
|
-
ChallengeResponses: challengeResponses,
|
|
141
|
-
Session: session,
|
|
142
|
-
ClientMetadata: clientMetadata,
|
|
143
|
-
ClientId: userPoolClientId,
|
|
144
|
-
};
|
|
145
|
-
const respondToAuthChallenge = createRespondToAuthChallengeClient({
|
|
146
|
-
endpointResolver: createCognitoUserPoolEndpointResolver({
|
|
147
|
-
endpointOverride: userPoolEndpoint,
|
|
148
|
-
}),
|
|
149
|
-
});
|
|
150
|
-
return respondToAuthChallenge({ region: getRegionFromUserPoolId(userPoolId) }, jsonReq);
|
|
151
|
-
}
|
|
152
|
-
throw new AuthError({
|
|
153
|
-
name: AuthErrorCodes.SignInException,
|
|
154
|
-
message: `Cannot proceed with MFA setup using challengeResponse: ${challengeResponse}`,
|
|
155
|
-
recoverySuggestion: 'Try passing "EMAIL", "TOTP", a valid email, or OTP code as the challengeResponse.',
|
|
82
|
+
const verifySoftwareToken = createVerifySoftwareTokenClient({
|
|
83
|
+
endpointResolver: createCognitoUserPoolEndpointResolver({
|
|
84
|
+
endpointOverride: userPoolEndpoint,
|
|
85
|
+
}),
|
|
86
|
+
});
|
|
87
|
+
const { Session } = await verifySoftwareToken({
|
|
88
|
+
region: getRegionFromUserPoolId(userPoolId),
|
|
89
|
+
userAgentValue: getAuthUserAgentValue(AuthAction.ConfirmSignIn),
|
|
90
|
+
}, {
|
|
91
|
+
UserCode: challengeResponse,
|
|
92
|
+
Session: session,
|
|
93
|
+
FriendlyDeviceName: deviceName,
|
|
94
|
+
});
|
|
95
|
+
signInStore.dispatch({
|
|
96
|
+
type: 'SET_SIGN_IN_SESSION',
|
|
97
|
+
value: Session,
|
|
98
|
+
});
|
|
99
|
+
const jsonReq = {
|
|
100
|
+
ChallengeName: 'MFA_SETUP',
|
|
101
|
+
ChallengeResponses: challengeResponses,
|
|
102
|
+
Session,
|
|
103
|
+
ClientMetadata: clientMetadata,
|
|
104
|
+
ClientId: userPoolClientId,
|
|
105
|
+
};
|
|
106
|
+
const respondToAuthChallenge = createRespondToAuthChallengeClient({
|
|
107
|
+
endpointResolver: createCognitoUserPoolEndpointResolver({
|
|
108
|
+
endpointOverride: userPoolEndpoint,
|
|
109
|
+
}),
|
|
156
110
|
});
|
|
111
|
+
return respondToAuthChallenge({ region: getRegionFromUserPoolId(userPoolId) }, jsonReq);
|
|
157
112
|
}
|
|
158
113
|
async function handleSelectMFATypeChallenge({ challengeResponse, username, clientMetadata, session, config, }) {
|
|
159
114
|
const { userPoolId, userPoolClientId, userPoolEndpoint } = config;
|
|
160
|
-
assertValidationError(challengeResponse === 'TOTP' ||
|
|
161
|
-
challengeResponse === 'SMS' ||
|
|
162
|
-
challengeResponse === 'EMAIL', AuthValidationErrorCode.IncorrectMFAMethod);
|
|
115
|
+
assertValidationError(challengeResponse === 'TOTP' || challengeResponse === 'SMS', AuthValidationErrorCode.IncorrectMFAMethod);
|
|
163
116
|
const challengeResponses = {
|
|
164
117
|
USERNAME: username,
|
|
165
118
|
ANSWER: mapMfaType(challengeResponse),
|
|
@@ -187,6 +140,64 @@ async function handleSelectMFATypeChallenge({ challengeResponse, username, clien
|
|
|
187
140
|
userAgentValue: getAuthUserAgentValue(AuthAction.ConfirmSignIn),
|
|
188
141
|
}, jsonReq);
|
|
189
142
|
}
|
|
143
|
+
async function handleSMSMFAChallenge({ challengeResponse, clientMetadata, session, username, config, }) {
|
|
144
|
+
const { userPoolId, userPoolClientId, userPoolEndpoint } = config;
|
|
145
|
+
const challengeResponses = {
|
|
146
|
+
USERNAME: username,
|
|
147
|
+
SMS_MFA_CODE: challengeResponse,
|
|
148
|
+
};
|
|
149
|
+
const UserContextData = getUserContextData({
|
|
150
|
+
username,
|
|
151
|
+
userPoolId,
|
|
152
|
+
userPoolClientId,
|
|
153
|
+
});
|
|
154
|
+
const jsonReq = {
|
|
155
|
+
ChallengeName: 'SMS_MFA',
|
|
156
|
+
ChallengeResponses: challengeResponses,
|
|
157
|
+
Session: session,
|
|
158
|
+
ClientMetadata: clientMetadata,
|
|
159
|
+
ClientId: userPoolClientId,
|
|
160
|
+
UserContextData,
|
|
161
|
+
};
|
|
162
|
+
const respondToAuthChallenge = createRespondToAuthChallengeClient({
|
|
163
|
+
endpointResolver: createCognitoUserPoolEndpointResolver({
|
|
164
|
+
endpointOverride: userPoolEndpoint,
|
|
165
|
+
}),
|
|
166
|
+
});
|
|
167
|
+
return respondToAuthChallenge({
|
|
168
|
+
region: getRegionFromUserPoolId(userPoolId),
|
|
169
|
+
userAgentValue: getAuthUserAgentValue(AuthAction.ConfirmSignIn),
|
|
170
|
+
}, jsonReq);
|
|
171
|
+
}
|
|
172
|
+
async function handleSoftwareTokenMFAChallenge({ challengeResponse, clientMetadata, session, username, config, }) {
|
|
173
|
+
const { userPoolId, userPoolClientId, userPoolEndpoint } = config;
|
|
174
|
+
const challengeResponses = {
|
|
175
|
+
USERNAME: username,
|
|
176
|
+
SOFTWARE_TOKEN_MFA_CODE: challengeResponse,
|
|
177
|
+
};
|
|
178
|
+
const UserContextData = getUserContextData({
|
|
179
|
+
username,
|
|
180
|
+
userPoolId,
|
|
181
|
+
userPoolClientId,
|
|
182
|
+
});
|
|
183
|
+
const jsonReq = {
|
|
184
|
+
ChallengeName: 'SOFTWARE_TOKEN_MFA',
|
|
185
|
+
ChallengeResponses: challengeResponses,
|
|
186
|
+
Session: session,
|
|
187
|
+
ClientMetadata: clientMetadata,
|
|
188
|
+
ClientId: userPoolClientId,
|
|
189
|
+
UserContextData,
|
|
190
|
+
};
|
|
191
|
+
const respondToAuthChallenge = createRespondToAuthChallengeClient({
|
|
192
|
+
endpointResolver: createCognitoUserPoolEndpointResolver({
|
|
193
|
+
endpointOverride: userPoolEndpoint,
|
|
194
|
+
}),
|
|
195
|
+
});
|
|
196
|
+
return respondToAuthChallenge({
|
|
197
|
+
region: getRegionFromUserPoolId(userPoolId),
|
|
198
|
+
userAgentValue: getAuthUserAgentValue(AuthAction.ConfirmSignIn),
|
|
199
|
+
}, jsonReq);
|
|
200
|
+
}
|
|
190
201
|
async function handleCompleteNewPasswordChallenge({ challengeResponse, clientMetadata, session, username, requiredAttributes, config, }) {
|
|
191
202
|
const { userPoolId, userPoolClientId, userPoolEndpoint } = config;
|
|
192
203
|
const challengeResponses = {
|
|
@@ -540,52 +551,30 @@ async function getSignInResult(params) {
|
|
|
540
551
|
};
|
|
541
552
|
case 'MFA_SETUP': {
|
|
542
553
|
const { signInSession, username } = signInStore.getState();
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
if (isTotpMfaSetupAvailable && isEmailMfaSetupAvailable) {
|
|
548
|
-
return {
|
|
549
|
-
isSignedIn: false,
|
|
550
|
-
nextStep: {
|
|
551
|
-
signInStep: 'CONTINUE_SIGN_IN_WITH_MFA_SETUP_SELECTION',
|
|
552
|
-
allowedMFATypes: allowedMfaSetupTypes,
|
|
553
|
-
},
|
|
554
|
-
};
|
|
555
|
-
}
|
|
556
|
-
if (isEmailMfaSetupAvailable) {
|
|
557
|
-
return {
|
|
558
|
-
isSignedIn: false,
|
|
559
|
-
nextStep: {
|
|
560
|
-
signInStep: 'CONTINUE_SIGN_IN_WITH_EMAIL_SETUP',
|
|
561
|
-
},
|
|
562
|
-
};
|
|
563
|
-
}
|
|
564
|
-
if (isTotpMfaSetupAvailable) {
|
|
565
|
-
const associateSoftwareToken = createAssociateSoftwareTokenClient({
|
|
566
|
-
endpointResolver: createCognitoUserPoolEndpointResolver({
|
|
567
|
-
endpointOverride: authConfig.userPoolEndpoint,
|
|
568
|
-
}),
|
|
569
|
-
});
|
|
570
|
-
const { Session, SecretCode: secretCode } = await associateSoftwareToken({ region: getRegionFromUserPoolId(authConfig.userPoolId) }, {
|
|
571
|
-
Session: signInSession,
|
|
572
|
-
});
|
|
573
|
-
signInStore.dispatch({
|
|
574
|
-
type: 'SET_SIGN_IN_SESSION',
|
|
575
|
-
value: Session,
|
|
554
|
+
if (!isMFATypeEnabled(challengeParameters, 'TOTP'))
|
|
555
|
+
throw new AuthError({
|
|
556
|
+
name: AuthErrorCodes.SignInException,
|
|
557
|
+
message: `Cannot initiate MFA setup from available types: ${getMFATypes(parseMFATypes(challengeParameters.MFAS_CAN_SETUP))}`,
|
|
576
558
|
});
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
}
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
559
|
+
const associateSoftwareToken = createAssociateSoftwareTokenClient({
|
|
560
|
+
endpointResolver: createCognitoUserPoolEndpointResolver({
|
|
561
|
+
endpointOverride: authConfig.userPoolEndpoint,
|
|
562
|
+
}),
|
|
563
|
+
});
|
|
564
|
+
const { Session, SecretCode: secretCode } = await associateSoftwareToken({ region: getRegionFromUserPoolId(authConfig.userPoolId) }, {
|
|
565
|
+
Session: signInSession,
|
|
566
|
+
});
|
|
567
|
+
signInStore.dispatch({
|
|
568
|
+
type: 'SET_SIGN_IN_SESSION',
|
|
569
|
+
value: Session,
|
|
588
570
|
});
|
|
571
|
+
return {
|
|
572
|
+
isSignedIn: false,
|
|
573
|
+
nextStep: {
|
|
574
|
+
signInStep: 'CONTINUE_SIGN_IN_WITH_TOTP_SETUP',
|
|
575
|
+
totpSetupDetails: getTOTPSetupDetails(secretCode, username),
|
|
576
|
+
},
|
|
577
|
+
};
|
|
589
578
|
}
|
|
590
579
|
case 'NEW_PASSWORD_REQUIRED':
|
|
591
580
|
return {
|
|
@@ -621,17 +610,6 @@ async function getSignInResult(params) {
|
|
|
621
610
|
signInStep: 'CONFIRM_SIGN_IN_WITH_TOTP_CODE',
|
|
622
611
|
},
|
|
623
612
|
};
|
|
624
|
-
case 'EMAIL_OTP':
|
|
625
|
-
return {
|
|
626
|
-
isSignedIn: false,
|
|
627
|
-
nextStep: {
|
|
628
|
-
signInStep: 'CONFIRM_SIGN_IN_WITH_EMAIL_CODE',
|
|
629
|
-
codeDeliveryDetails: {
|
|
630
|
-
deliveryMedium: challengeParameters.CODE_DELIVERY_DELIVERY_MEDIUM,
|
|
631
|
-
destination: challengeParameters.CODE_DELIVERY_DESTINATION,
|
|
632
|
-
},
|
|
633
|
-
},
|
|
634
|
-
};
|
|
635
613
|
}
|
|
636
614
|
// TODO: remove this error message for production apps
|
|
637
615
|
throw new AuthError({
|
|
@@ -683,6 +661,14 @@ async function handleChallengeName(username, challengeName, session, challengeRe
|
|
|
683
661
|
const userAttributes = options?.userAttributes;
|
|
684
662
|
const deviceName = options?.friendlyDeviceName;
|
|
685
663
|
switch (challengeName) {
|
|
664
|
+
case 'SMS_MFA':
|
|
665
|
+
return handleSMSMFAChallenge({
|
|
666
|
+
challengeResponse,
|
|
667
|
+
clientMetadata,
|
|
668
|
+
session,
|
|
669
|
+
username,
|
|
670
|
+
config,
|
|
671
|
+
});
|
|
686
672
|
case 'SELECT_MFA_TYPE':
|
|
687
673
|
return handleSelectMFATypeChallenge({
|
|
688
674
|
challengeResponse,
|
|
@@ -720,11 +706,8 @@ async function handleChallengeName(username, challengeName, session, challengeRe
|
|
|
720
706
|
tokenOrchestrator,
|
|
721
707
|
},
|
|
722
708
|
], username, tokenOrchestrator);
|
|
723
|
-
case 'SMS_MFA':
|
|
724
709
|
case 'SOFTWARE_TOKEN_MFA':
|
|
725
|
-
|
|
726
|
-
return handleMFAChallenge({
|
|
727
|
-
challengeName,
|
|
710
|
+
return handleSoftwareTokenMFAChallenge({
|
|
728
711
|
challengeResponse,
|
|
729
712
|
clientMetadata,
|
|
730
713
|
session,
|
|
@@ -735,7 +718,7 @@ async function handleChallengeName(username, challengeName, session, challengeRe
|
|
|
735
718
|
// TODO: remove this error message for production apps
|
|
736
719
|
throw new AuthError({
|
|
737
720
|
name: AuthErrorCodes.SignInException,
|
|
738
|
-
message: `An error occurred during the sign in process.
|
|
721
|
+
message: `An error occurred during the sign in process.
|
|
739
722
|
${challengeName} challengeName returned by the underlying service was not addressed.`,
|
|
740
723
|
});
|
|
741
724
|
}
|
|
@@ -743,8 +726,6 @@ function mapMfaType(mfa) {
|
|
|
743
726
|
let mfaType = 'SMS_MFA';
|
|
744
727
|
if (mfa === 'TOTP')
|
|
745
728
|
mfaType = 'SOFTWARE_TOKEN_MFA';
|
|
746
|
-
if (mfa === 'EMAIL')
|
|
747
|
-
mfaType = 'EMAIL_OTP';
|
|
748
729
|
return mfaType;
|
|
749
730
|
}
|
|
750
731
|
function getMFAType(type) {
|
|
@@ -752,8 +733,6 @@ function getMFAType(type) {
|
|
|
752
733
|
return 'SMS';
|
|
753
734
|
if (type === 'SOFTWARE_TOKEN_MFA')
|
|
754
735
|
return 'TOTP';
|
|
755
|
-
if (type === 'EMAIL_OTP')
|
|
756
|
-
return 'EMAIL';
|
|
757
736
|
// TODO: log warning for unknown MFA type
|
|
758
737
|
}
|
|
759
738
|
function getMFATypes(types) {
|
|
@@ -766,8 +745,12 @@ function parseMFATypes(mfa) {
|
|
|
766
745
|
return [];
|
|
767
746
|
return JSON.parse(mfa);
|
|
768
747
|
}
|
|
769
|
-
function
|
|
770
|
-
|
|
748
|
+
function isMFATypeEnabled(challengeParams, mfaType) {
|
|
749
|
+
const { MFAS_CAN_SETUP } = challengeParams;
|
|
750
|
+
const mfaTypes = getMFATypes(parseMFATypes(MFAS_CAN_SETUP));
|
|
751
|
+
if (!mfaTypes)
|
|
752
|
+
return false;
|
|
753
|
+
return mfaTypes.includes(mfaType);
|
|
771
754
|
}
|
|
772
755
|
async function assertUserNotAuthenticated() {
|
|
773
756
|
let authUser;
|
|
@@ -861,43 +844,6 @@ function getActiveSignInUsername(username) {
|
|
|
861
844
|
const state = signInStore.getState();
|
|
862
845
|
return state.username ?? username;
|
|
863
846
|
}
|
|
864
|
-
async function handleMFAChallenge({ challengeName, challengeResponse, clientMetadata, session, username, config, }) {
|
|
865
|
-
const { userPoolId, userPoolClientId, userPoolEndpoint } = config;
|
|
866
|
-
const challengeResponses = {
|
|
867
|
-
USERNAME: username,
|
|
868
|
-
};
|
|
869
|
-
if (challengeName === 'EMAIL_OTP') {
|
|
870
|
-
challengeResponses.EMAIL_OTP_CODE = challengeResponse;
|
|
871
|
-
}
|
|
872
|
-
if (challengeName === 'SMS_MFA') {
|
|
873
|
-
challengeResponses.SMS_MFA_CODE = challengeResponse;
|
|
874
|
-
}
|
|
875
|
-
if (challengeName === 'SOFTWARE_TOKEN_MFA') {
|
|
876
|
-
challengeResponses.SOFTWARE_TOKEN_MFA_CODE = challengeResponse;
|
|
877
|
-
}
|
|
878
|
-
const userContextData = getUserContextData({
|
|
879
|
-
username,
|
|
880
|
-
userPoolId,
|
|
881
|
-
userPoolClientId,
|
|
882
|
-
});
|
|
883
|
-
const jsonReq = {
|
|
884
|
-
ChallengeName: challengeName,
|
|
885
|
-
ChallengeResponses: challengeResponses,
|
|
886
|
-
Session: session,
|
|
887
|
-
ClientMetadata: clientMetadata,
|
|
888
|
-
ClientId: userPoolClientId,
|
|
889
|
-
UserContextData: userContextData,
|
|
890
|
-
};
|
|
891
|
-
const respondToAuthChallenge = createRespondToAuthChallengeClient({
|
|
892
|
-
endpointResolver: createCognitoUserPoolEndpointResolver({
|
|
893
|
-
endpointOverride: userPoolEndpoint,
|
|
894
|
-
}),
|
|
895
|
-
});
|
|
896
|
-
return respondToAuthChallenge({
|
|
897
|
-
region: getRegionFromUserPoolId(userPoolId),
|
|
898
|
-
userAgentValue: getAuthUserAgentValue(AuthAction.ConfirmSignIn),
|
|
899
|
-
}, jsonReq);
|
|
900
|
-
}
|
|
901
847
|
|
|
902
|
-
export { assertUserNotAuthenticated, createAttributes, getActiveSignInUsername,
|
|
848
|
+
export { assertUserNotAuthenticated, createAttributes, getActiveSignInUsername, getMFAType, getMFATypes, getNewDeviceMetadata, getSignInResult, getSignInResultFromError, getTOTPSetupDetails, handleChallengeName, handleCompleteNewPasswordChallenge, handleCustomAuthFlowWithoutSRP, handleCustomChallenge, handleCustomSRPAuthFlow, handleMFASetupChallenge, handlePasswordVerifierChallenge, handleSMSMFAChallenge, handleSelectMFATypeChallenge, handleSoftwareTokenMFAChallenge, handleUserPasswordAuthFlow, handleUserSRPAuthFlow, isMFATypeEnabled, mapMfaType, parseAttributes, parseMFATypes, retryOnResourceNotFoundException, setActiveSignInUsername };
|
|
903
849
|
//# sourceMappingURL=signInHelpers.mjs.map
|