如何从AWS Cognito用户池检查用户密码?

Ser*_*eon 8 java android amazon-web-services amazon-cognito aws-userpools

我需要检查用户提供的输入是否与当前密码(来自 Cognito 用户池)匹配。我正在实现一个确认对话框,要求用户再次提供密码(用户必须登录才能访问此功能),并检查它是否有效。

我在 Android 上使用适用于 Java 的 AWS 开发工具包,当前的实现执行以下操作:

getUserPool() // com.amazonaws.mobileconnectors.cognitoidentityprovider.CognitoUserPool
    .getCurrentUser()
    .changePasswordInBackground(
        password, // oldUserPassword
        password, // newUserPassword
        new GenericHandler() {
            @Override
            public void onSuccess() {
                // provided password is correct
            }
            @Override
            public void onFailure(Exception e) {
                // provided password is incorrect
            }
        }
    );
Run Code Online (Sandbox Code Playgroud)

然而,这感觉像是一种黑客行为,并且受到失败尝试限制的影响,这使得自动化一些测试用例变得不可行。

SDK 中是否有可以用于此目的的 API?

谢谢你!