auth/security: API-Firmenzuordnung nur für Mitglieder oder Allowlist, Google-Vorabübernahme geschlossen, gemeinsamer Login-Abschluss (Umsetzungsaudit 29.09.: R-01, K-04, K-07, K-08, B-10)
- R-01: ApiNewsroomAssignment hängt an eine bestehende Firma nur noch Owner, Mitglieder oder Nutzer aus NEWSROOM_API_ASSIGNMENT_USER_IDS; Pivot mit granted_via = api; Befehl company-memberships:api-assignments (Liste, --remove mit Vorschau) - K-04: OAuth-Verifikation eines offenen Kontos verwirft Passwort, remember_token und Sanctum-Tokens; SessionRevocation + Middleware EnsureSessionIsNotRevoked widerruft alte Sessions (Redis-tauglich) - K-08: LoginCompletion für Passwort, Magic Link und Google — last_login_at und Anmeldemethode auch nach 2FA, Landeziel über die Challenge, Google ohne erzwungenes remember, magic-login ohne guest für eigene Links - B-10: eigener Magic-Link-Zweck image_confirmation (Migration) - K-07: legalAcceptanceVersions #[Locked], Versionswechsel beim Absenden wird abgelehnt, Gate-Abfragen je Request zwischengespeichert Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
dfb0513e73
commit
1d417f87f7
29 changed files with 1287 additions and 73 deletions
|
|
@ -1,6 +1,7 @@
|
|||
<?php
|
||||
|
||||
use App\Http\Middleware\BasicAuthMiddleware;
|
||||
use App\Http\Middleware\EnsureSessionIsNotRevoked;
|
||||
use App\Http\Middleware\LogApiUsage;
|
||||
use App\Http\Middleware\RecordMailLinkClick;
|
||||
use App\Http\Middleware\RedirectPortalOnlyPagesFromHub;
|
||||
|
|
@ -58,6 +59,11 @@ return Application::configure(basePath: dirname(__DIR__))
|
|||
// Routing fest.
|
||||
$middleware->web(append: [RedirectPortalOnlyPagesFromHub::class]);
|
||||
|
||||
// Gesperrte Sessions (Audit K-04): nach einer Kontoübernahme per
|
||||
// OAuth-Verifizierung fliegen ältere Sessions beim nächsten Request
|
||||
// raus — nach StartSession, deshalb in der web-Gruppe.
|
||||
$middleware->web(append: [EnsureSessionIsNotRevoked::class]);
|
||||
|
||||
// Wohin eingeloggte User von Gast-Routen (/login, /register) gelenkt
|
||||
// werden: rollen- und verifizierungsbewusst statt fix auf /dashboard,
|
||||
// sonst landet ein Customer dort im 403 und sitzt fest.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue