Authentication Security

3k views Markdown

This tab adds identity checks after the password: two-factor codes, location and IP checks, country rules, JetPass and passkeys, for clients and staff.

Opening the Screen

In the left menu, click Settings, then Security. Click Authentication in the tab row.

Address: {admin}/settings/security?general=authentication

What Is on the Screen

Two-Factor Authentication
One card per method, each with its own switch.
Location Verification
Separate blocks for clients and staff.
IP Verification
Proxy and VPN detection.
Country Rules
Access restriction and proxy block scope.
JetPass
A passwordless sign-in option, switched on separately for clients and for staff.
Passkeys
Biometric passwordless sign-in with a fingerprint, face or device PIN.
Account Protection
Risk-based sign-in codes, attack mode, leaked password checks, re-verification and canary accounts. Described in Account Protection.

Each sub-tab has its own Save Changes button; switching away without saving loses the changes.

Fields

Two-Factor Authentication

Verification Methods
An authenticator app (TOTP), an e-mail code, an SMS code and any Authentication module you install. E-mail and SMS need an active module; without one the card is disabled and clients do not see the method. An account still using such a method is not locked out. It is switched off at its next sign-in, the log records why and administrators see a bell notice.
Force Enable for Clients
Off by default. Needs a method switched on above; clients must activate one at their next sign-in. Skipped while no method can be activated.
Force Enable for Staff
Off by default. The same rules as for clients, applied to staff at their next sign-in; Full Administrators are exempt.
Show Popup
On by default. Shows a two-factor reminder in the client dashboard.
Trusted Device Duration (Clients)
Default: 0. A client who ticks "trust this device" while verifying skips the code for this many days. 0 hides the checkbox; 365 at most.
Trusted Device Duration (Staff)
Default: 0. The same window for staff signing in to the admin area.
Bind Trust to IP Address
Off by default. A trusted device is then recognized only from the IP address it was trusted on; mobile users get asked more often.

Location Verification

Asks for extra verification when the visitor's city or country changed since their last sign-in. An account with no sign-in here yet (after an upgrade or import) is compared against its profile address. In 5.0-beta.3 and earlier the check ran only for accounts with a previous sign-in.

A sign-in from a new country or browser also e-mails the client and adds a panel notice. The "New Device Sign-in (Client)" template controls it.

Since 5.0-beta.4 a password or JetPass sign-in is also risk-scored once the password is accepted. From 40 points the client is asked for a one-time code, even with two-factor off. It travels on the method chosen here, or by e-mail. A browser that passes the code is remembered for 90 days. The score never refuses a sign-in; without a mail or SMS module the sign-in goes through. The signals appear on the Sign-in Attempts screen.

An address that signs in to five unrelated accounts within an hour is blocked for 60 minutes. The bell shows a notice and administrators receive the Suspected Account Takeover (Administrator) e-mail. The case is filed on the Security Events screen with three one-click actions; by default nothing else happens until you act. When automatic protection is set to end sessions, the accounts involved lose their sessions and trusted devices at once. Each owner gets a "was this you?" e-mail. Its one-click link locks the account and sends a reset link; it works once, within 24 hours. In 5.0-beta.3 and earlier the bell notice is the only record.

Enable for Clients
Off by default. Reveals a verification method (SMS by default) and a sensitivity level (Country by default). The method must be switched on under Verification Methods with its module, or the save is refused.
Enable for Admin/Staff
Off by default. The same choices and module rule, kept separate from the client settings.

IP Verification

Checks for proxy, VPN or anonymizer use; it is not an address allowlist. To limit the admin panel to given IP addresses, use Admin Area IP Restriction on the Settings tab.

Enable for Clients
On by default. Reveals a whitelist for trusted IP addresses, ranges or provider ASNs.
Enable for Admin/Staff
Off by default. Has its own whitelist.

Country Rules

Each card has a mode and a country list. The visitor's country comes from the IP address; at sign-up the form's country is checked too.

Mode
Required. Each card starts unrestricted; the other modes scope the rule to, or away from, the countries you pick.
Countries
Appears once you pick a mode other than the first. Saving with an empty list is refused.
Access Restriction
Limits which countries can open an account, sign in and place an order. Staff logins are not affected.
Proxy Block Scope
Narrows which countries the proxy and VPN block applies to. The block itself is switched on under IP Verification.

JetPass

Lets someone sign in with a one-time code sent by e-mail instead of a password. It sits beside the password form on the login page; clients and staff are switched on separately. It needs an active mail module, or the option appears but no code arrives.

Enable for Clients
Off by default. Shows the Email Me a Code button on the client login page and at checkout.
Enable for Staff
Off by default. Shows the Email Me a Code button on the staff login screen; two-factor verification still runs after the code.
Code lifetime
Required. Default: 15 minutes; 1 to 60.
Failed attempt limit
Required. Default: 5 tries; 1 to 20.

Passkeys

Lets someone sign in with a fingerprint, face scan or device PIN instead of a password. A passkey works only on your domain and only over https. On a non-secure address the tab warns you and the feature is unavailable. Clients and staff are switched on separately.

Enable for Clients
Off by default. Adds a passkey option to the client login page and a Passkeys section to account security; a client without one gets a one-time offer on the dashboard.
Enable for Staff
Off by default. Adds a passkey option to the staff login screen and a Passkeys section to Account Settings. A passkey carries two factors, so no code is asked after it.

Tasks

Requiring Two-Factor Authentication for Clients

  1. Open Two-Factor Authentication and switch on at least one method card, such as the authenticator app.
  2. Turn on Force Enable for Clients.
  3. Click Save Changes.

Asking for an SMS Code on Every Sign-In

  1. Under Two-Factor Authentication, switch on the SMS Verification card. If SMS is the only method you want, switch off TOTP and Email Verification.
  2. Turn on Force Enable for Clients and leave Trusted Device Duration (Clients) at 0.
  3. Click Save Changes.

The client enables SMS verification at the next sign-in; every later one asks for the code sent to their phone.

Restricting Access to Certain Countries

  1. Open Country Rules and set the Access Restriction mode to Allow Only the Selected Countries.
  2. Pick the countries you serve in the Countries list that appears.
  3. Click Save Changes.

Visitors from other countries can no longer open an account, sign in or place an order.

Signing In as Staff Without a Password

  1. Open Passkeys, turn on Enable for Staff and click Save Changes.
  2. Open your own Account Settings from the profile menu, go to the Security tab and expand Passkeys.
  3. Click Add Passkey and finish the prompt your device shows.

The key is listed with its date. From then on the staff login screen offers Sign In with a Passkey, which opens the panel without a password or code.

Things to Watch

The code is asked on every sign-in

An account with two-factor verification is asked for a code on every sign-in, even from the same IP address. Only a Trusted Device Duration above 0 lets a trusted browser skip the code until the period ends.

Access Restriction also blocks existing clients

The rule runs at every sign-in, not only at sign-up. A client travelling outside your list cannot sign in or pay until back. Staff logins are exempt.

Device trust clears itself

A password reset, switching two-factor on or off, or ending all sessions deletes the account's trusted devices. Clients can also remove one device under Trusted Devices on their Security tab.

A code travels on its own method's channel

SMS codes go by SMS only, e-mail codes and JetPass by e-mail only. The client switches of the Two-Factor Authentication template do not change this. The code reaches the account holder alone, never a contact or a sub-account.

What the client sees at the code step

The SMS step shows the last four digits of the phone on file. If the code cannot be sent, the client is told to contact support; staff are pointed to the module settings.

Location Verification skips a method that cannot deliver

If the module behind the check is removed later, or an SMS user has no mobile number, sign-in continues without the code. Keep the module configured while the check is on.

An account without a password cannot sign in

Some imported accounts have no password; JetPass, integration sign-in links and social sign-in then show a message until the client sets one with Forgot Password?.

Required Privileges

Viewing and saving any sub-tab on this screen needs the SECURITY_SETTINGS privilege.

Was this helpful?

Thanks for your feedback!

Still Need Help?

Our support team is here around the clock for anything you can't find above.