TOTP two-factor authentication

For apps like Google Authenticator, Authy, and other TOTP-based authenticator applications. Requires ProcessWire 3.0.109+.

TOTP Two Factor Authentication for ProcessWire

TOTP means Time-based One-Time Password algorithm, which is a standard used by many 2FA authenticator apps such as the following (all available on both Android and iOS):

  • Google Authenticator
  • Authy Authenticator by Twilio
  • Microsoft Authenticator
  • LastPass Authenticator
  • And several others…

Requirements

  • ProcessWire 3.0.109 or newer.
  • PHP 5.6 or newer.
  • For users wanting to enable 2FA, it requires that they have a TOTP authenticator app installed, typically on a mobile phone.

How to install

  1. Place the files for this module in /site/modules/TfaTotp/.
  2. In the admin, go to Modules > Refresh.
  3. Go to Modules > Site > Tfa, and click “Install” for this module.

How to use

  1. Edit your user profile in the ProcessWire admin.
  2. Scroll to the bottom and you should see a new field for “Two factor authentication”.
  3. Select the “TOTP” option and click Submit (note: it’ll ask for your password first).
  4. After submitting the change, go back to the field and it will want you to open your authenticator application to scan the QR code it provides.
  5. After scanning the QR code, your authenticator app will provide a 6 digit code for you to enter in ProcessWire. This is just to confirm that everything is working. After doing this, click submit, and you are done.

Once two-factor authentication is enabled, when you login, there will be a second step where it will ask you to enter a code. You can get this code by opening your chosen authenticator app.

Credits

More modules by Ryan Cramer

  • Hanna Code

    Easily insert any complex HTML, Javascript or PHP output in your ProcessWire content by creating your own Hanna code tags.
  • Form Builder PRO

    Building front-end forms on your website has never been so simple. ProcessWire Form Builder lets you create, edit and publish forms with no development necessary.
  • ProCache PRO

    ProCache provides the ultimate performance for your website by completely bypassing PHP and MySQL and enabling your web server to deliver pages of your ProcessWire site as if they were static HTML…
  • ProcessWire Upgrade

    Tool that helps you identify and install core and module upgrades.
  • Site Profile Exporter

    Enables exporting of ProcessWire site profiles for sharing or distribution with others.
  • Map Marker (Google Maps)

    This Fieldtype for ProcessWire 2.1+ holds an address or location name, and automatically geocodes the address to latitude/longitude using Google Maps API.
  • Video embed for YouTube/Vimeo

    Enables translation of YouTube or Vimeo URLs to full embed codes, resulting in a viewable video in textarea fields you apply it to. Now with support for responsive videos too.
  • Import Pages from CSV files

    Enables you to import CSV files to create pages.
  • Database Backups

    Create and/or restore database backups from the ProcessWire admin.

All modules by Ryan Cramer

Install and use modules at your own risk. Always have a site and database backup before installing new modules.