question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Unable to complete MFA sign in flow using `startActivityForSignInWithProvider`

See original GitHub issue

Environment

  1. com.google.firebase:firebase-auth:21.0.1
  2. com.google.android.gms:play-services-auth:19.0.0
  3. Android 11
  4. Google Identity platform
  5. Custom OIDC Provider (any)

The problem

We are integrating with our customers existing identity stores using the Google Cloud Identity platform. Some of our customers require MFA using various MFA apps. We are using the Android SDK method startActivityForSignInWithProvider (described here). Now this works great on iOS and in the browser. But as implemented currently, it is impossible for a user to complete a MFA sign in flow using a custom provider, on Android, that utilizes a MFA app that is installed on the same device.

This is because the browser window opened by the SDK to complete the OAuth flow closes, as soon as a user tries to switch tasks. So any attempt to switch to the MFA app, either to copy a code or to approve the sign in request, kills the sign in flow. See attached video for a demonstration of the problem (https://user-images.githubusercontent.com/4655446/122409397-19f94800-cf51-11eb-9c23-4843de51fbf6.mp4).

Our hypothesis is that the flags used to open the browser window are wrong. See https://github.com/openid/AppAuth-Android/issues/106 and https://github.com/openid/AppAuth-Android/pull/109.

Steps to reproduce:

  1. Configure a custom identity provider using Google Identity Provider (SAML or OIDC).
  2. Make sure your custom third party identity server enforces MFA using some authenticator app
  3. Start login flow using startActivityForSignInWithProvider
  4. Switch tasks

Critical

This is slowly becoming a critical issue as many of our enterprise customers are reporting issues for their employees that use Android. Given that the fix is likely easy, hoping for a quick resolution

Issue Analytics

  • State:closed
  • Created 2 years ago
  • Reactions:4
  • Comments:10 (3 by maintainers)

github_iconTop GitHub Comments

6reactions
samritcommented, Jul 15, 2021

@rosalyntan Is there a workaround we could use. This is a pretty major issue for us.

3reactions
rosalyntancommented, Jun 21, 2021

(Googler-only internal tracking bug: b/191682367)

Read more comments on GitHub >

github_iconTop Results From Across the Web

Firebase authentication via microsoft - Login tab not showing
We use Firebase Auth to link Microsoft login for our Android app. ... to only have one environment for Firebase so this was...
Read more >
Where Do I report an AzureB2C Bug invloving SignIn User ...
Where Do I report an AzureB2C Bug invloving SignIn User Flow's "Self-service Password Reset" with MFA enabled Requiring Verification Email Twice ...
Read more >
Troubleshooting common issues with Azure Multi-Factor ...
Solution · Receiving an Azure MFA login request that I did not initiate · Unable to scan the QR code to enroll in...
Read more >
Firebase Authentication
Firebase Authentication lets you add an end-to-end identity solution to your app ... the UI flows for signing in users with email addresses...
Read more >
Enable MFA with Session Security Levels - Salesforce Help
To do so, require a High Assurance session security level on user profiles ... Note When MFA is enabled for a site, admins...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found