DNN Forums

Ask questions about your website to get help learning DNN and help resolve issues.

Jacaranda2FA 01.00.04 – Improved 2FA Experience and Trusted Browser Support

 0 Replies
 0 Subscribed to this topic
 29 Subscribed to this forum
Sort:
Author
Messages
New Around Here
Posts: 11
New Around Here
New Poster
New Poster
Congrats on posting!
Engaged Reader
Engaged Reader
You are an engaged reader!

I am pleased to announce Jacaranda2FA 01.00.04, the latest tested release of the Jacaranda2FA two-factor authentication provider for DNN Platform.

This release focuses on improving the user experience of the second-factor login screen while also refining the handling of trusted browsers.

Jacaranda2FA 01.00.04 has now been tested successfully on a production DNN site running over HTTPS.

A Cleaner 2FA Login Experience

One of the main changes in 01.00.04 is a clearer verification screen.

For users who have an authenticator app configured, the authenticator is now presented as the primary method of verification.

The login screen displays:

  • the authenticator-code field
  • the verification button
  • Remember this browser for 2FA

directly together as the normal login path.

Less commonly used methods are now grouped beneath:

Other Login Options

This section contains:

  • Email verification
  • Recovery-code login

The aim is simple: keep the normal authenticator login clear and uncluttered while still making alternative methods readily available when needed.

If email verification becomes active, or a recovery-code attempt needs to be retried, the Other Login Options section automatically opens so the user is not left searching for the active verification method.

Remember This Browser for 2FA

Jacaranda2FA also supports trusted browsers.

When a user selects:

Remember this browser for 2FA

and successfully completes two-factor authentication, Jacaranda2FA can remember that browser for the configured period.

On a later login from the same trusted browser:

  1. DNN still requires and validates the normal username and password.
  2. Jacaranda2FA checks the trusted-browser token.
  3. If the token is still valid, the additional 2FA challenge can be skipped.

A trusted browser therefore does not bypass the user's DNN password. It only remembers that the browser has previously completed the second-factor requirement.

Trusted-browser records can also be viewed and revoked through the Jacaranda2FA Account Security module.

Important: Trusted Browsers Require HTTPS

There is one important security requirement administrators need to understand.

Remember this browser for 2FA works only when the DNN website is running over HTTPS.

This is intentional.

Jacaranda2FA will not create a trusted-browser token on an ordinary HTTP connection.

If a site is running over HTTP, the user can still:

  • log in normally
  • use an authenticator app
  • use email verification
  • use a recovery code

but Jacaranda2FA will refuse to remember the browser.

The DNN Event Viewer will record the trusted-browser attempt as blocked because the request was not secure.

This behaviour is by design and is not an error.

Why HTTPS Is Required

A remembered-browser token is a security credential.

Although the token is stored securely and the server stores only a hash of it, the browser cookie itself should only ever travel over an encrypted HTTPS connection.

Jacaranda2FA therefore requires HTTPS before issuing the trusted-browser cookie.

Trusted-browser cookies use security protections including:

  • Secure cookie handling
  • HttpOnly
  • hashed server-side token storage
  • configurable expiry
  • browser revocation

Allowing these tokens to be created over unencrypted HTTP would weaken the security model, so Jacaranda2FA deliberately refuses to do so.

A Note for Local Development Sites

This is particularly important when testing Jacaranda2FA on a local DNN installation.

A development site running on something such as:

http://localhost

or an HTTP-only IIS binding can test almost all Jacaranda2FA functionality, but it cannot fully test the trusted-browser feature.

To test Remember this browser for 2FA, the test site needs to be available through HTTPS.

This can be done using:

  • an HTTPS-enabled staging site
  • an IIS development certificate
  • another appropriately configured HTTPS test environment

There are no plans to weaken this protection simply to make local HTTP testing easier.

Supported Second-Factor Methods

Jacaranda2FA 01.00.04 currently supports:

Authenticator Apps

Standard TOTP authenticator applications are supported.

Testing has included:

  • Microsoft Authenticator
  • Google Authenticator

The authenticator secret is enrolled through the Jacaranda2FA Account Security module.

Email Verification

A six-digit one-time verification code can be sent to the email address associated with the user's DNN account.

This uses DNN's existing SMTP configuration.

Recovery Codes

Users can generate one-time recovery codes for situations where their normal authenticator or email method is unavailable.

Each recovery code can be used only once.

Configurable 2FA Policies

Administrators can choose who must use Jacaranda2FA.

Two-factor authentication can be applied to:

  • all users
  • Administrators and SuperUsers
  • selected DNN roles

This allows administrators to choose an appropriate level of enforcement for their particular DNN site.

Account Security Module

Jacaranda2FA includes a separate Account Security module that can be placed on a protected DNN page.

Users can use it to:

  • enrol an authenticator app
  • replace an authenticator
  • generate recovery codes
  • replace recovery codes
  • view trusted-browser information
  • revoke trusted browsers
  • view their current 2FA status

Sensitive security changes require recent password confirmation.

Security Remains the Priority

The UX changes in 01.00.04 do not change Jacaranda2FA's underlying authentication model.

DNN still validates the username and password.

Only after the password has been accepted does Jacaranda2FA perform the required second-factor verification.

The normal sequence remains:

DNN password validation → Jacaranda2FA second factor → DNN completes authentication

The release retains the security protections developed during earlier versions, including:

  • persistent second-factor throttling
  • TOTP replay protection
  • protected authenticator secrets
  • one-time recovery-code consumption
  • secure trusted-browser tokens
  • HTTPS-only trusted-browser issuance
  • security audit logging

There are no database-schema changes in 01.00.04 and no new SQL migration.

Tested Environment

Jacaranda2FA has been tested with:

  • DNN Platform 10.3.2
  • DNN Platform 10.3.3
  • the default DNN skin
  • custom Bootstrap 5 skins
  • Microsoft Authenticator
  • Google Authenticator
  • email OTP
  • recovery codes
  • trusted browsers over HTTPS
  • Registered Users
  • SuperUsers
  • Jacaranda2FA operating as the sole enabled login provider

Version 01.00.04 has also been successfully tested on a production HTTPS DNN website, including the trusted-browser functionality.

An Important Authentication Provider Reminder

Jacaranda2FA can enforce 2FA only for authentication attempts that pass through the Jacaranda2FA provider.

If DNN Normal Login or another independent authentication provider remains enabled, that provider may offer another route into the website without invoking Jacaranda2FA.

Administrators who want mandatory 2FA should therefore review all enabled authentication providers.

Jacaranda2FA has been successfully tested operating as the sole enabled DNN login provider.

Public Testing Continues

Jacaranda2FA remains a community-focused project and feedback from other DNN administrators and developers is welcome.

Different DNN installations use different themes, hosting environments, SMTP systems, authentication configurations and security policies, so wider testing continues to be valuable.

If you are testing Jacaranda2FA, I particularly welcome feedback about:

  • installation and upgrades
  • authenticator-app compatibility
  • email delivery
  • recovery-code behaviour
  • role-based policies
  • different DNN themes
  • mobile layouts
  • trusted-browser behaviour on HTTPS sites

Normal bugs and compatibility problems can be reported through the project.

Potential security vulnerabilities should be reported privately to:

webmaster@forrestitse...>

Please do not include passwords, authenticator secrets, recovery codes, trusted-browser tokens, machine keys or other sensitive credentials in reports.

Jacaranda2FA 01.00.04

The latest release represents another step toward making two-factor authentication both practical and understandable for DNN administrators and users.

The most visible changes are a cleaner login experience and better organisation of alternate verification methods, while the underlying security model remains deliberately conservative.

And one rule is worth repeating:

If you want to use “Remember this browser for 2FA”, your DNN site must be running over HTTPS.

That restriction is intentional and is there to protect the trusted-browser credential.

Jacaranda2FA 01.00.04 is now the current tested release.

Trevor W Forrester
Forrest IT Services

These Forums are for the discussion of the open source CMS DNN platform and ecosystem.

For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:

  1. If you have (suspected) security issues, please DO NOT post them in the forums but instead follow the official DNN security policy
  2. No Advertising. This includes the promotion of commercial and non-commercial products or services which are not directly related to DNN.
  3. No vendor trolling / poaching. If someone posts about a vendor issue, allow the vendor or other customers to respond. Any post that looks like trolling / poaching will be removed.
  4. Discussion or promotion of DNN Platform product releases under a different brand name are strictly prohibited.
  5. No Flaming or Trolling.
  6. No Profanity, Racism, or Prejudice.
  7. Site Moderators have the final word on approving / removing a thread or post or comment.
  8. English language posting only, please.

Would you like to help us?

Awesome! Simply post in the forums using the link below and we'll get you started.

Get Involved