Как пропустить проверку MFA во время процесса тестирования после включения SMS MFA? - PullRequest
0 голосов
/ 07 февраля 2019

Я использую aws cognito для управления процессом входа пользователя.Я включил SMS MFA, поэтому программа требует проверочный код SMS MFA каждый раз, когда пользователь входит в систему. Однако это не очень удобно для процесса тестирования.Что я могу сделать, чтобы пропустить процесс проверки, но с включенным MFA?

Что работает (войдите в систему с кодом проверки):

const { Auth, API } = require('aws-amplify');
let loginData = await Auth.signIn(username, password);
if (loginData.challengeName === 'SMS_MFA') {
  const code = readline.question("Please enter the MFA code: ");
  // If MFA is enabled, sign-in should be confirmed with the confirmation code
  loginData = await Auth.confirmSignIn(
      loginData,   // Return object from Auth.signIn()
      code,        // Confirmation code  
      "SMS_MFA"    // MFA Type e.g. SMS, TOTP.
  );
} 

Моя неправильная попытка (попробуйте пропустить вводcode):

let loginData = await Auth.signIn(username, password);
if (loginData.challengeName === 'SMS_MFA') {
  // If MFA is enabled, sign-in should be confirmed with the confirmation code
  loginData = await Auth.confirmSignIn(
    loginData,
    "",
    "ADMIN_NO_SRP_AUTH"
  );
} 

Возвращает сообщение об ошибке, в котором говорится, что код не может быть пустым.

  1. Что в действительности означает здесь "ADMIN_NO_SRP_AUTH"?Означает ли это, что пользователю не нужно вводить код подтверждения?
  2. Действительно ли мое ожидаемое поведение реально достижимо?Если да, то как?

Большое спасибо!

...