Joget DX 8 Stable Released
The stable release for Joget DX 8 is now available, with a focus on UX and Governance.
OTP Email MFA is a Multi-factor authentication plugin that sends a one-time password to a user's email providing an additional layer of security.
Multi-Factor Authentication (MFA) is a security best practice that adds an extra layer of protection on top of a username and password combination. By requiring an additional authentication code from a trusted device, MFA safeguards access to a user’s account even if the password is compromised.
Plugins Available in the Bundle:
OTP Email MFA
This plugin bundle is compatible with Joget DX 8 and Joget DX 7
1. Set up SMTP values in the Joget App for the email tool to be working properly.
Figure 1: SMTP Settings
For more details, please refer to General Settings > SMTP Settings.
SMTP settings in General settings will enable Joget DX to use these SMTP values as global default values for all your apps.
Joget apps will ignore this global SMTP settings if the respective apps already have the settings configured, either in the Plugin Default Properties or Email Tool - Configure SMTP Settings page.
1. Go to the website https://github.com/jogetoss/otp-email-mfa.
2. Go to the "Releases" page (See Figure 2).
Figure 2:Plugin Releases
3. Click on the .jar file to initiate the download (See Figure 3).
Figure 3: Download .jar file
4. Go to your Joget Workflow localhost or server and log in as admin.
5. In Joget Console navigate to "Admin Bar > Systems Settings > Manage Plugins" and click the "Upload Plugins" button.
6. In "Upload Plugin", select the plugin .jar file you just downloaded, then click "Upload".
7. You should be able to view the newly installed plugin under the "Installed Plugins" tab.
8. Remember to always uninstall the old plugin before uploading a new version.
9. The Joget Workflow Knowledge Base has more information on managing and developing plugins.
1. Start the Joget server and open the App Center.
2. Log in as admin, click on Settings in the admin bar, and navigate to Directory Manager Settings. (See Figure 4)
Figure 4 :Directory Manager Settings
3. Choose the Security Enhanced Directory Manager in the Select Plugin field and select OTP Email MFA Authenticator for the Multi-Factor Authenticator property. (See Figure 5)
Figure 5 : Multi Factor Authenticator
1. This configuration will determine the properties of your OTP Email MFA Authenticator and the outcome of your plugin.
In General > Configure One-time Password Email MFA Authenticator
Figure 6: Configure OTP Password Email MFA Authenticator
Name | Description |
---|---|
Validity Period (minute) | The expiration time for the One Time Password (OTP) sent to the user's email registered in the profile remains valid in minutes. The default value is 5 minutes. |
Subject | The subject of the email with the OTP. |
Message | The message is to be displayed in the email. |
2. Then, in General > Configure One-time Password Email MFA Authenticator>Default Directory Password Policy
Figure 7 : Default Directory Password Policy
3.In General > Configure One-time Password Email MFA Authenticator>Default Directory Password Policy>Notification
If you leave the Notification tab below empty, Joget will read the default SMTP configuration values from the General Settings > SMTP Settings page.
Figure 8 : Notification
Important
Name | Description |
---|---|
From | Sender email address. |
SMTP Host | Email Server SMTP Host Example |
SMTP Port | Email Server SMTP Port Typically, port 465 for SSL security option and 587 for TLS |
Security |
Alternatively, you can click on the "hash" symbol to allow the input of hash variables. |
SMTP Username | Email Server Account Username On Google email account, use your full email address. |
SMTP Password | Email Server Account Password Password submitted will be encrypted for security reason. |
CC | Fully qualified address is expected. Multiple values can be accepted by separating them with semicolons. CC: lets you send a copy of a message to someone who's interested, but is not the primary recipient. |
HTML Content? | Check if "Message" is intended to be a HTML content. |
User Creation (Subject) | Email Subject. |
User Creation (Message) | Email Message. |
Quick Test
Hit on the "Send Test Email" button to quickly validate and test the email settings.
6. Before submitting the OTP Email MFA Authenticator, you may click on Send Test Email to verify your Email configuration (See Figure 9)
Figure 9: Send Test Email
7. Once all configurations have been inspected and tested, you may submit the OTP Email MFA Authenticator to Enable it. Once enabled, users will be able to enable MFA individually in their User profile.
8. Optionally, you may also activate all users to use OTP Email MFA Authenticator by default by adding their username as entries into the dir_user_meta table.
Here's an SQL query where you can do so :
insert into dir_user_meta (username, meta_key, meta_value) select username,'OTP_EMAIL','enabled' from dir_user t1 where not exists( select id from dir_user_meta t2 where t2.username = t1.id );
9. This query will add all the existing users in the dir_user table into the dir_user_meta table with the following values :
username : <username>
meta_key : OTP_EMAIL
meta_value : enabled
The "where not exist" clause is to check and skip for existing users already having otp enabled.
Joget authentication will automatically check if the user exists in this table and prompt them with the "please enter OTP" message.
1. Users can activate OTP Email MFA Authenticator in their respective user profiles by clicking the "Activate" button. (See Figure 10)
Figure 10: Activate button
2. Before activating OTP Email MFA Authenticator, users should make sure that a valid and working email has been registered in their profile under the User Details section as the email containing the OTP will be sent to this registered email.
3. A popup dialog will appear showing a Password field to submit the email OTP sent to the user. If the code is valid, OTP Email MFA will be activated (See Figure 11).
Figure 11: Password field to submit the email OTP sent to the user
4. The users should always remember to save their user profile after activating MFA.
5. On subsequent logins, the users will be prompted for an OTP password which will always be sent to the user's email.
1. As a user, you can disable OTP Email MFA Authenticator by clicking on the Deactivate button in your user profile. (See Figure 12)
Figure 12: Deactivate
2. Administrators can also disable MFA for a specific user by selecting the Setup Users under Users in the admin bar and clicking on the Deactivate MFA button. (See Figure 13)
Figure 13 :Deactivate MFA button
.form-input.deactivate .form-button.btn.button[value='Deactivate']{ display: none !important; }
Figure 13 : Apply Custom CSS in UI Builder > Settings > Configure [theme name] > Custom CSS
3.Expected outcome on the implementation of the CSS code:
The Deactivate MFA button is hidden/disabled for the user to access nor view it.
Figure 14 : Expected outcome > Deactivate MFA button is not visible
Security Enhanced Directory Manager