Skip to content
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

Android: Unable to set BW as passkey provider #3253

Open
1 task done
mimi89999 mannequin opened this issue May 18, 2024 · 47 comments
Open
1 task done

Android: Unable to set BW as passkey provider #3253

mimi89999 mannequin opened this issue May 18, 2024 · 47 comments
Labels
bug Something isn't working

Comments

@mimi89999
Copy link
Mannequin

mimi89999 mannequin commented May 18, 2024

Steps To Reproduce

  1. Go to Bitwarden Settings
  2. Click on Passkey Management
  3. Click on Continue in the Set BW as your passkey provider dialog

Expected Result

Should be able to set BW as passkey provider somewhere and use passkeys stored in BW

Actual Result

There is no such option and it's impossible to set BW as passkey provider

Screenshots or Videos

Screenshot_20240518-124503

Bitwarden.Passkeys.configuration.webm

Additional Context

No response

Operating System

Android

Operating System Version

14

Device

Sony Xperia 5 V (XQ-DE54)

Build Version

2024.4.1 (10283)

Beta

  • Using a pre-release version of the application.
@mimi89999 mimi89999 mannequin added the bug Something isn't working label May 18, 2024
@SergeantConfused
Copy link

Hi @mimi89999,

Thank you for this report. Just to make sure that you and I are on the same page, did you perform all the steps outlined in the documentation?

Thank you,

@aamadorj
Copy link
Mannequin

aamadorj mannequin commented May 18, 2024

BW was working as passkey provider on my Pixel 6 with latest stock Android, but then Chromium 125 was released and the "Enable 3rd party passkey providers" and "Enable for Google Password Manager and 3rd party passkeys" flags disappeared. Since then, every time a passkey is going to created, Google Password Manager jumps in, with no option to use BW

@mimi89999
Copy link
Mannequin Author

mimi89999 mannequin commented May 18, 2024

I followed the doc except that I don't have a Passkey management option under autofill nor anywhere else in passwords and accounts

Screenshot_20240518-144531.png

@NickCao
Copy link
Mannequin

NickCao mannequin commented May 19, 2024

BW was working as passkey provider on my Pixel 6 with latest stock Android, but then Chromium 125 was released and the "Enable 3rd party passkey providers" and "Enable for Google Password Manager and 3rd party passkeys" flags disappeared. Since then, every time a passkey is going to created, Google Password Manager jumps in, with no option to use BW

Try setting these flags:

image

@msiqx9
Copy link
Mannequin

msiqx9 mannequin commented May 19, 2024

Try setting these flags:

Setting these flags does not solve the problem for me.

@aamadorj
Copy link
Mannequin

aamadorj mannequin commented May 20, 2024

I first enabled the "Temporarily unexpire M124 flags" flag, relaunched latest Brave Browser (based on Chromium 125) and finally I enabled the "Android Credential Management for passkeys" flag with the option "Enable for Google Password Manager and 3rd party passkeys". It was a complete success and I now BW is jumping in when I need to create a passkey or use one. Thanks, @NickCao.

@SergeantConfused
Copy link

Hello everyone,

Thank you all for your input. For anyone that still is not being prompted to use Bitwarden to store a passkey (not 2FA) from a website via the browser on Android, could you please navigate to Settings > Google > Autofill > Autofill with Google and let me know if this function is activated? If it is, could you please turn it off and then perform these steps again, and let me know if that helps?

Thank you in advance,

@mimi89999
Copy link
Mannequin Author

mimi89999 mannequin commented May 20, 2024

Hello,

Autofill with Google was disabled on my device

Screenshot_20240520-150145.png

@aamadorj
Copy link
Mannequin

aamadorj mannequin commented May 20, 2024

Autofill with Google is disabled on my Pixel 6.

@msiqx9
Copy link
Mannequin

msiqx9 mannequin commented May 20, 2024

...could you please navigate to Settings > Google > Autofill > Autofill with Google and let me know if this function is activated? If it is, could you please turn it off and then perform these steps again, and let me know if that helps?

Autofill with Google is disabled and in Autofill service it is Bitwarden that is selected. Nevertheless, whenever a Passkey is needed in the Chrome browser, Google steps in and says there are no Passkeys.

My device is OnePlus with Android 14.0 and Bitwarden 2024.4.1. When I go into Bitwarden > Settings > Auto-fill > Passkey management, I get taken to a Users & accounts page which has nothing to do with Passkeys. This is a bug.

@SergeantConfused
Copy link

Hello @mimi89999 and @msiqx9,

To confirm, did the steps in this comment assist in getting Bitwarden to be presented as an option when attempting to save or use a passkey on Android 14?

Please remember that you'd need to first activate the (Temporarily unexpire M124 flags) flag, restart Chrome, and then activate the (Android Credential Management for passkeys) flag, and then follow the rest of the steps outlined in the documentation.

Thank you in advance,

@whiskerz007
Copy link
Mannequin

whiskerz007 mannequin commented May 21, 2024

I have followed the instructions to enable passkeys in Chrome v125. While my BW vault is locked, attempting to sign in with a passkey will prompt me to unlock BW and then list available passkeys. Every subsequent sign in attempt using passkeys will bring up Google passkey manager without BW options. Opening BW and manually locking the vault will then allow me to use BW again.

@msiqx9
Copy link
Mannequin

msiqx9 mannequin commented May 21, 2024

To confirm, did the steps in this comment assist in getting Bitwarden to be presented as an option when attempting to save or use a passkey on Android 14?

Did these steps. No, Bitwarden is not presented as an option. On attempting to use a passkey, I get a small window with a Google key logo saying "No passkeys available".

Please remember that you'd need to first activate the (Temporarily unexpire M124 flags) flag, restart Chrome, and then activate the (Android Credential Management for passkeys) flag, and then follow the rest of the steps outlined in the documentation.

I have carefully followed these steps perhaps 10 times in the past 24 hours without being offered passkeys stored in Bitwarden. I am successfully using Bitwarden stored passkeys in Windows 11 and on my iPad. I am also able to use passkeys on my Android device using the QR code method with my iPad/Bitwarden camera.

@rehannali
Copy link
Mannequin

rehannali mannequin commented May 31, 2024

Hi, I have followed the steps available on site, and it offered me to use passkey from bitwarden, but I'm stuck on locking an unlocking mechanism. I clicked on unlocked, verified biometrics, and it says, unlock.
If I set it up to value other than immediately, Google passkey showed and gives me a message no passkey available.

@danielhass
Copy link
Mannequin

danielhass mannequin commented Jun 4, 2024

I followed the steps from the docs and verified that Autofill with Google is disabled. Still only getting Google Passkey prompts. Didn't manage to get the Bitwarden prompt once.

If there is any further information that would provide value to the devs (e.g. detailed versions, logcat stuff or similar) please let me know. Happy to share anything that helps to remove these issues.

@msiqx9
Copy link
Mannequin

msiqx9 mannequin commented Jun 6, 2024

I've just updated the Android Bitwarden app to 2024.5.1 beta and this problem continues.

@mimi89999
Copy link
Mannequin Author

mimi89999 mannequin commented Jun 9, 2024

Hello,

I installed the Bitwarden apk on the emulator and I noticed that the Passwords & accounts screen is very different form the screen on my device even though both have Android 14. First screen is form the emulator and the second one is from my Sony Xperia 5 V (XQ-DE54).

Screenshot_1717949553
Screenshot_2024-06-09_181830

@mimi89999
Copy link
Mannequin Author

mimi89999 mannequin commented Jun 11, 2024

Hello,

I investigated the issue further and found out that the Settings view is conditional. Basically, it depends on the device feature being enabled. The emulator has it enabled, but my device doesn't:

Emulator:

michel@debian:~$ adb shell pm has-feature android.software.credentials
true

My device:

michel@debian:~$ adb shell pm has-feature android.software.credentials
false

I wrote more details in the issue sonyxperiadev/bug_tracker#830

@mimi89999
Copy link
Mannequin Author

mimi89999 mannequin commented Jun 11, 2024

Did others with the same issue check whether that feature is enabled? If it's a more common problem, maybe we should find a way to reach device manufacturers an report it to them?

@fuxii
Copy link
Mannequin

fuxii mannequin commented Jun 11, 2024

Thanks for your investigation! On my phone it's also not enabled (Nothing Phone 2, Android 14).

@Korel
Copy link
Mannequin

Korel mannequin commented Jun 11, 2024

Did others with the same issue check whether that feature is enabled? If it's a more common problem, maybe we should find a way to reach device manufacturers an report it to them?

Android 14 on Motorola Edge 40 (just updated it with recovery tool to be able to use passkeys), my settings also looks like yours (passwords is google and autofill bitwarden, no passkey option) and "adb shell pm has-feature android.software.credentials" returns false...

@coolssor
Copy link
Mannequin

coolssor mannequin commented Jun 16, 2024

To throw a spanner in the works...

I checked through ADB for that value:

coolssor@fedora:~$ adb shell pm has-feature android.software.credentials
true

Model: Google Pixel 8 Pro
Android version: 15
Build: AP31.240426.023.B4

Chrome version: 125.0.6422.165

Bitwarden app version: 2024.5.1
Session timeout: 15 minutes (seen this be an issue for some)

  1. Enabled "Temporarily unexpire M124 flags." restarted Chrome (force stop from settings), set "Android Credential Management for passkeys" flag to "Enabled for 3rd party passkeys" (this is not called "Enabled for 3rd party passkey providers" as it says in the documentation).
    • I have no other flags enabled.
  2. Set my Preferred service in "Passwords, passkeys and accounts" to Microsoft Authenticator, then back to Bitwarden.
  3. Rebooted device
  4. Removed all passkeys and passwords from 4 Google accounts and local device saved credentials in Google Password Manager.
  5. Tested using https://passkeys.io, as per the screenshot in the documentation. This throws up a Google Password Manager request to save a passkey.
  6. Selecting "Use a different device" only shows "USB security key" and "Use a different phone or tablet"

@mimi89999
Copy link
Mannequin Author

mimi89999 mannequin commented Jun 16, 2024

@coolssor what do you see in the Passwords & accounts screen?

@coolssor
Copy link
Mannequin

coolssor mannequin commented Jun 16, 2024

@coolssor what do you see in the Passwords & accounts screen?

Screenshot_20240616-203808.png

Hey, I see this (censored the section for my accounts for privacy).

@danielhass
Copy link
Mannequin

danielhass mannequin commented Jun 17, 2024

@mimi89999 as suspected:

$ adb shell pm has-feature android.software.credentials
false

So far I haven't been able to get the BW Passkey select screen once on my device. Maybe this is the reason.

@msiqx9
Copy link
Mannequin

msiqx9 mannequin commented Jun 18, 2024

I just updated the Android Bitwarden app to 2024.6.0 but this doesn't fix the Passkey problem.

@coolssor
Copy link

Can confirm that this is still affecting me on Android 15 Beta 3 (AP31.240517.022), with app versions 2024.6.0 and 2024.6.1 (new beta app rewrite).

Since I use Vaultwarden to self-host my vault, and the new beta app only supports official hosts (.com and .eu), I was able to test with both Vaultwarden and official Bitwarden hosts. Both show the same behaviour, so it doesn't appear to be related to that.

On Android 15 Beta 3 using 2024.6.0 I now see an unlock prompt when my vault is locked:

Screenshot_20240623-163631.png

However when I unlock it, it goes back to the same login prompt again, making it appear as though it's still locked. Tapping Continue opens Bitwarden for a split second then closes it again, since it's already unlocked. Closing the prompt and reopening it, now that the vault is unlocked, brings me back to the default Google Password Manager one:

Screenshot_20240623-163641.png

Using 2024.6.1 just doesn't show the unlock prompt at all, showing the same behaviour as with previous versions (immediately opening Google Password Manager's passkeys).

The new Android beta has certainly brought the functionality closer to a working state, but not quite there yet.

@mimi89999
Copy link

Hello,

I reported this issue to Google hoping that maybe they could do something about it: https://issuetracker.google.com/issues/349310440

@msiqx9
Copy link

msiqx9 commented Jul 2, 2024

The silence from Bitwarden is suggesting to me that this passkey problem in Android will never be fixed. I have started saving passkeys in Google Password Manager...

@opotonniee
Copy link

opotonniee commented Jul 12, 2024

I followed the instructions from https://bitwarden.com/help/auto-fill-android/#setup-bitwarden-for-use-with-passkeys, but in the chrome://flags page, setting the "Android Credential Management for passkeys" value to:

"Enabled for 3rd party passkey providers"

did not route passkey requests to Bitwarden on my Pixel 6. I changed it to:

"Enabled for Google Password Manager and 3rd party passkeys"

And now Bitwarden is used by Chrome (and Brave) v126 to create and use my passkeys.

@msiqx9
Copy link

msiqx9 commented Jul 13, 2024

I tried this on my OnePlus phone with Android 14 and Chrome browser but it didn’t work for me.

@Korel
Copy link

Korel commented Jul 13, 2024

I think there isn't much we can expect from Bitwarden since the OEMs forget or intentionally don't enable the necessary feature for this to work, as is described by the issue @mimi89999 created: https://issuetracker.google.com/issues/349310440. Unless Bitwarden can find a workaround (which is not likely), I guess this issue can be closed. I also asked my phones OEM from their forums and no answer yet...

@Hannnes1
Copy link

I think there isn't much we can expect from Bitwarden since the OEMs forget or intentionally don't enable the necessary feature for this to work, as is described by the issue @mimi89999 created: https://issuetracker.google.com/issues/349310440. Unless Bitwarden can find a workaround (which is not likely), I guess this issue can be closed. I also asked my phones OEM from their forums and no answer yet...

I'm doubt this is the (only) issue. I, and several others, have this issue on devices where this feature is enabled (Pixel phones for example).

@coolssor
Copy link

I followed the instructions from https://bitwarden.com/help/auto-fill-android/#setup-bitwarden-for-use-with-passkeys, but in the chrome://flags page, setting the "Android Credential Management for passkeys" value to:

"Enabled for 3rd party passkey providers"

did not route passkey requests to Bitwarden on my Pixel 6. I changed it to:

"Enabled for Google Password Manager and 3rd party passkeys"

And now Bitwarden is used by Chrome (and Brave) v126 to create and use my passkeys.

Confirmed this resolved the issue for me 🙌

@wheeliemonster
Copy link

I have Bitwarden Beta and non-beta installed on Pixel 7 with latest Android 15 Beta.
I could not get anything working using the Bitwarden Beta as my preferred passkey provider having followed all required steps many times.
I then enabled Bitwarden non-beta under Additional Services in the 'Passwords, Passkeys and accounts' settings screen and everything came to life using Chrome.
I've since been able to change the Preferred Service to Bitwarden non-beta and it still functions. Maybe it helps someone...

@Spir0u
Copy link

Spir0u commented Aug 5, 2024

I had the same problem, but sometime it worked. I tested with this website: webauthn.io
What I figured is that in the advanced settings the Disoverable Credential field has to be set to Required, otherwise the google or even a device only storage(?) is coming up. The Authentication button always shows the Bitwarden setting.
Tested on Firefox (only works when the bitwarden plugin is disabled).

@Ri-Dearg
Copy link

I followed the instructions from https://bitwarden.com/help/auto-fill-android/#setup-bitwarden-for-use-with-passkeys, but in the chrome://flags page, setting the "Android Credential Management for passkeys" value to:
"Enabled for 3rd party passkey providers"
did not route passkey requests to Bitwarden on my Pixel 6. I changed it to:
"Enabled for Google Password Manager and 3rd party passkeys"
And now Bitwarden is used by Chrome (and Brave) v126 to create and use my passkeys.

Confirmed this resolved the issue for me 🙌

Samsung Galaxy S24
Brave v126

(there was no" temporarily un expire M124..." flags anymore.)

Confirming that this change also resolved the issue for me.

@msiqx9
Copy link

msiqx9 commented Aug 12, 2024

I tried this again today and it doesn't work for me.
OnePlus Nord CE 3 Lite 5G
Android 14 with July 2024 update
Chrome v127

@xomanuel
Copy link

I followed the instructions from https://bitwarden.com/help/auto-fill-android/#setup-bitwarden-for-use-with-passkeys, but in the chrome://flags page, setting the "Android Credential Management for passkeys" value to:

"Enabled for 3rd party passkey providers"

did not route passkey requests to Bitwarden on my Pixel 6. I changed it to:

"Enabled for Google Password Manager and 3rd party passkeys"

And now Bitwarden is used by Chrome (and Brave) v126 to create and use my passkeys.

This method worked for me

@Xyaren
Copy link

Xyaren commented Aug 21, 2024

Seems like OnePlus changed something in their Android flavour that causes this issue.

No success on my OP 9 Pro

@msiqx9
Copy link

msiqx9 commented Sep 2, 2024

I dug out my old OnePlus 5 where I had previously wiped the OS and installed LineageOS 21 (based on Android 14). This phone has Bitwarden 2024.8.0 (beta) and Chrome browser v127 installed and "Enabled for Google Password Manager and 3rd party passkeys".

I had success with WebAuth.io with the passkey being stored and used from Bitwarden.

@Xyaren
Copy link

Xyaren commented Sep 2, 2024

Yes, it probably wouldn't work with Oxygen/ColorOS tough :(

@charlesmadere
Copy link

charlesmadere commented Sep 18, 2024

This bug has returned on Android (effecting both Firefox and Chrome for me). The steps outline in the documentation here do not work: https://bitwarden.com/help/auto-fill-android/#using-passkeys

However, it's also broken on desktop browsers too (Firefox and Chrome).

@IamGimli
Copy link

I'm having the same issue on a Motorola G Stylus (2024) with Chrome version 131 and Brave version 1.73 (Chromium 131).

None of the suggestions mentioned above made a difference. Settings page also only shows Google as a selection for Passwords management (disabled) and Bitwarden is selected for Autofil (as well as all other Bitwarden fill-in functikns enabled).

@msiqx9
Copy link

msiqx9 commented Nov 26, 2024

For me this seems to be an issue within AndroidOS where the OS is customised by the various phone manufacturers. I am hoping this is going to be resolved on the move to Android 15.

@IamGimli
Copy link

That would make sense except Motorola uses an Android version that has pretty much straight up AOSP. The only customizations they do is for patch delivery and to address specific hardware.

It is possible that the misconfiguration is within AOSP and therefore is the default for most manufacturers.

@big-chungus69420
Copy link

an issue within AndroidOS where the OS is customised by the various phone manufacturers. I am hoping this is going to be resolved on the move to Android 15.

same tbh, android 14's passkey implementation left a lot of work to be done by the OEMs and thats the reason why theres such a huge disparity in how passkey managers work in pixel OS, OneUI or Oxygen/Color OS

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests