PD-8 — Acceptabilité¶
📚 Navigation User Story
| Document | | | ---------- | -- | | 📋 [Spécification](PD-8-specification.md) | | | 🛠️ [Plan d'implémentation](PD-8-plan.md) | | | ✅ **Critères d'acceptation** | *(ce document)* | | 📝 [Retour d'expérience](PD-8-rex.md) | | [← Retour à infrastructure-souveraine](../PD-193-epic.md) · [↑ Index User Story](index.md)Objectif¶
Vérifier que l’implémentation est conforme à la spécification, respecte l’ensemble des invariants ProbatioVault et ne présente aucune incohérence ou oubli critique.
Périmètre de vérification¶
La revue d’acceptabilité vérifie explicitement :
- la conformité stricte à la spécification fonctionnelle
- le respect de tous les invariants applicables
- la couverture des scénarios de test définis
- l’absence d’incohérences, oublis ou régressions
Écarts identifiés¶
Chaque écart constaté doit être documenté et classé selon sa gravité.
Classification des écarts¶
| Niveau | Définition |
|---|---|
| BLOQUANT | Violation d’un invariant, faille de sécurité, non-conformité majeure à la spec |
| MAJEUR | Fonction incomplète, comportement non conforme mais sans rupture de sécurité |
| MINEUR | Détail, dette acceptable, amélioration non critique |
Détail des écarts¶
| ID | Description | Référence | Gravité |
|---|---|---|---|
| E-01 | La policy worker autorise la lecture du RoleID et la génération de SecretIDs pour api-backend (pattern de bootstrap Prefect pour SecretIDs éphémères). Écart au principe de cloisonnement explicite de la spec ; acceptable si documenté et restreint aux environnements concernés. | Spec §7.5 / §6 ; ansible/roles/vault/templates/policy-worker.hcl.j2 | MINEUR |
| E-02 | L’audit syslog demandé n’est pas configuré : vault_audit_syslog_enabled est positionné à false dans le playbook de configuration et l’activation syslog est conditionnelle. | Spec §7.7 ; ansible/setup_vault_configure.yml, ansible/roles/vault/tasks/audit.yml | MAJEUR |
| E-03 | Le listener Vault repose sur un certificat autosigné et Nginx désactive la vérification TLS vers Vault (proxy_ssl_verify off), ce qui ne garantit pas le « certificat valide » requis pour l’exposition HTTPS. | Spec §7.1 / §6 ; ansible/roles/vault/tasks/tls.yml, ansible/roles/vault/templates/nginx-vault-ssl.conf.j2 | MAJEUR |
| E-04 | Le secrets engine PostgreSQL est monté sur database/ (pv-postgres en configuration) alors que la spec attend db/pv-postgres, créant un écart de contrat d’API pour les consommateurs. | Spec §7.4 ; ansible/roles/vault/tasks/secrets-engines.yml | MINEUR |
| E-05 | Le plan prévoit des snapshots S3 chiffrés et des tests de restauration (Phase 7), l’implémentation actuelle se limite à un pg_dump local sans upload ni test automatisé. | Plan Phase 7 ; ansible/roles/vault/templates/vault-backup.sh.j2 | MINEUR |
Conclusion d’acceptabilité¶
⚠️ ACCEPTÉ AVEC RÉSERVES — écarts MAJEURS/MINEURS documentés (TLS cert valide, audit syslog, alignement chemins/backup, doc bootstrap AppRole).