WordPress

Soldier-Up Account Guard

A reusable account-verification layer for WordPress and WooCommerce, covering OTP onboarding, verification-before-password, login enforcement, and role-aware redirects.

Version 1.0.2 hardened source
Recovered Production v1.0.1 ZIP
License GPLv2 or later
Source Public · GPLv2 or later

Overview

Account Guard coordinates verification across native WordPress registration, WooCommerce, and administrator-created accounts. Administrators configure verification rules, email identity, role exemptions, and post-login destinations without editing PHP.

Version history: v1.0.1 was recovered intact from its release ZIP. The repository's v1.0.2 adds publication security hardening and documentation; it is the recommended source line.
ChallengeEnforce consistent account verification across WordPress, WooCommerce, and administrator-created users.
SolutionA reusable OTP lifecycle with login enforcement, administrative controls, and role-aware routing.
ResultA recovered production plugin with hardened public flows and a documented source release.

Architecture

Provision WordPress, WooCommerce, or WP-Admin
Challenge Hashed numeric OTP
Verify Token-bound public flow
Route Password setup and role redirect

Key features

  • Configurable OTP length, expiration, attempts, resend cooldown, and hourly limits.
  • Verification-before-password onboarding and login blocking.
  • Dynamic role discovery, exemptions, and role-aware redirects.
  • Verification status, resend, manual verification, diagnostics, and activity logs in WordPress administration.
  • Mail-failure monitoring and scheduled cleanup of stale managed accounts.

Security decisions

Codes use a cryptographically secure generator and WordPress password hashing. Public verification URLs use a high-entropy per-account token in addition to nonces, preventing a predictable WordPress user ID from being sufficient to access verification or email-correction actions. Administrative mutations require capability checks and nonces.

Security contract

OTPCryptographically generated numeric code stored with WordPress password hashing
Public flowHigh-entropy account token plus WordPress nonce validation
Abuse controlsExpiration, attempt limits, resend cooldown, and hourly rate limits
AdministrationCapability checks and nonces protect privileged mutations
LifecycleScheduled cleanup removes stale managed accounts

Known limitations

Mail deliverability remains dependent on the site's WordPress mail transport and sender-domain configuration. PHP lint and live WordPress integration testing require a WordPress/PHP test environment and are not represented as completed in this workspace.

What this project demonstrates

  • Coordinating one security workflow across multiple WordPress account entry points.
  • Hardening predictable public routes with token-bound verification.
  • Designing configurable abuse controls and role-aware post-login behavior.
  • Documenting validation limits instead of presenting unperformed testing as evidence.
← Back to Portfolio