Description
Description
After setting up a Cognito SSO federation with Apple and Google. Using the followign approach:
return await Amplify.Auth.signInWithWebUI(
provider: provider,
options: SignInWithWebUIOptions(
pluginOptions:
CognitoSignInWithWebUIPluginOptions(isPreferPrivateSession: true),
),
);
- Deep link is using custom scheme like the following : mycustomscheme://appname.link
- This is validated and working as it can be open from other apps and browsers.
- The whole flow works on emulator and on Android (and from Cognito web login page).
- All transport exceptions have been enabled on info.plist
- Url types are configured
- Event the domains for google and apple were whitelisted in the App Transport Security Settings sections.
- Associated Domains and Sign in With Apple capabilities enabled.
The webview opens showing the overlay with the apple login prompt, or the google login page. After succesfully logging in webview a blank page is showed and the deep link returned is not followed for completing token exchange.
In addition, seems that settings the value of isPreferPrivateSession to false, will break the flow and make the webview not able to start (a little permission popup will show for few milliseconds and then disappears with no possibility to interact) and nothing will happen.
Categories
- Analytics
- API (REST)
- API (GraphQL)
- Auth
- Authenticator
- DataStore
- Notifications (Push)
- Storage
Steps to Reproduce
Create a new federation from Cognito to Google or Apple
Configure universal links and deep links
Add auth model for SSO provider
Try logging in with Google or Apple from a phyisical iOS device
Screenshots
No response
Platforms
- iOS
- Android
- Web
- macOS
- Windows
- Linux
Flutter Version
3.29.2
Amplify Flutter Version
2.6.1
Deployment Method
Custom Pipeline