Add an option to disable two step verification providers

Kirby

Well-known member
Currently, the built-in providers
  • Backup Codes
  • Email confirmation
  • Verification code via app
are always active (if TFA isn't entirely disabled).

But those providers are not equal (in terms of usability and security); especially Email confirmation seems somewhat cumbersome, leaks data and should be considered rather insecure (nobody knows if the email isn't forwarded unencrypted at some point for exmple).

This is even documented in the description:
Other two-step verification methods should be chosen over this if possible.

Backup codes seem to be insecure as well.

So if there are at least 2 stronger TFA options available (like TOTP, WebAuthn, etc.) it would be nice if the admin had an option to completely disable weaker options - especially as the required field and code to check that is already there, just a GUI is missing.

There had been somewhat similar / related suggestions in the past but none got traction:
 
Last edited:
Upvote 12
I had two addons with conflicting usage of "passkeys," and I had to manually go into the database to deactivate one of them.

So yes, being able to select which ones we allow visitors to use would be helpful. Upvoted!
 
Sorry to resurrect an old thread, but I got here by googling this on the bing so I figured I'd leave a note for the next visitor. I was able to disable the "email" provider by the following database query:

Code:
update xf_tfa_provider set active = 0 where provider_id = 'email';

I find it a little odd that there isn't simply a button to turn these on/off in the control panel.

In my case, I needed to disable this as a possible option because I chose to force 2sv for all new users in order to fight spammers. Spammers are almost vanishingly unlikely to follow through with setting one up, so it helps. As I already have email confirmation on registration, having the option for an email confirmation as 2sv somewhat defeats that purpose as they can just use the same throwaway email address they just created to sign up.
 
Sorry to resurrect an old thread, but I got here by googling this on the bing so I figured I'd leave a note for the next visitor. I was able to disable the "email" provider by the following database query:
I did similar to deactivate one of the two duplicate "passkeys" entries. 👍 Having the option to disable, with the ability to re-enable if ever needed, I think would be the way to go.
 
I find it a little odd that there isn't simply a button to turn these on/off in the control panel.
That's what this suggestion is about ;)

As you figured out, the whole infrastructure is already there - just the GUI is missing.
 
Back
Top Bottom