Web Authentication - Support local (non-synchronised) credentials in macOS Touch ID
Categories
(Core :: DOM: Web Authentication, enhancement, P2)
Tracking
()
| Webcompat Priority | P2 |
People
(Reporter: djc, Assigned: jschanck)
References
(Depends on 1 open bug)
Details
(Keywords: parity-chrome, webcompat:platform-bug, Whiteboard: [mac:integration])
I read about webauthn on Windows with biometrics today. I'm on a MacBook Pro with Touch ID, so I'm jealous now. Please consider implementing for macOS.
Comment 1•7 years ago
|
||
https://github.com/github/SoftU2F lets you do this today. I agree, it'd be nicer to have it work with Firefox Sync.
Bug 1529973 is about having a soft token. Combining that with our platform-level Data-at-Rest support from Bug 1464828 gets us most of the way to what you're asking for.
This is a cool thing, but marking it P4 for now; we'll have to pick this up after CTAP2 and after making the soft token a real thing.
Comment 3•6 years ago
|
||
There are a lot of developments on in the field of Web Authentication. iOS 13.3 wil start supporting FIDO2 roaming keys. Chrome supports platform authenticators on all desktop environments. Yet firefox only supports platform authenticators on Windows. Is the implementation for macOS that different from Windows? Can feature parity for Firefox on all desktop platforms be achieved anytime soon? Or should we not expect this within the year? In my opinion, Firefox supporting platform authenticators on all environments is a crucial step towards a passwordless future.
Comment 4•6 years ago
|
||
Note: This comment really should be on bug 1530370.
I'm currently hoping to work on WebAuthn implementation again in Q1 2020. I've had to take on other projects in 2019, particularly picking up maintainership of the NSS crypto library and some fun WebPKI stuff, but so far everything looks good for me to resume work bringing CTAP2 support to the other platforms in authenticator-rs [0] and do the rewrite of the Firefox-side needed to support that.
[0] https://bugzilla.mozilla.org/show_bug.cgi?id=1530370
[0a] CTAP2 branch here with prototype Linux support: https://github.com/mozilla/authenticator-rs/tree/ctap2
| Comment hidden (me-too) |
| Comment hidden (me-too) |
| Comment hidden (me-too) |
Looks like https://github.com/github/SoftU2F has been deprecated and they now recommend using Chrome or Safari :(
| Comment hidden (me-too) |
| Comment hidden (advocacy) |
| Comment hidden (advocacy) |
Comment 14•5 years ago
|
||
I'm also curious as to whether this could be made a priority. Are there any huge blockers here or is it just a matter of someone with a working build environment from putting in the time?
The issue with SoftU2F iiuc is that it had to fake a USB HID device at the OS level and thus would require a significant rewrite to be compatible with Apple's new mechanism for extending such things. Apparently it's required disabling SIP for quite some time before that, which wasn't exactly that great of an idea or terribly user-friendly either.
Chrome, by adding direct support for it instead of making users mess around with fake hardware, was able to use much simpler public macOS APIs to store the private keys in the secure enclave and then does the rest itself: https://bugs.chromium.org/p/chromium/issues/detail?id=678128 Sounds like Firefox already has (or had?) a basic Soft Token implementation working already (https://bugzilla.mozilla.org/show_bug.cgi?id=1529973) โ could it be polished up for end-users and extended to work with Touch ID?
| Comment hidden (me-too) |
| Comment hidden (me-too) |
| Comment hidden (me-too) |
| Comment hidden (advocacy) |
| Comment hidden (me-too) |
| Comment hidden (advocacy) |
| Comment hidden (me-too) |
| Comment hidden (me-too) |
| Comment hidden (me-too) |
| Comment hidden (advocacy) |
| Comment hidden (me-too) |
Comment 26•5 years ago
|
||
You can also use the vote button, it's probably a better way to let the folks at Mozilla know about this:
Comment 27•5 years ago
|
||
(In reply to Mahdyar Hasanpour from comment #26)
You can also use the vote button, it's probably a better way to let the folks at Mozilla know about this:
I was going to ask how, but I found it. For anyone else wondering, scroll to the top and open the "Details" view.
Updated•4 years ago
|
Updated•4 years ago
|
Comment 29•4 years ago
|
||
Context for above: I recommend(ed) adding parity-chrome as well, since I had working touchID support with our Duo for a couple years when using Chrome macOS.
| Comment hidden (advocacy) |
| Comment hidden (me-too) |
| Comment hidden (me-too) |
| Comment hidden (me-too) |
| Comment hidden (advocacy) |
| Comment hidden (advocacy) |
Updated•4 years ago
|
| Comment hidden (me-too) |
| Comment hidden (me-too) |
| Comment hidden (me-too) |
Comment 41•4 years ago
|
||
SoftU2F was previously proposed as a workaround, but it seems to no longer work due to macOS's many security changes in recent years. Does anyone currently have a workaround, or does no such alternative exist?
Also, is there any way the community can help implement this? If I knew how to, I would be happy to do so myself. However, for now, I am left feeling both a bit helpless and a bit hopeless. I wonder why this important feature โ which has existed in both Safari and Chrome for years โ has been paid such little attention by Mozilla,ย an organization supposedly committed to advancing privacy & security on the web.
| Comment hidden (me-too) |
| Comment hidden (advocacy) |
Updated•4 years ago
|
Updated•4 years ago
|
Updated•4 years ago
|
Comment 44•3 years ago
|
||
It seems on some SSO login sites, administrators can set them up to require biometric login. That is the case for Twingate VPN for me. The problem is that I can no longer even use Firefox to login to those sites. Even worse, the popup that Firefox shows doesn't even indicate that biometric isn't supported and leaves the user guessing what the problem is. bug 1646274 is a good example of my user experience. The work around of using SoftU2F isn't feasible either since that project seems to have halted development three years ago.
| Comment hidden (advocacy) |
| Comment hidden (advocacy) |
| Comment hidden (off-topic) |
Comment 48•3 years ago
|
||
Hi everyone - it's great to see such interest in this feature. However, bugzilla is where we track our implementation work. It's not a place to discuss features and ask why they haven't shipped yet. We are working on WebAuthn (you can follow other bugs in this component), and we will update this bug when we make progress.
| Assignee | ||
Updated•3 years ago
|
| Comment hidden (off-topic) |
| Comment hidden (off-topic) |
| Comment hidden (off-topic) |
| Comment hidden (advocacy) |
Updated•3 years ago
|
Updated•3 years ago
|
| Comment hidden (advocacy) |
| Comment hidden (advocacy) |
Updated•2 years ago
|
Comment 55•1 year ago
|
||
Hi, all! I noticed that Firefox now supports passkeys and WebAuthn across all platforms
https://connect.mozilla.org/t5/ideas/support-webauthn-passkeys/idc-p/72035/highlight/true#M39085
https://www.mozilla.org/en-US/firefox/122.0/releasenotes/
Is the issue is still relevant in wide sense?
Comment 56•1 year ago
|
||
As per the release notes, Firefox only allows using iCloud Keychain passkeys. Yes, those get unlocked by using TouchID, but no, that is not general support for TouchID:
Other browsers (well, Chrome), allows to choose whether the TouchID operation generates an iCloud-bound credential OR a browser-local one. Both variants use TouchID to unlock the credential once generated.
There is definitely a use case in enterprise environments for Passkeys that are NOT saved in the cloud, for obvious security concerns around handing out the private keys to your enterprise to a cloud vendor. Checked right now: Firefox does not cater for that use case yet.
So yes, from my POV this bug here is still relevant and should be considered closed only once Firefox can work with device-local Passkeys on macOS (unlocked by TouchID).
| Comment hidden (advocacy) |
| Comment hidden (advocacy) |
Updated•1 month ago
|
Comment 59•1 month ago
•
|
||
Updated the summary per Comment 56. Firefox does not directly support creating credentials in an SE or TPM on any platform (only on Windows via platform WebAuthn APIs), and the Linux counterpart of this is Bug 1793854.
I've removed parity-safari, because Safari only supports storing credentials in "Passwords" (iCloud Keychain) since around 2021, even when requesting a platform credential. These are SE-protected but not SE-bound, and already available in Firefox (Bug 1853230).
Chromium still supports SE-bound credentials, when the binary has appropriate entitlements.
One caveat with implementing device-bound credentials in a SE (or TPM) in Firefox (or any other browser) would be that it would not be possible to share them with other apps or browsers on a system, like is possible on Windows 10 with the TPM.
The story is a little better on macOS than Linux, because there's a platform WebAuthn API which supports credential provider plugins. A third-party plugin could store credentials using the local SE, and this would be usable in any app or browser that supports macOS WebAuthn APIs (including Firefox). Some quick searches turned up this example for iOS, but it doesn't store credentials in the SE... it would essentially be a modern version of SoftU2F (mentioned in Comment 1).
Any implementation would also need a way to attest the security and provenance of an SE, otherwise it couldn't be proven to be a multi-factor credential or actually bound to an SE. Solving this will make or break the utility of implementing this for high-security or sensitive environments, and may require extensions to WebAuthn standards.
Description
•