Enterprise édition
Validation
NextPDF Enterprise exécute en mémoire (in-process), en lecture seule, des vérifications structurelles selon des politiques nommées : PDF/A-4, baseline PAdES, intégrité de la validation à long terme (LTV), ZUGFeRD, la règle 21 CFR Part 11 de la U.S. Food and Drug Administration (FDA) et la règle 17a-4 de la U.S. Securities and Exchange Commission (SEC). Il renvoie un rapport technique structuré. Ce rapport n’est ni un avis juridique, ni une caution de conformité, ni une certification.
Disponibilité & licence
Section intitulée « Disponibilité & licence »Cette capacité est fournie dans NextPDF Enterprise (nextpdf/enterprise) et s’active avec une enveloppe de licence de palier Enterprise. Un déploiement dépourvu de ce droit ne charge pas les classes de la capacité. Comparer les éditions et obtenir une licence.
Installation
Section intitulée « Installation »composer require nextpdf/enterprise:^3Vue d’ensemble conceptuelle
Section intitulée « Vue d’ensemble conceptuelle »Compliance est le point d’entrée. Appelle Compliance::assess($pdfBytes, $policy) (ou injecte une instance et appelle run()) pour appliquer une CompliancePolicy aux octets du PDF et recevoir un ComplianceReport. La politique définit le travail ; le rapport en donne le résultat structuré.
Policies fournit des fabriques de politiques prédéfinies : pdfA4(), pdfA4e(), pdfA4f(), padesBaseline(), eidasQualified(), ltvHealth(), zugferd($profile), fdaPart11(), ainsi que la famille SEC 17a-4 (sec17a4(), sec17a4Compatible(), sec17a4Structural(), sec17a4PreSign()). Chaque fabrique renvoie une CompliancePolicy dont la méthode validate() est pure : octets du PDF en entrée, constats en sortie. L’architecture impose une stricte frontière de lecture seule : une politique ne modifie jamais les octets du PDF, de sorte que la validation reste distincte de tout comportement de correction automatique.
ComplianceReport regroupe les constats par Severity (Error, Warning, Info). passes() renvoie true lorsqu’il n’y a aucune erreur ; les avertissements ne font pas échouer un rapport. Le rapport comporte une clause de non-responsabilité juridique intégrée (getDisclaimer()) précisant que le résultat est une vérification technique de structure fournie à titre de référence uniquement et que la détermination finale revient à des professionnels qualifiés du droit ou de la conformité. Tu dois faire apparaître cette clause dans la sortie présentée aux utilisateurs.
Une seconde limite concerne les signatures. LtvHealthCheck vérifie la présence structurelle du Document Security Store (DSS) selon ISO 32000-2:2020 §12.8.4.3 ; il ne vérifie pas cryptographiquement les données OCSP (Online Certificate Status Protocol) ou CRL (liste de révocation de certificats) intégrées. eidasQualified() valide la structure PAdES au seul niveau du PDF ; la qualification eIDAS effective dépend du prestataire de services de confiance (TSP) et du certificat qualifié, qui sont hors de ce module.
Ce que « validation » signifie ici
Section intitulée « Ce que « validation » signifie ici »Ce module vérifie des attributs structurels et rapporte des constats. Il ne certifie pas un document et ne garantit pas qu’il satisfait à une réglementation.
- La conformité est une propriété du fichier final associé à un validateur, et non de cette bibliothèque. ISO 19005-4:2020 §5.2 détermine la conformité au regard des exigences normatives de la norme au moyen d’un outil de vérification, et non par le logiciel producteur.
- Un rapport favorable est un résultat vérifié au regard des règles que chaque politique met en œuvre. Ce n’est pas un certificat.
- Les politiques FDA 21 CFR Part 11 et SEC 17a-4 vérifient des attributs structurels que ces réglementations impliquent (présence de signature, intention de signature, marqueurs de piste d’audit, contraintes WORM — write once, read many). Elles n’établissent pas la conformité juridique à ces réglementations. La suffisance juridique relève de ton équipe conformité.
La prise en charge d’une norme n’est pas la conformité à celle-ci, et la conformité n’est pas la certification. NextPDF ne détient aucune certification et n’en accorde aucune.
Limite entre paliers
Section intitulée « Limite entre paliers »- NextPDF Core
Compliancefournit des validateurs de flux d’octets et un contrôle croisé de grammaire ; un résultat sans aucun constat est un résultat vérifié, pas un certificat. - NextPDF Pro
Compliance(EInvoiceValidator) valide EN 16931 / Factur-X / ZUGFeRD en mémoire (in-process) au niveau de la facture électronique. - NextPDF Enterprise Validation (cette page) ajoute des politiques prédéfinies pour les vérifications structurelles d’archivage, de signature, de LTV et de secteurs réglementés (FDA Part 11, SEC 17a-4), avec un format de rapport unique. Le module Enterprise Compliance est une surface distincte qui délègue à des sidecars externes ; ce module-ci s’exécute en mémoire (in-process).
Pourquoi ce fonctionnement
Section intitulée « Pourquoi ce fonctionnement »La validation est conçue comme un ensemble de politiques pures, en lecture seule, et non comme un pipeline de correction-puis-rapport. La méthode CompliancePolicy::validate() de chaque politique prend des octets de PDF et renvoie des constats ; elle ne modifie jamais le document. Ainsi, un rapport favorable n’est jamais un artefact de l’outil « aidant » discrètement l’entrée à passer. Il signifie seulement que le fichier a été vérifié au regard des règles que chaque politique met en œuvre. C’est cette même frontière qui fait que chaque rapport porte une clause de non-responsabilité intégrée, et que la conformité reste une propriété du fichier final associé à un validateur externe, et non une auto-affirmation du producteur. La certification et la suffisance juridique relèvent d’un auditeur ou d’une équipe conformité ; le module se limite donc à rapporter la structure.
Contexte de conception : Une conformité que tu peux remettre à un auditeur.
Surface d’API
Section intitulée « Surface d’API »| Classe | Responsabilité |
|---|---|
Compliance | Point d’entrée : applique une politique et renvoie un rapport. |
Policies | Fabrique d’instances CompliancePolicy prédéfinies. |
CompliancePolicy | Contrat : validate() pure renvoyant des constats. |
ComplianceReport | Constats regroupés par gravité ; porte la clause de non-responsabilité juridique. |
ComplianceFinding | Un constat : identifiant de règle, message, référence de norme, remédiation. |
Severity | Error / Warning / Info. |
PdfAPolicy | Politique structurelle de la famille PDF/A-4. |
PadesValidator | Politique structurelle baseline PAdES / eIDAS. |
LtvHealthCheck | Vérification de présence structurelle DSS (ISO 32000-2 §12.8.4.3). |
ZugferdValidator | Politique ZUGFeRD / Factur-X au niveau du PDF. |
FdaPart11Policy | Politique d’attributs structurels FDA 21 CFR Part 11. |
Sec17a4WormPolicy | Politique structurelle WORM SEC 17a-4 (rigueur sélectionnable). |
Exemple de code — Démarrage rapide
Section intitulée « Exemple de code — Démarrage rapide »use NextPDF\Enterprise\Validation\Compliance;use NextPDF\Enterprise\Validation\Policies;
$report = Compliance::assess($pdfBytes, Policies::pdfA4());$ok = $report->passes(); // no errorsExemple de code — Production
Section intitulée « Exemple de code — Production »$report = (new Compliance($clock))->run($pdfBytes, Policies::fdaPart11());
foreach ($report->errors as $finding) { $logger->warning('validation.error', [ 'rule' => $finding->ruleId, 'standard' => $finding->standardReference, ]);}$auditLine = $report->getDisclaimer(); // surface this in user-facing outputCas limites & pièges
Section intitulée « Cas limites & pièges »- Les avertissements ne font jamais échouer un rapport ; seules les erreurs mettent
passes()à false. Un rapport propre signifie toujours « vérifié au regard des règles implémentées », et non « conforme ». LtvHealthCheckconfirme la structure DSS, et non la validité cryptographique de la révocation.eidasQualified()vérifie uniquement la structure au niveau du PDF ; la qualification dépend du TSP et du certificat.- La famille SEC 17a-4 propose une rigueur sélectionnable (Full / Compatible / Structural / PreSign) ; choisis celle qui correspond à l’étape de ton flux de travail.
Performance
Section intitulée « Performance »Chaque politique s’exécute en mémoire (in-process) sur les octets du PDF fournis ; le coût croît avec la taille du document et le nombre de règles. Compliance enregistre la durée d’exécution dans le rapport.
Notes de sécurité
Section intitulée « Notes de sécurité »Les politiques analysent les octets du PDF en mémoire (in-process) et n’effectuent jamais d’appel sortant. Traite les octets de PDF provenant de sources non fiables comme hostiles ; l’architecture purement en lecture seule empêche toute politique d’altérer l’entrée.
Résidence des données & atténuations relatives aux PII
Section intitulée « Résidence des données & atténuations relatives aux PII »La validation s’effectue en mémoire (in-process) et localement, sans aucune E/S réseau. Les documents signés et les métadonnées de piste d’audit peuvent contenir des données personnelles ; applique tes propres contrôles de conservation et de minimisation aux rapports et aux constats.
Télémétrie sûre & nettoyage des journaux
Section intitulée « Télémétrie sûre & nettoyage des journaux »Les constats incluent des identifiants de règle, des références de norme et des messages ; certains messages reprennent des noms de signataires ou des chaînes de motif extraites du PDF. Nettoie ou caviarde ces champs avant de transmettre les journaux vers des collecteurs partagés.
Conformité
Section intitulée « Conformité »| Comportement | Référence | État |
|---|---|---|
| Conformité déterminée au regard de la norme, et non du producteur | ISO 19005-4:2020 §5.2 | Reflété dans la conception (politiques en lecture seule) |
| Présence structurelle DSS pour la LTV | ISO 32000-2:2020 §12.8.4.3 | Vérifié (structure seulement) |
| Structure baseline PAdES | ETSI EN 319 142-1 §5.4.3 | Vérifié (niveau PDF) |
| Modèle sémantique du profil EN 16931 | Factur-X 1.08 (EN 16931) | Référence d’appui (l’émetteur reste responsable) |
| FDA 21 CFR Part 11 / SEC 17a-4 | 21 CFR Part 11 / 17 CFR 240.17a-4 | Attributs structurels vérifiés ; non vérifié juridiquement |
Ce tableau consigne ce que chaque politique vérifie et les spécifications qui sous-tendent cette politique. Ce n’est pas une déclaration de certification ni de suffisance réglementaire. Les lignes FDA et SEC sont uniquement des vérifications d’attributs structurels ; ces normes sources ne figurent pas dans le corpus de vérification et ne portent aucune revendication de conformité Verified.
Comportement en mode FIPS
Section intitulée « Comportement en mode FIPS »Ces politiques ne vérifient ni les signatures numériques du PDF, ni les chaînes de certificats, ni les réponses OCSP/CRL, ni la qualification juridique ; les condensats SHA-256 de piste d’audit qu’elles calculent sont des contrôles d’inviolabilité, et non une vérification de signature. Les modules Signature et Sécurité gèrent la validité cryptographique de la signature, la garde des clés et le comportement en mode FIPS (Federal Information Processing Standards).
Modèle de menace
Section intitulée « Modèle de menace »L’entrée principale est constituée d’octets de PDF non fiables. Les atténuations comprennent des politiques purement en lecture seule (aucune mutation, aucune correction automatique), aucune E/S réseau et une clause de non-responsabilité juridique explicite sur chaque rapport, afin qu’un résultat favorable ne soit pas pris pour une certification.
Contrat de comportement
Section intitulée « Contrat de comportement »- La méthode
validate()de chaque politique est une fonction pure : octets du PDF en entrée, constats en sortie. Elle ne modifie jamais l’entrée ; l’architecture maintient une stricte frontière de lecture seule distincte de tout comportement de correction automatique. - Le rapport regroupe les constats par gravité ;
passes()renvoie true lorsqu’il n’y a aucune erreur, et les avertissements ne font jamais échouer un rapport. - Chaque rapport porte une clause de non-responsabilité juridique intégrée précisant que le résultat est une vérification technique de structure fournie à titre de référence uniquement ; tu dois faire apparaître cette clause dans la sortie présentée aux utilisateurs.
- La vérification d’intégrité LTV confirme uniquement la présence structurelle DSS ; elle ne vérifie pas cryptographiquement les données OCSP/CRL intégrées.
- La politique eIDAS-qualifiée valide la structure PAdES au seul niveau du PDF ; la qualification effective dépend du prestataire de services de confiance et du certificat, hors de ce module.
Limite de publication
Section intitulée « Limite de publication »Cette page documente uniquement le comportement observable de l’extérieur et la surface d’API publique prise en charge. Les chemins d’espace de noms internes, les classes utilitaires, les tables de mécanismes, les noms de fichiers de runbook et les préfixes de ticket sont hors périmètre.
Repli Core
Section intitulée « Repli Core »NextPDF Core Compliance fournit des validateurs de flux d’octets et un contrôle croisé de grammaire ; un résultat sans aucun constat est un résultat vérifié, pas un certificat. Les politiques prédéfinies d’archivage, de signature, de LTV et de secteurs réglementés, avec un format de rapport unique, n’ont aucun équivalent au palier Core.
Repli Pro
Section intitulée « Repli Pro »NextPDF Pro Compliance valide EN 16931 / Factur-X / ZUGFeRD en mémoire (in-process) au niveau de la facture électronique. Il ne fournit pas les politiques structurelles prédéfinies PDF/A-4, PAdES, LTV, FDA Part 11 ou SEC 17a-4 ; celles-ci sont fournies uniquement dans le paquet nextpdf/enterprise. La surface à sidecars externes Enterprise Compliance est un module distinct.
Note sur la limite Enterprise
Section intitulée « Note sur la limite Enterprise »Le point d’entrée, la fabrique de politiques et le rapport sont décrits au niveau du comportement. Les détails internes des règles propres à chaque politique et tout détail de classification interne sont hors du périmètre de la surface publique. La validité cryptographique de la signature est délibérément hors périmètre ici ; elle est gérée par le volet de vérification Vérification de signature et par les modules Sécurité.
Limite de déploiement
Section intitulée « Limite de déploiement »La validation s’exécute en mémoire (in-process) et localement, sans aucune E/S réseau ; une politique ne peut pas altérer l’entrée. L’opérateur traite les octets de PDF provenant de sources non fiables comme hostiles, fait apparaître la clause de non-responsabilité du rapport dans la sortie présentée aux utilisateurs et assume les contrôles de conservation et de minimisation pour les rapports et les constats, qui peuvent contenir des données personnelles issues de documents signés et de métadonnées de piste d’audit.
Limite juridique et de conformité
Section intitulée « Limite juridique et de conformité »La prise en charge d’une norme n’est pas la conformité à celle-ci, et la conformité n’est pas la certification ; NextPDF ne détient aucune certification et n’en accorde aucune. Les politiques FDA 21 CFR Part 11 et SEC 17a-4 vérifient uniquement des attributs structurels et n’établissent pas la conformité juridique. Cette documentation n’est pas un avis juridique ; consulte ton équipe de conformité pour la suffisance juridique.
Voir aussi
Section intitulée « Voir aussi »- Compliance — sidecars de validateurs externes (surface distincte).
- Evidence — paquets de rapports scellés et horodatés.
- Core Compliance — validateurs de flux d’octets en mémoire (in-process).
- Vérification de signature — volet de vérification cryptographique CMS / horodatage / chaîne d’archivage (distinct de cette surface structurelle).
- Spécifications : PDF/A-4 — norme référencée.
- Validation — Référence approfondie — détails internes des règles propres à chaque politique et référence de classes complète.