Download the PHP package bbs-lab/laravel-force-two-factor without Composer
On this page you can find all versions of the php package bbs-lab/laravel-force-two-factor. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download bbs-lab/laravel-force-two-factor
More information about bbs-lab/laravel-force-two-factor
Files in bbs-lab/laravel-force-two-factor
Package laravel-force-two-factor
Short Description Admin-panel-agnostic core for forcing two-factor authentication in any Laravel app: a shared bypass registry (compose several "skip 2FA" reasons) that the nova-force-two-factor and filament-force-two-factor adapters enforce.
License MIT
Homepage https://github.com/BBS-Lab/laravel-force-two-factor
Informations about the package laravel-force-two-factor
Force Two-Factor (core)
Admin-panel-agnostic core for forcing two-factor authentication in any Laravel app. It ships the shared bypass registry that lets several independent reasons to skip forced 2FA compose cleanly, and that the adapters enforce:
bbs-lab/nova-force-two-factor— forces Nova's Fortify 2FA.bbs-lab/filament-force-two-factor— plugs into Filament's native multi-factor gate.
You usually install an adapter, which pulls this package in automatically. Install it directly only when you build your own enforcement middleware.
Why a shared registry?
A panel can only wire one "force 2FA" gate, but several packages have a legitimate reason to let a user skip it — e.g. SSO users (their MFA is handled by the identity provider) and users who still owe a forced password rotation (they must change their password first). Each reason registers a callback here; the gate bypasses as soon as any returns true. Nova and Filament read the same registry, so a reason registered once applies to whichever panel enforces 2FA.
Registering a bypass
Callbacks live in code (never in the config file — a Closure cannot be config:cached), so register them in a service provider's boot():
The sibling packages register their own bypass automatically when this package is present:
bbs-lab/laravel-okta— skips forced 2FA for users authenticated via Okta (okta_authenticated).bbs-lab/laravel-password-rotation— skips forced 2FA while a user still owes a forced password rotation, so the rotation happens first.
Configuration
enabled is the master switch shared by every adapter. Publish it with:
Testing
License
MIT. See LICENSE.md.
All versions of laravel-force-two-factor with dependencies
illuminate/contracts Version ^11.0 || ^12.0 || ^13.0
illuminate/http Version ^11.0 || ^12.0 || ^13.0
illuminate/support Version ^11.0 || ^12.0 || ^13.0
spatie/laravel-package-tools Version ^1.16