[GH-ISSUE #5274] Implement Chrome's new Credential Manager API for Passkey support #28126

Closed
opened 2026-04-18 11:59:29 -05:00 by GiteaMirror · 7 comments
Owner

Originally created by @AlphaCraft9658 on GitHub (May 28, 2025).
Original GitHub issue: https://github.com/bitwarden/android/issues/5274

Origin

Web (Browser)

Web URL or App name

webauthn.io, passkeys.io

Passkey Action

  • Creating new passkey (Registration)
  • Signing in (Authentication)

Build Information

© Bitwarden Inc. 2015-2025

Version: 2025.4.0 (20100)
📱 samsung SM-X800 🤖 15@35 📦 prod -fdroid
🧱 commit: bitwarden/android/release/2025.04-rc19@bee09de972c3870de0d54a0067996be473ec55c7
💻 build source: bitwarden/android/actions/runs/14536896217/attempts/1

Additional Information

From what I was able to find on the internet, Chrome has implemented a new Credential Manager API for third party password managers. Since then, passkeys stopped working properly. Logging in often doesn't work and creating new passkeys always ends up in the Google password manager forcible, or likely because of a missing implementation of this new API. Correct me if I'm wrong, but there is definitely something wrong, that causes Passkeys to not properly work on up-to-date Chromium-based browsers on Android, which looks like it is a bug within the Bitwarden client.

Issue Tracking Info

  • I understand that work is tracked outside of Github. A PR will be linked to this issue should one be opened to address it, but Bitwarden doesn't use fields like "assigned", "milestone", or "project" to track progress.
Originally created by @AlphaCraft9658 on GitHub (May 28, 2025). Original GitHub issue: https://github.com/bitwarden/android/issues/5274 ### Origin Web (Browser) ### Web URL or App name webauthn.io, passkeys.io ### Passkey Action - [x] Creating new passkey (Registration) - [x] Signing in (Authentication) ### Build Information © Bitwarden Inc. 2015-2025 Version: 2025.4.0 (20100) 📱 samsung SM-X800 🤖 15@35 📦 prod -fdroid 🧱 commit: bitwarden/android/release/2025.04-rc19@bee09de972c3870de0d54a0067996be473ec55c7 💻 build source: bitwarden/android/actions/runs/14536896217/attempts/1 ### Additional Information From what I was able to find on the internet, Chrome has implemented a new Credential Manager API for third party password managers. Since then, passkeys stopped working properly. Logging in often doesn't work and creating new passkeys always ends up in the Google password manager forcible, or likely because of a missing implementation of this new API. Correct me if I'm wrong, but there is definitely something wrong, that causes Passkeys to not properly work on up-to-date Chromium-based browsers on Android, which looks like it is a bug within the Bitwarden client. ### Issue Tracking Info - [x] I understand that work is tracked outside of Github. A PR will be linked to this issue should one be opened to address it, but Bitwarden doesn't use fields like "assigned", "milestone", or "project" to track progress.
GiteaMirror added the bug-passkeyapp:password-manager labels 2026-04-18 11:59:29 -05:00
Author
Owner

@bitwarden-bot commented on GitHub (May 28, 2025):

Thank you for your report! We've added this to our internal board for review.
ID: PM-22142

<!-- gh-comment-id:2915717431 --> @bitwarden-bot commented on GitHub (May 28, 2025): Thank you for your report! We've added this to our internal board for review. ID: PM-22142
Author
Owner

@SaintPatrck commented on GitHub (May 28, 2025):

Hi @AlphaCraft9658

Passkeys have been supported and working in Chrome for quite some time now. Chrome recently (v136+ I believe) silently opted everyone into only using Google Password Manager and introduced a new Setting that you must change in order to use third-party password managers. Could you check if this is the root cause of Bitwarden no longer showing?

To access the new setting; open Chrome, navigate to "Settings" > "Autofill services" > select "Autofill using another service".

<!-- gh-comment-id:2916274383 --> @SaintPatrck commented on GitHub (May 28, 2025): Hi @AlphaCraft9658 Passkeys have been supported and working in Chrome for quite some time now. Chrome recently (v136+ I believe) silently opted everyone into only using Google Password Manager and introduced a new Setting that you **must** change in order to use third-party password managers. Could you check if this is the root cause of Bitwarden no longer showing? To access the new setting; open Chrome, navigate to "Settings" > "Autofill services" > select "Autofill using another service".
Author
Owner

@AlphaCraft9658 commented on GitHub (May 28, 2025):

Hi @AlphaCraft9658

Passkeys have been supported and working in Chrome for quite some time now. Chrome recently (v136+ I believe) silently opted everyone into only using Google Password Manager and introduced a new Setting that you must change in order to use third-party password managers. Could you check if this is the root cause of Bitwarden no longer showing?

To access the new setting; open Chrome, navigate to "Settings" > "Autofill services" > select "Autofill using another service".

I can't seem to find this on Brave, but could that change be present in other Chromium-based Browsers too?

<!-- gh-comment-id:2916349923 --> @AlphaCraft9658 commented on GitHub (May 28, 2025): > Hi @AlphaCraft9658 > > Passkeys have been supported and working in Chrome for quite some time now. Chrome recently (v136+ I believe) silently opted everyone into only using Google Password Manager and introduced a new Setting that you **must** change in order to use third-party password managers. Could you check if this is the root cause of Bitwarden no longer showing? > > To access the new setting; open Chrome, navigate to "Settings" > "Autofill services" > select "Autofill using another service". I can't seem to find this on Brave, but could that change be present in other Chromium-based Browsers too?
Author
Owner

@AlphaCraft9658 commented on GitHub (May 28, 2025):

Hi @AlphaCraft9658

Passkeys have been supported and working in Chrome for quite some time now. Chrome recently (v136+ I believe) silently opted everyone into only using Google Password Manager and introduced a new Setting that you must change in order to use third-party password managers. Could you check if this is the root cause of Bitwarden no longer showing?

To access the new setting; open Chrome, navigate to "Settings" > "Autofill services" > select "Autofill using another service".

The only thing I could find was this flag, but enabling it does not appear to resolve the issue.

Screenshot_20250528_165139_Brave.jpg

<!-- gh-comment-id:2916642558 --> @AlphaCraft9658 commented on GitHub (May 28, 2025): > Hi @AlphaCraft9658 > > Passkeys have been supported and working in Chrome for quite some time now. Chrome recently (v136+ I believe) silently opted everyone into only using Google Password Manager and introduced a new Setting that you **must** change in order to use third-party password managers. Could you check if this is the root cause of Bitwarden no longer showing? > > To access the new setting; open Chrome, navigate to "Settings" > "Autofill services" > select "Autofill using another service". The only thing I could find was this flag, but enabling it does not appear to resolve the issue. ![Screenshot_20250528_165139_Brave.jpg](https://github.com/user-attachments/assets/7c7e3962-6881-4e0c-8b47-eaa58daefbb7)
Author
Owner

@SaintPatrck commented on GitHub (May 28, 2025):

Ah. I assumed you were using Chrome from the description. I'm unsure how or if the change will effect other Chromium browsers. I do know that Brave has its own set of issues with traditional autofill so I wouldn't be surprised if there are similar nuances with passkeys. For example, we identified an issue when using Brave on GrapheneOS that requires a specific combination of brave://flags to be toggled for autofill to work with any password manager. However, on stock versions of Android those flags did not have to be enabled. At least manually. It's not directly tied to passkeys, but can you try the suggested workaround from this comment and let me know if it changes anything? It may require a restart of Bitwarden and Brave, just to be safe.

As for passkeys specifically, I'm seeing inconsistent behavior even on different versions of stock Android when using Brave (version 1.78.102 from Google Play Store). When I attempt to create or authenticate a passkey with Brave on stock Android 15 it is forcing me to use Google Password Manager but on stock Android 16 it provides the option to use Bitwarden or another credential provider as expected. On the stock Android 15 device, I tried enabling all of the relevant Brave flags I could find, including expired ones from M134 and M135, but had no success in getting Bitwarden to be shown as an option.

A quick check with the debugger attached confirmed that Bitwarden is not receiving the initial credential provider request from Brave on stock Android 15. Chrome, on the same device, does invoke Bitwarden. This leads me to believe the issue is with Brave's implementation which unfortunately means resolution is out of our control. I recommend opening a ticket with Brave, if one does not already exist. If you do, please provide us a link and any information you may find.

<!-- gh-comment-id:2916871518 --> @SaintPatrck commented on GitHub (May 28, 2025): Ah. I assumed you were using Chrome from the description. I'm unsure how or if the change will effect other Chromium browsers. I do know that Brave has its own set of issues with traditional autofill so I wouldn't be surprised if there are similar nuances with passkeys. For example, we identified an issue when using Brave on GrapheneOS that requires a specific combination of `brave://flags` to be toggled for autofill to work with **any** password manager. However, on stock versions of Android those flags did not have to be enabled. At least manually. It's not directly tied to passkeys, but can you try the suggested workaround from [this comment](https://github.com/bitwarden/android/issues/4586#issuecomment-2904275559) and let me know if it changes anything? It may require a restart of Bitwarden and Brave, just to be safe. As for passkeys specifically, I'm seeing inconsistent behavior even on different versions of stock Android when using Brave (version 1.78.102 from Google Play Store). When I attempt to create or authenticate a passkey with Brave on stock Android 15 it is forcing me to use Google Password Manager but on stock Android 16 it provides the option to use Bitwarden or another credential provider as expected. On the stock Android 15 device, I tried enabling all of the relevant Brave flags I could find, including expired ones from M134 and M135, but had no success in getting Bitwarden to be shown as an option. A quick check with the debugger attached confirmed that Bitwarden is not receiving the initial credential provider request from Brave on stock Android 15. Chrome, on the same device, does invoke Bitwarden. This leads me to believe the issue is with Brave's implementation which unfortunately means resolution is out of our control. I recommend opening a ticket with Brave, if one does not already exist. If you do, please provide us a link and any information you may find.
Author
Owner

@SaintPatrck commented on GitHub (May 28, 2025):

@AlphaCraft9658 After enabling the flag in your screenshot relaunch Brave, navigate to Settings > Autofill Services (between "Site settings" and "Downloads") > and select "Autofill using another service" and relaunch Brave again. Doing this causes the Android 15 device to start invoking Bitwarden for passkeys. I was able to confirm this working on several sites. Hopefully it fixes the issue for you as well. 🤞

Credit goes to linucksrox for reporting back and including the location.

<!-- gh-comment-id:2917099632 --> @SaintPatrck commented on GitHub (May 28, 2025): @AlphaCraft9658 After enabling the flag in your screenshot relaunch Brave, navigate to Settings > Autofill Services (between "Site settings" and "Downloads") > and select "Autofill using another service" and relaunch Brave again. Doing this causes the Android 15 device to start invoking Bitwarden for passkeys. I was able to confirm this working on several sites. Hopefully it fixes the issue for you as well. 🤞 Credit goes to [linucksrox](https://github.com/bitwarden/android/issues/5117#issuecomment-2916484582) for reporting back and including the location.
Author
Owner

@AlphaCraft9658 commented on GitHub (May 28, 2025):

@AlphaCraft9658 After enabling the flag in your screenshot relaunch Brave, navigate to Settings > Autofill Services (between "Site settings" and "Downloads") > and select "Autofill using another service" and relaunch Brave again. Doing this causes the Android 15 device to start invoking Bitwarden for passkeys. I was able to confirm this working on several sites. Hopefully it fixes the issue for you as well. 🤞

Credit goes to linucksrox for reporting back and including the location.

While it wasn't the flag I found, this solved my issue. It's weird that Brave doesn't normally allow for third party autofill services. Thanks for your assistance, this issue/bug is now resolved.

<!-- gh-comment-id:2917237114 --> @AlphaCraft9658 commented on GitHub (May 28, 2025): > @AlphaCraft9658 After enabling the flag in your screenshot relaunch Brave, navigate to Settings > Autofill Services (between "Site settings" and "Downloads") > and select "Autofill using another service" and relaunch Brave again. Doing this causes the Android 15 device to start invoking Bitwarden for passkeys. I was able to confirm this working on several sites. Hopefully it fixes the issue for you as well. 🤞 > > Credit goes to [linucksrox](https://github.com/bitwarden/android/issues/5117#issuecomment-2916484582) for reporting back and including the location. While it wasn't the flag I found, this solved my issue. It's weird that Brave doesn't normally allow for third party autofill services. Thanks for your assistance, this issue/bug is now resolved.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/android#28126