AWS Пользователь Cognito: сбой подтверждения устройства - PullRequest
0 голосов
/ 04 мая 2020

Я использую библиотеку CognitoAuth от Amazon для управления аутентификацией пользователей. В консоли AWS «Хотите запомнить устройства своего пользователя?» опция установлена ​​на «Всегда». Но когда я вызываю метод getSession для объекта CognitoUse, в обратном вызове onSuccess я всегда получаю параметр 'newDevice' как ноль. Предполагается, что оно не равно нулю, потому что включена опция запоминания устройства. Из-за этого я не могу обновить sh токен и получить исключение ниже:

Device confirmation failed: 
com.amazonaws.mobileconnectors.cognitoidentityprovider.exceptions.CognitoNotAuthorizedException: User is not authenticated
    at com.amazonaws.mobileconnectors.cognitoidentityprovider.CognitoUser.getCachedSession(CognitoUser.java:981)
    at com.amazonaws.mobileconnectors.cognitoidentityprovider.CognitoUser.confirmDevice(CognitoUser.java:3287)
    at com.amazonaws.mobileconnectors.cognitoidentityprovider.CognitoUser.handleChallenge(CognitoUser.java:2607)
    at com.amazonaws.mobileconnectors.cognitoidentityprovider.CognitoUser.respondToChallenge(CognitoUser.java:2409)
    at com.amazonaws.mobileconnectors.cognitoidentityprovider.CognitoUser$24.run(CognitoUser.java:2480)
    at com.amazonaws.mobileconnectors.cognitoidentityprovider.continuations.AuthenticationContinuation.continueTask(AuthenticationContinuation.java:124)
    at com.amazonaws.mobile.client.AWSMobileClient$6$1.getAuthenticationDetails(AWSMobileClient.java:1177)
    at com.amazonaws.mobileconnectors.cognitoidentityprovider.CognitoUser.getSession(CognitoUser.java:778)
    at com.amazonaws.mobile.client.AWSMobileClient$6.run(AWSMobileClient.java:1137)
    at com.amazonaws.mobile.client.internal.InternalCallback$1.run(InternalCallback.java:101)
    at java.lang.Thread.run(Thread.java:764)
 Caused by: com.amazonaws.services.cognitoidentityprovider.model.NotAuthorizedException: Invalid Refresh Token. (Service: AmazonCognitoIdentityProvider; Status Code: 400; Error Code: NotAuthorizedException; Request ID: ed2f2501-7a36-447f-ac29-c4ab4741958e)
    at com.amazonaws.http.AmazonHttpClient.handleErrorResponse(AmazonHttpClient.java:730)
    at com.amazonaws.http.AmazonHttpClient.executeHelper(AmazonHttpClient.java:405)
    at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:212)
    at com.amazonaws.services.cognitoidentityprovider.AmazonCognitoIdentityProviderClient.invoke(AmazonCognitoIdentityProviderClient.java:6292)
    at com.amazonaws.services.cognitoidentityprovider.AmazonCognitoIdentityProviderClient.initiateAuth(AmazonCognitoIdentityProviderClient.java:4277)
    at com.amazonaws.mobileconnectors.cognitoidentityprovider.CognitoUser.refreshSession(CognitoUser.java:2378)
    at com.amazonaws.mobileconnectors.cognitoidentityprovider.CognitoUser.getCachedSession(CognitoUser.java:976)
    at com.amazonaws.mobileconnectors.cognitoidentityprovider.CognitoUser.confirmDevice(CognitoUser.java:3287) 
    at com.amazonaws.mobileconnectors.cognitoidentityprovider.CognitoUser.handleChallenge(CognitoUser.java:2607) 
    at com.amazonaws.mobileconnectors.cognitoidentityprovider.CognitoUser.respondToChallenge(CognitoUser.java:2409) 
    at com.amazonaws.mobileconnectors.cognitoidentityprovider.CognitoUser$24.run(CognitoUser.java:2480) 
    at com.amazonaws.mobileconnectors.cognitoidentityprovider.continuations.AuthenticationContinuation.continueTask(AuthenticationContinuation.java:124) 
    at com.amazonaws.mobile.client.AWSMobileClient$6$1.getAuthenticationDetails(AWSMobileClient.java:1177) 
    at com.amazonaws.mobileconnectors.cognitoidentityprovider.CognitoUser.getSession(CognitoUser.java:778) 
    at com.amazonaws.mobile.client.AWSMobileClient$6.run(AWSMobileClient.java:1137) 
    at com.amazonaws.mobile.client.internal.InternalCallback$1.run(InternalCallback.java:101) 
    at java.lang.Thread.run(Thread.java:764) 

Почему не получен объект CognitoDevice? Как решить эту проблему?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...