由于内部错误,身份验证失败:未在身份验证流程开始时遇到PASSWORD_VERIFIER质询

时间:2019-02-26 17:54:00

标签: java android amazon-web-services amazon-cognito

这是常见的代码,除了“ signout”调用。

    final CognitoUser user = awsUserPool.getUser(email);
    user.signOut();
    user.getSessionInBackground(new AuthenticationHandler() {
        @Override
        public void onSuccess(CognitoUserSession userSession, CognitoDevice newDevice) { usefulfunction(); }

        @Override
        public void getAuthenticationDetails(AuthenticationContinuation authenticationContinuation, String userId) { 

                // The API needs user sign-in credentials to continue
                AuthenticationDetails authenticationDetails = new AuthenticationDetails(userId, password, null);
                // Pass the user sign-in credentials to the continuation
                authenticationContinuation.setAuthenticationDetails(authenticationDetails);
                // Allow the sign-in to continue
                authenticationContinuation.continueTask();
        }
        @Override
        public void onFailure(Exception exception) { showError(exception) }
        @Override
        public void getMFACode(MultiFactorAuthenticationContinuation continuation) {//empty}

        @Override
        public void authenticationChallenge(ChallengeContinuation continuation) {//empty}

    }

运行getSessionInBackground时,它将调用getAuthenticationDetails,然后依次调用onSuccess和onFailure,并显示以下错误:

“ com.amazonaws.mobileconnectors.cognitoidentityprovider.exceptions.CognitoInternalErrorException:由于内部错误而导致身份验证失败:PASSWORD_VERIFIER挑战未在身份验证流程开始时遇到”

如果删除signOut调用,则代码可以正常工作。

所以我的问题,为什么?另一个问题,如何强制AWS请求密码?

1 个答案:

答案 0 :(得分:2)

您最近是否已更新到AWS Client v2.12.1?

我遇到此错误,作为变通方法,如果您降级到v2.12.0,该问题不再发生。

相关问题