Skip to content

Remove U2F#439

Merged
georgestephanis merged 10 commits intomasterfrom
remove/fido-u2f
Mar 1, 2026
Merged

Remove U2F#439
georgestephanis merged 10 commits intomasterfrom
remove/fido-u2f

Conversation

@georgestephanis
Copy link
Collaborator

As discussed with @jeffpaul with its deprecation we should remove the provider.

@jeffpaul jeffpaul requested a review from kasparsd April 20, 2022 19:51
@jeffpaul jeffpaul added this to the 0.8.0 milestone Apr 20, 2022
@jeffpaul
Copy link
Member

@kasparsd note that this relates to #423 (comment) wherein the next step after removing U2F is the determining the best path forward from here (happy to hear your input there).

@georgestephanis
Copy link
Collaborator Author

So this handles the code change, my only uncertainty at this point is whether we should do something to handle the data / ux.

That being, if someone had U2F enabled, but no other providers, would its sudden absence disable 2fa on their account entirely, and is that a case in which we should force enable an alternative, such as emailed codes so there is still some second factor?

@kasparsd
Copy link
Collaborator

That being, if someone had U2F enabled, but no other providers, would its sudden absence disable 2fa on their account entirely, and is that a case in which we should force enable an alternative, such as emailed codes so there is still some second factor?

Yeah, this is a really important point!

Otherwise this looks good!

@georgestephanis
Copy link
Collaborator Author

@jeffpaul Do you have any thoughts on what the workflow should be if a user only has u2f enabled but no others?

@dziudek
Copy link

dziudek commented May 20, 2022

Hi,

U2F will be removed in v.0.8 but it will be still possible to use physical keys with webauthn? #427

Also - when we can expect v.0.8 release?

@jeffpaul
Copy link
Member

jeffpaul commented Sep 9, 2022

@georgestephanis if a user only has U2F enabled and the plugin is updated to whatever version this removal will be part of (e.g. 0.8.0), then we could possibly go with one of the following:

  • Enable and set Primary on their Email method (this relies on them still having access to the email attached to their profile but at least keeps 2FA active for them)
  • Add a non-dismissable (until resolved) admin notice for affected users directing them to the 2FA portion of their profile to enable a new method (not a huge fan of adding another admin notice to what could be a lengthy list already, but this would be a more graceful yet less 2FA-secure approach)
  • something else I've yet to consider?

What are your thoughts on this?

@jeffpaul jeffpaul modified the milestones: 0.7.2, 0.8.0 Sep 12, 2022
@iandunn
Copy link
Member

iandunn commented Oct 14, 2022

If we end up switching libraries in #427, then I think we could seamlessly migrate the existing U2F keys to the WebAuthn provider.

Update: @mcguffin started a PR for this in #491 🎉

@github-actions
Copy link

github-actions bot commented Feb 18, 2026

The following accounts have interacted with this PR and/or linked issues. I will continue to update these lists as activity occurs. You can also manually ask me to refresh this list by adding the props-bot label.

Unlinked Accounts

The following contributors have not linked their GitHub and WordPress.org accounts: @dziudek.

Contributors, please read how to link your accounts to ensure your work is properly credited in WordPress releases.

If you're merging code through a pull request on GitHub, copy and paste the following into the bottom of the merge commit message.

Unlinked contributors: dziudek.

Co-authored-by: georgestephanis <georgestephanis@git.wordpress.org>
Co-authored-by: masteradhoc <masteradhoc@git.wordpress.org>
Co-authored-by: kasparsd <kasparsd@git.wordpress.org>
Co-authored-by: ravinderk <ravinderk@git.wordpress.org>
Co-authored-by: jeffpaul <jeffpaul@git.wordpress.org>
Co-authored-by: iandunn <iandunn@git.wordpress.org>
Co-authored-by: TimothyBJacobs <timothyblynjacobs@git.wordpress.org>
Co-authored-by: dd32 <dd32@git.wordpress.org>

To understand the WordPress project's expectations around crediting contributors, please review the Contributor Attribution page in the Core Handbook.

Copy link
Collaborator

@masteradhoc masteradhoc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for this PR @georgestephanis!
Can you check my small comments and commit them if its fine for you. the existing screenshots i already renamed so it will match my proposed commit.

Else PR looks good and can be merged. All noted U2F / Fido Texts were removed correctly and appropriate files removed.

georgestephanis and others added 2 commits February 26, 2026 09:50
Co-authored-by: Brian <brian@brianhaas.li>
Co-authored-by: Brian <brian@brianhaas.li>
@georgestephanis georgestephanis dismissed ravinderk’s stale review February 26, 2026 14:51

Has been updated since and mitigated.

aslamdoctor added a commit to aslamdoctor/two-factor that referenced this pull request Mar 1, 2026
FIDO/U2F files will be removed entirely in PR WordPress#439, so changes
to U2F.php and class-two-factor-fido-u2f-admin.php are unnecessary.
@georgestephanis
Copy link
Collaborator Author

#815 broke this from merging cleanly.

Lemme try to rebase.

@georgestephanis
Copy link
Collaborator Author

No more conflicts, I'd like to get this in before something else breaks it. @masteradhoc -- any objections to me just pulling the trigger once the tests clear?

@masteradhoc
Copy link
Collaborator

@georgestephanis Checks have successfully passed. all good from my side to get U2F out :)

@georgestephanis georgestephanis merged commit a778ec9 into master Mar 1, 2026
55 checks passed
@github-project-automation github-project-automation bot moved this from In review to Done in Two Factor project board Mar 1, 2026
@georgestephanis
Copy link
Collaborator Author

YEET

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

9 participants