corentin_wakdo/src/app/Auth/Mailer.php
Imugiii 5835be0e66 feat(auth): authentification back-office (login, logout, reinitialisation mot de passe)
Implemente mlt.md section 12 : AUTHENTICATE_USER (12.1), LOGOUT_USER (12.2),
RESET_PASSWORD (12.3). Sessions PHP + argon2id, regeneration d'ID a la connexion,
idle 4h / absolu 10h via SessionGuard (cable en P3), jeton CSRF synchroniseur, backoff
degressif anti brute-force par compte et par IP source (login_throttle), audit_log
append-only (login_success/failed, password_reset), defenses anti-enumeration d'email
(timing + profil d'ecritures identique), fail-closed sur erreur base. Vues login/forgot/reset
rendues serveur. Routes posees sur le vhost admin (pas de prefixe /admin : docroot =
public/admin). PHPUnit sans Composer (unit + integration DB auto-skippee sans base) et
PHPStan L6 restent verts.
2026-06-15 18:15:32 +00:00

16 lines
428 B
PHP

<?php
declare(strict_types=1);
namespace App\Auth;
/**
* Seam d'envoi du lien de reinitialisation de mot de passe. Interface justifiee
* (contrairement a un repository) car une implementation SMTP reelle est
* explicitement prevue pour une phase ulterieure : elle se branchera ici sans
* toucher PasswordResetService.
*/
interface Mailer
{
public function sendPasswordReset(string $email, string $resetUrl): void;
}