[IMP] General: Enforce 2fa

closes odoo/documentation#16073

Signed-off-by: Jessica Rogers (jero) <jero@odoo.com>
Co-authored-by: meval1006 <meval@odoo.com>
Co-authored-by: Felicia Kuan <feku@odoo.com>
This commit is contained in:
jero-odoo
2026-01-21 13:48:29 -05:00
parent 06841eb1d4
commit 97cc1fb12c
6 changed files with 26 additions and 41 deletions

View File

@@ -5,13 +5,13 @@ Two-factor authentication
.. |2fa| replace:: :abbr:`2FA (two-factor authentication)`
.. |QR| replace:: :abbr:`QR (Quick Response)` code
*Two-factor authentication (2FA)* is a way to improve security, and prevent unauthorized persons
from accessing user accounts.
*Two-factor authentication (2FA)* is a security measure that helps prevent unauthorized access to
user accounts.
Practically, |2fa| means storing a secret inside an *authenticator*, usually on a mobile phone, and
exchanging a code from the authenticator when trying to log in.
Practically, |2fa| means storing a secret in an *authenticator*, usually on a mobile phone, and
exchanging a code from the authenticator when logging in.
This means an unauthorized user would need to guess the account password *and* have access to the
This means an unauthorized user would need to guess the account password and have access to the
authenticator, which is a more difficult proposition.
Requirements
@@ -47,39 +47,35 @@ corner, and select :guilabel:`My Profile` from the resulting drop-down menu.
Click the :guilabel:`Account Security` tab, then slide the :guilabel:`Two-Factor Authentication`
toggle to *active*.
.. figure:: 2fa/account-security.png
:align: center
.. image:: 2fa/account-security.png
:alt: The account secuirty tab in a user profile.
This generates a :guilabel:`Security Control` pop-up window that requires password confirmation to
continue. Enter the appropriate password, then click :guilabel:`Confirm Password`. Next, a
:guilabel:`Two-Factor Authentication Activation` pop-up window appears, with a |QR|.
.. figure:: 2fa/qr-code.png
:align: center
:alt: The 2fa authentication QR code in Odoo.
Using the desired authenticator application, scan the |QR| when prompted.
Using the desired authenticator application, scan the |QR| when prompted.
.. tip::
If scanning the screen is not possible (e.g. the setup is being completed on the *same* device as
the authenticator application), clicking the provided :guilabel:`Cannot scan it?` link, or
copying the secret to manually set up the authenticator, is an alternative.
If scanning the screen is not possible (e.g., the setup is being completed on the *same* device
as the authenticator application), click the provided :guilabel:`Cannot scan it?` link, or
copying the code to set up the authenticator manually, is an alternative.
.. figure:: 2fa/secret-visible.png
:align: center
.. figure:: 2fa/input-secret.png
:align: center
.. image:: 2fa/secret-visible.png
:alt: A 2fa secret code on an authentication popup.
Afterwards, the authenticator should display a *verification code*.
.. figure:: 2fa/authenticator.png
:align: center
.. image:: 2fa/authenticator.png
:alt: A view of the Google authenticator app with the six digit code for 2fa.
Enter the code into the :guilabel:`Verification Code` field, then click :guilabel:`Activate`.
.. figure:: 2fa/2fa-enabled.png
:align: center
.. image:: 2fa/2fa-enabled.png
:alt: The success message that appears in a user profile when 2fa is successfully enabled.
Logging in
==========
@@ -91,7 +87,6 @@ On the login page, input the username and password, then click :guilabel:`Log in
the :guilabel:`Authentication Code` field, then click :guilabel:`Log in`.
.. image:: 2fa/2fa-login.png
:align: center
:alt: The login page with 2fa enabled.
.. danger::
@@ -101,25 +96,15 @@ the :guilabel:`Authentication Code` field, then click :guilabel:`Log in`.
Enforce two-factor authentication
=================================
To enforce the use of |2fa| for all users, first navigate to :menuselection:`Main Odoo Dashboard -->
Apps`. Remove the :guilabel:`Apps` filter from the :guilabel:`Search...` bar, then search for `2FA
by mail`.
Click :guilabel:`Install` on the Kanban card for the :guilabel:`2FA by mail` module.
.. image:: 2fa/2FA-by-mail.png
:align: center
:alt: The 2FA by mail module in the Apps directory.
After installation is complete, go to :guilabel:`Settings app: Permissions`. Tick the checkbox
labeled, :guilabel:`Enforce two-factor authentication`. Then, use the radio buttons to choose
whether to apply this setting to :guilabel:`Employees only`, or :guilabel:`All users`.
To enforce |2fa| for every user in the database, navigate to the :menuselection:`Settings` app. In
the :guilabel:`Permissions` section, tick the checkbox labeled :guilabel:`Enforce two-factor
authentication`. Then, use the radio buttons to choose whether to apply this setting to
:guilabel:`Employees only` or :guilabel:`All users`.
.. note::
Selecting :guilabel:`All users` applies the setting to portal users, in addition to employees.
.. image:: 2fa/enforce-settings.png
:align: center
:alt: The enforce two factor setting in the Settings application.
Selecting :guilabel:`All users` applies the setting to portal users in addition to employees.
Click :guilabel:`Save` to commit any unsaved changes.
.. image:: 2fa/enforce-settings.png
:alt: The enforce two factor setting in the Settings application.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 13 KiB