-
Notifications
You must be signed in to change notification settings - Fork 253
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
signOut CognitoSignOutResult different behavior on iOS and Android #5402
Comments
@lokalathlet Sorry that you are facing this issue and thanks for reporting it. We will look into this and get back to you when we have updates. |
@lokalathlet do you use sign-in with web UI? |
@NikaHsn, you're right. In the Android usecase we're signing in via signing with webui. In the iOS usecase WE login via passkeys finally using signin method. I will doublecheck this, in case we are using passkeys on Android, we getting the same result: signout = false , if we are offline. |
|
Hi @lokalathlet, could you please provide a code snippet for how you are signing in with passkey on iOS. |
Hi @lokalathlet, if you're still experiencing this issue can you please provide a code snippet to help us reproduce the observed behavior? |
Hi Equartey, here are the simplified steps how we sign in. It's the same for iOS and Android. final signInResult = await _authCategory.signIn(
username: username,
options: const SignInOptions(
pluginOptions: CognitoSignInPluginOptions(
authFlowType: AuthenticationFlowType.customAuthWithoutSrp,
),
),
); // platform authenticator called here final jsonMap = {
'response': {
'credentialId': request.id,
'authenticatorData': request.authenticatorData,
'clientDataJSON': request.clientDataJSON,
'signature': request.signature,
},
'challenge': authenticateChallenge,
};
final confirmSignInResult = await _authCategory.confirmSignIn(jsonEncode(jsonMap)); |
@lokalathlet Amplify flutter Auth does not support signIn with passkey and based on my understanding you've implemented the signin with passkey yourself, correct me if I'm wrong. |
@NikaHsn you are right. We use signInWithWebUI as an alternative. I will give it a try and come back to you. |
@lokalathlet thanks for confirming. Let us know if you are facing this issue when using signInWithWebUI. |
Hi @NikaHsn, We have noticed that when the time is falsified in offline mode, for example, by setting the clock forward or backward, the Amplify sign-out does not work. We are interested to know if you can confirm that an incorrect time setting might possibly affect the sign-out result. In this case, the SignOut result is (same on iOS and Android): What can we, as users of the library, do to ensure that signOutLocally: true is always the outcome? Or can you invalidate the tokens locally not rely on a correct time settings of the smartphone? Thanks in advance for your feedback. BR This is the result, when the time is set back to the correct time: |
Hello @lokalathlet, thank you for the additional information. We will look into replicating this issue and will provide guidance to ensure the user is properly logged out. |
Hey @tyllark, any update on this issue? |
Hi @lokalathlet , to clarify, you noticed this behaviour with the device time after the user has signed in with web-ui? |
Description
The "signedOutLocally" result in airplane Mode is different on iOS (false) and Android (true).
My expectation is, that I can signOut successful on both environments -> "signedOutLocally": true
See the logs for iOS and Android:
iOS:
`┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────
Android:
┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────
I/flutter ( 4454): │ [debug] | 13:30:42 760ms | ::signOut result: CognitoSignOutResult {
I/flutter ( 4454): │ "hostedUiException": "HostedUiException {\n "message": "Failed to perform Hosted UI sign out",\n "recoverySuggestion": "See underlyingException for more details",\n "underlyingException": "PlatformException(CANCELLED, com.amazonaws.amplify.amplify_auth_cognito.HostedUiException$CANCELLED, Cause: null, Stacktrace: com.amazonaws.amplify.amplify_auth_cognito.HostedUiException$CANCELLED\n\tat com.amazonaws.amplify.amplify_auth_cognito.AmplifyAuthCognitoPlugin.cancelCurrentOperation(AmplifyAuthCognitoPlugin.kt:587)\n\tat com.amazonaws.amplify.amplify_auth_cognito.AmplifyAuthCognitoPlugin.onNewIntent(AmplifyAuthCognitoPlugin.kt:542)\n\tat io.flutter.embedding.engine.FlutterEngineConnectionRegistry$FlutterEngineActivityPluginBinding.onNewIntent(FlutterEngineConnectionRegistry.java:799)\n\tat io.flutter.embedding.engine.FlutterEngineConnectionRegistry.onNewIntent(FlutterEngineConnectionRegistry.java:437)\n\tat io.flutter.embedding.android.FlutterActivityAndFragmentDelegate.on
I/flutter ( 4454): │ "globalSignOutException": null,
I/flutter ( 4454): │ "revokeTokenException": "RevokeTokenException {\n "message": "Failed to revoke token",\n "recoverySuggestion": "See underlyingException for more details",\n "underlyingException": "NetworkException {\n \"message\": \"The request failed due to a network error.\",\n \"recoverySuggestion\": \"Ensure that you have an active network connection\",\n \"underlyingException\": \"POST https://cognito-idp.eu-central-1.amazonaws.com/? failed: SocketException: Failed host lookup: 'cognito-idp.eu-central-1.amazonaws.com' (OS Error: No address associated with hostname, errno = 7)\"\n}"\n}",
I/flutter ( 4454): │ "signedOutLocally": true
I/flutter ( 4454): │ }
I/flutter ( 4454): └──────────────────────────────────────────────────────────────────────────────────────────────────────────────
`
Categories
Steps to Reproduce
Screenshots
No response
Platforms
Flutter Version
3.24.0
Amplify Flutter Version
2.3.0
Deployment Method
Amplify Gen 2
Schema
No response
The text was updated successfully, but these errors were encountered: