Sécurisation, déploiement CI/CD Gitea et documentation INFCDAAL3
CD - Déploiement continu / deploy (push) Successful in 6m44s
CI - Intégration continue / quality-and-tests (push) Failing after 2m30s

- CI/CD Gitea Actions: ci.yml (Pint + PHPUnit), deploy.yml (déploiement SSH)
- Suppression de l'ancien workflow GitHub cassé
- En-têtes de sécurité: ajout CSP et Permissions-Policy
- RGPD: droit à l'effacement (anonymisation du compte) + tests
- Correctifs: ForceHttps hors env testing, timestamps du modèle Utilisateur,
  suppression des migrations en doublon (migrate échouait sur base neuve)
- Qualité: formatage Laravel Pint sur l'ensemble du code
- Documentation dossier technique (docs/) + .docx + .pptx

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-06 11:09:34 +02:00
parent de45e62d20
commit e5e6f72f92
38 changed files with 756 additions and 291 deletions
+28 -1
View File
@@ -148,12 +148,39 @@
<h2 class="text-2xl font-bold text-red-700 mb-4">⚠️ Zone de danger</h2>
<p class="text-gray-600 mb-6">Les actions ci-dessous ne peuvent pas être annulées.</p>
<form action="{{ route('logout') }}" method="POST">
<form action="{{ route('logout') }}" method="POST" class="mb-8">
@csrf
<button type="submit" class="px-8 py-3 bg-red-600 text-white font-bold rounded-lg hover:bg-red-700 transition-smooth duration-200">
🚪 Se déconnecter
</button>
</form>
<hr class="my-6">
<!-- Suppression du compte (droit à l'effacement RGPD) -->
<h3 class="text-lg font-bold text-red-700 mb-2">Supprimer mon compte</h3>
<p class="text-gray-600 text-sm mb-4">
Conformément au RGPD, vous pouvez demander la suppression de votre compte.
Vos données personnelles (e-mail, pseudo) seront définitivement anonymisées.
Cette action est <strong>irréversible</strong>.
</p>
<form action="{{ route('profile.destroy') }}" method="POST"
onsubmit="return confirm('Confirmer la suppression définitive de votre compte ?');">
@csrf
@method('DELETE')
<div class="mb-4 max-w-sm">
<label for="MotDePasse_Confirmation" class="block text-sm font-bold mb-2 text-gray-700">Confirmez avec votre mot de passe</label>
<input
type="password"
id="MotDePasse_Confirmation"
name="MotDePasse_Confirmation"
required
class="w-full px-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-red-500 outline-none">
</div>
<button type="submit" class="px-8 py-3 bg-red-800 text-white font-bold rounded-lg hover:bg-red-900 transition-smooth duration-200">
🗑️ Supprimer définitivement mon compte
</button>
</form>
</div>
</div>
</section>