feat: Permettre la révocation des certificats intermédiaires

Implémente la fonctionnalité de révocation pour les certificats de type 'intermédiaire'.

Modifications principales :
- CertificateController.php :
  - Suppression de l'interdiction de révoquer les certificats intermédiaires.
  - Ajout d'une logique spécifique pour révoquer un certificat intermédiaire en utilisant la configuration et la CRL du CA Racine.
  - Les certificats 'simple' continuent d'être révoqués via le script revoke_cert.sh.
- app/src/Views/certificates/index.php :
  - Le bouton 'Révoquer' est maintenant affiché pour les certificats intermédiaires non révoqués.
- app/src/Lang/fr.json :
  - Ajout de nouvelles clés de traduction pour les messages relatifs à la révocation des certificats intermédiaires.
  - Modification de la clé 'cert_revoke_error_ca_revocation' pour indiquer que seuls les certificats ROOT ne peuvent être révoqués via l'interface.

Ces modifications permettent une gestion plus complète des certificats intermédiaires directement depuis l'interface utilisateur.
This commit is contained in:
google-labs-jules[bot]
2025-06-15 18:01:13 +00:00
parent 72d100d5a4
commit 797267d41e
3 changed files with 78 additions and 27 deletions

View File

@ -49,8 +49,8 @@ require_once APP_ROOT_DIR . '/src/Views/shared/header.php';
</td>
<td>
<?php
// Seuls les certificats 'simple' et non révoqués peuvent être révoqués via l'interface
if (!$cert['is_revoked'] && $cert['type'] === 'simple'): ?>
// Les certificats 'simple' ou 'intermediate' non révoqués peuvent être révoqués
if (!$cert['is_revoked'] && ($cert['type'] === 'simple' || $cert['type'] === 'intermediate')): ?>
<form action="/certificates/revoke" method="post" class="inline-form" onsubmit="return confirm('<?= htmlspecialchars($translations['confirm_revoke']) ?>');">
<input type="hidden" name="certificate_id" value="<?= htmlspecialchars($cert['id']) ?>">
<button type="submit" class="button danger-button"><?= htmlspecialchars($translations['revoke_certificate']) ?></button>