clusev/app/Models
boban b3e5d3a024 feat: auth + 2FA (login wall + TOTP + forced onboarding)
- Custom Livewire auth (full-page, R1/R2): Login (rate-limited), TwoFactorChallenge,
  TwoFactorSetup (QR via pragmarx/google2fa-qrcode), PasswordChange.
- Guard: panel routes behind auth + EnsureSecurityOnboarded middleware — forces
  password rotation, then 2FA enrolment, before the panel unlocks.
- User: two_factor_secret (encrypted), two_factor_confirmed_at, must_change_password.
- Centered auth layout, POST logout, dynamic sidebar user + 2FA status.
- Seeded admin with a one-time password + must_change_password.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-12 13:57:02 +02:00
..
AuditEvent.php feat: v1 data models + routes (Server/AuditEvent/SshCredential) 2026-06-12 06:25:47 +02:00
Server.php feat: v1 data models + routes (Server/AuditEvent/SshCredential) 2026-06-12 06:25:47 +02:00
SshCredential.php feat: v1 data models + routes (Server/AuditEvent/SshCredential) 2026-06-12 06:25:47 +02:00
User.php feat: auth + 2FA (login wall + TOTP + forced onboarding) 2026-06-12 13:57:02 +02:00