Page 1 of 1

mfa not working for customers

Posted: Sun May 25, 2025 9:03 pm
by supertramp4
Hesk V3.5.3
I have just done a brand new fresh install of HESK, and i have a problem that MFA is ONLY working for Users>Team. MFA is not offered for Users>Customers.

In Users>Team, the MFA column shows "Email" ( and in the profile i can change it to App authenticator), and i do get the MFA code by email
In Users>Customers, the MFA column shows "None"

in Settings, I have
- Customer Accounts set to Enabled - Required to access (only logged-in customers can access the help desk and knowledgebase)
- Customers can register account, staff must approve new registrations
- Require MFA is Enabled. ( i have tried disabling / re-enabling )

Should MFA work for customers, and does anyone have any thought on how to get this working ?

Many thanks

Re: mfa not working for customers

Posted: Mon May 26, 2025 11:48 am
by Klemen
MFA works for customers, but they need to set it up manually on their "Profile" page (https://example.com/hesk/profile.php)

For staff, MFA is turned on to email automatically when set to "Required" in Hesk settings. For customers, it isn't.

This is indeed something we can improve in the future (Required for staff, Required for customers, Required for all).

Re: mfa not working for customers

Posted: Mon May 26, 2025 3:38 pm
by supertramp4
Hi Klemen,
Thanks. As a quick fix, is it as simple as setting a column in one of the database tables to enable email mfa, and if so can you advise which table ( and value), then I can hopefully modify the code myself

Re: mfa not working for customers

Posted: Mon May 26, 2025 3:49 pm
by Klemen
You need to set mfa_enrollment to 1 for customers.

This SQL should set it for all verified customers with an email:

Code: Select all

UPDATE `hesk_customers` SET `mfa_enrollment` = '1' WHERE `verified` = 1 AND `email` != '';
I did not test the code, so backup the database before trying.