Enterprise edición
Validación
De un vistazo
Sección titulada «De un vistazo»NextPDF Enterprise ejecuta comprobaciones estructurales de solo lectura en proceso según directivas con nombre: PDF/A-4, base de PAdES, estado de la validación a largo plazo (LTV), ZUGFeRD, 21 CFR Part 11 de la Administración de Alimentos y Medicamentos de EE. UU. (FDA) y 17a-4 de la Comisión de Bolsa y Valores de EE. UU. (SEC). Devuelve un informe técnico estructurado. El informe no constituye asesoramiento jurídico, aval de cumplimiento ni certificación.
Disponibilidad y licenciamiento
Sección titulada «Disponibilidad y licenciamiento»Esta funcionalidad se incluye en NextPDF Enterprise (nextpdf/enterprise) y se activa con un sobre de licencia de nivel Enterprise. Un despliegue sin esa titularidad no carga las clases de la funcionalidad. Comparar ediciones y obtener una licencia.
Instalación
Sección titulada «Instalación»composer require nextpdf/enterprise:^3Descripción conceptual
Sección titulada «Descripción conceptual»Compliance es el punto de entrada. Compliance::assess($pdfBytes, $policy) (o una instancia inyectada con run()) aplica una CompliancePolicy sobre los bytes del PDF y devuelve un ComplianceReport. La directiva define el trabajo; el informe aporta el resultado estructurado.
Policies ofrece fábricas de directivas predefinidas: pdfA4(), pdfA4e(), pdfA4f(), padesBaseline(), eidasQualified(), ltvHealth(), zugferd($profile), fdaPart11() y la familia SEC 17a-4 (sec17a4(), sec17a4Compatible(), sec17a4Structural(), sec17a4PreSign()). Cada fábrica devuelve una CompliancePolicy cuyo método validate() es puro: entran bytes del PDF, salen hallazgos. La arquitectura impone una frontera estricta de solo lectura: una directiva nunca muta los bytes del PDF, de modo que la validación permanece separada de cualquier comportamiento de corrección automática.
ComplianceReport agrupa los hallazgos por Severity (Error, Warning, Info). passes() devuelve verdadero cuando no hay errores; las advertencias no hacen que un informe falle. El informe incluye una cláusula de exención de responsabilidad jurídica integrada (getDisclaimer()) que indica que el resultado es una comprobación técnica de la estructura solo a título de referencia y que la determinación final corresponde a profesionales jurídicos o de cumplimiento calificados. Es obligatorio mostrar esa cláusula de exención de responsabilidad en la salida orientada al usuario.
Hay una segunda frontera importante para las firmas. LtvHealthCheck comprueba la presencia estructural del Document Security Store (DSS) según ISO 32000-2:2020 §12.8.4.3; no verifica criptográficamente los datos incrustados del Online Certificate Status Protocol (OCSP) ni de las listas de revocación de certificados (CRL). eidasQualified() valida la estructura PAdES únicamente a nivel del PDF; la cualificación eIDAS real depende del proveedor de servicios de confianza (TSP) y del certificado cualificado, que están fuera de este módulo.
Qué significa aquí «validación»
Sección titulada «Qué significa aquí «validación»»Este módulo comprueba atributos estructurales e informa sobre los hallazgos. No certifica un documento ni garantiza que este satisfaga una normativa.
- La conformidad es una propiedad del archivo final junto con un validador, no de esta biblioteca. ISO 19005-4:2020 §5.2 determina la conformidad frente a los requisitos normativos del estándar mediante una herramienta de comprobación, no mediante el software productor.
- Un informe que pasa la comprobación es un resultado comprobado frente a las reglas que implementa cada directiva. No es un certificado.
- Las directivas de FDA 21 CFR Part 11 y SEC 17a-4 comprueban los atributos estructurales que esas normativas implican (presencia de firma, intención de firma, marcadores de pista de auditoría, restricciones de escritura única y lectura múltiple (WORM)). No establecen el cumplimiento legal de esas normativas. Su equipo de cumplimiento determina la suficiencia legal.
La compatibilidad con un estándar no es conformidad con él, y la conformidad no es certificación. NextPDF no posee ninguna certificación ni la otorga.
Frontera entre niveles
Sección titulada «Frontera entre niveles»- NextPDF Core
Complianceincluye validadores de flujo de bytes y una comprobación cruzada de gramática; un resultado sin hallazgos es un resultado comprobado, no un certificado. - NextPDF Pro
Compliance(EInvoiceValidator) valida EN 16931 / Factur-X / ZUGFeRD en proceso en la capa de factura electrónica. - NextPDF Enterprise Validation (esta página) añade directivas predefinidas para comprobaciones estructurales de archivado, firma, LTV y sectores regulados (FDA Part 11, SEC 17a-4) con un formato de informe unificado. El módulo Enterprise Compliance es una superficie independiente que delega en sidecars externos; este módulo se ejecuta en proceso.
Por qué funciona así
Sección titulada «Por qué funciona así»La validación se construye como un conjunto de directivas puras de solo lectura, no como una canalización de corrección e informe. El método CompliancePolicy::validate() de cada directiva recibe bytes del PDF y devuelve hallazgos; nunca edita el documento. Así, un informe que pasa la comprobación nunca es un artefacto de que la herramienta «ayude» silenciosamente a que la entrada pase. Solo significa que el archivo se comprobó frente a las reglas que implementa cada directiva. Esa misma frontera es la razón por la que cada informe lleva una cláusula de exención de responsabilidad integrada, y por la que la conformidad sigue siendo una propiedad del archivo final junto con un validador externo, no una autodeclaración del productor. La certificación y la suficiencia legal son decisión de un auditor o de un equipo de cumplimiento, de modo que el módulo informa sobre la estructura y se detiene ahí.
Contexto de diseño: Cumplimiento que puede entregar a un auditor.
Superficie de la API
Sección titulada «Superficie de la API»| Clase | Responsabilidad |
|---|---|
Compliance | Punto de entrada: aplica una directiva y devuelve un informe. |
Policies | Fábrica de instancias predefinidas de CompliancePolicy. |
CompliancePolicy | Contrato: validate() puro que devuelve hallazgos. |
ComplianceReport | Hallazgos agrupados por gravedad; lleva la cláusula de exención de responsabilidad jurídica. |
ComplianceFinding | Un hallazgo: identificador de regla, mensaje, referencia al estándar, corrección. |
Severity | Error / Warning / Info. |
PdfAPolicy | Directiva estructural de la familia PDF/A-4. |
PadesValidator | Directiva estructural de base de PAdES / eIDAS. |
LtvHealthCheck | Comprobación de presencia estructural de DSS (ISO 32000-2 §12.8.4.3). |
ZugferdValidator | Directiva de ZUGFeRD / Factur-X en el nivel del PDF. |
FdaPart11Policy | Directiva de atributos estructurales de FDA 21 CFR Part 11. |
Sec17a4WormPolicy | Directiva estructural WORM de SEC 17a-4 (rigurosidad seleccionable). |
Ejemplo de código — Inicio rápido
Sección titulada «Ejemplo de código — Inicio rápido»use NextPDF\Enterprise\Validation\Compliance;use NextPDF\Enterprise\Validation\Policies;
$report = Compliance::assess($pdfBytes, Policies::pdfA4());$ok = $report->passes(); // no errorsEjemplo de código — Producción
Sección titulada «Ejemplo de código — Producción»$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 outputCasos límite y aspectos a tener en cuenta
Sección titulada «Casos límite y aspectos a tener en cuenta»- Las advertencias nunca hacen que un informe falle; solo los errores establecen
passes()en falso. Un informe limpio sigue significando «comprobado frente a las reglas implementadas», no «conforme». LtvHealthCheckconfirma la estructura DSS, no la validez criptográfica de la revocación.eidasQualified()comprueba únicamente la estructura a nivel del PDF; la cualificación depende del TSP y del certificado.- La familia SEC 17a-4 ofrece una rigurosidad seleccionable (Full / Compatible / Structural / PreSign); elija la que corresponda a la fase de su flujo de trabajo.
Rendimiento
Sección titulada «Rendimiento»Cada directiva se ejecuta en proceso sobre los bytes del PDF suministrados; el costo escala con el tamaño del documento y el número de reglas. Compliance registra la duración de la ejecución en el informe.
Notas de seguridad
Sección titulada «Notas de seguridad»Las directivas analizan los bytes del PDF en proceso y nunca realizan llamadas externas. Trate los bytes del PDF procedentes de fuentes no confiables como hostiles; la arquitectura pura de solo lectura impide que una directiva altere la entrada.
Residencia de datos y mitigaciones de PII
Sección titulada «Residencia de datos y mitigaciones de PII»La validación se realiza en proceso y en local, sin E/S de red. Los documentos firmados y los metadatos de la pista de auditoría pueden contener datos personales; aplique sus propios controles de conservación y minimización a los informes y los hallazgos.
Telemetría segura y depuración de registros
Sección titulada «Telemetría segura y depuración de registros»Los hallazgos incluyen identificadores de regla, referencias a estándares y mensajes; algunos mensajes reproducen nombres de firmantes o cadenas de motivo extraídas del PDF. Depure o redacte esos campos antes de reenviar los registros a destinos compartidos.
Conformidad
Sección titulada «Conformidad»| Comportamiento | Referencia | Estado |
|---|---|---|
| Conformidad determinada frente al estándar, no frente al productor | ISO 19005-4:2020 §5.2 | Reflejado en el diseño (directivas de solo lectura) |
| Presencia estructural de DSS para LTV | ISO 32000-2:2020 §12.8.4.3 | Comprobado (solo estructura) |
| Estructura de base de PAdES | ETSI EN 319 142-1 §5.4.3 | Comprobado (nivel del PDF) |
| Modelo semántico del perfil EN 16931 | Factur-X 1.08 (EN 16931) | Referencia de apoyo (el emisor sigue siendo responsable) |
| FDA 21 CFR Part 11 / SEC 17a-4 | 21 CFR Part 11 / 17 CFR 240.17a-4 | Atributos estructurales comprobados; no verificados legalmente |
Esta tabla registra qué comprueba cada directiva y las especificaciones que respaldan esa directiva. No es una declaración de certificación ni de suficiencia normativa. Las filas de FDA y SEC son únicamente comprobaciones de atributos estructurales; esos estándares de origen no están en el corpus de verificación y no implican ninguna declaración de conformidad Verified.
Comportamiento en modo FIPS
Sección titulada «Comportamiento en modo FIPS»Estas directivas no verifican firmas digitales de PDF, cadenas de certificados, respuestas OCSP/CRL ni cualificación legal; cualquier resumen SHA-256 de la pista de auditoría que calculen son comprobaciones de evidencia de manipulación, no verificación de firma. Los módulos Signature y Security gestionan la validez criptográfica de la firma, la custodia de claves y el comportamiento en modo Federal Information Processing Standards (FIPS).
Modelo de amenazas
Sección titulada «Modelo de amenazas»La entrada principal son bytes de PDF no confiables. Las mitigaciones incluyen directivas puras de solo lectura (sin mutación, sin corrección automática), sin E/S de red y una cláusula de exención de responsabilidad jurídica explícita en cada informe, de modo que un resultado que pasa la comprobación no se confunda con una certificación.
Contrato de comportamiento
Sección titulada «Contrato de comportamiento»- El método
validate()de cada directiva es una función pura: entran bytes del PDF, salen hallazgos. Nunca muta la entrada; la arquitectura mantiene una frontera estricta de solo lectura separada de cualquier comportamiento de corrección automática. - El informe agrupa los hallazgos por gravedad;
passes()devuelve verdadero cuando no hay errores, y las advertencias nunca hacen que un informe falle. - Cada informe lleva una cláusula de exención de responsabilidad jurídica integrada que indica que el resultado es una comprobación técnica de estructura solo a título de referencia; es obligatorio mostrar esa cláusula de exención de responsabilidad en la salida orientada al usuario.
- La comprobación de estado de LTV confirma únicamente la presencia estructural de DSS; no verifica criptográficamente los datos OCSP/CRL incrustados.
- La directiva de eIDAS cualificado valida la estructura PAdES únicamente a nivel del PDF; la cualificación real depende del proveedor de servicios de confianza y del certificado, fuera de este módulo.
Frontera de publicación
Sección titulada «Frontera de publicación»Esta página documenta únicamente el comportamiento observable desde fuera y la superficie pública de la API compatible. Las rutas internas de espacio de nombres, las clases auxiliares, las tablas de mecanismos, los nombres de archivo de runbook y los prefijos de ticket quedan fuera de alcance.
Alternativa de Core
Sección titulada «Alternativa de Core»NextPDF Core Compliance incluye validadores de flujo de bytes y una comprobación cruzada de gramática; un resultado sin hallazgos es un resultado comprobado, no un certificado. Las directivas predefinidas de archivado, firma, LTV y sectores regulados con un formato de informe unificado no tienen equivalente en el nivel Core.
Alternativa de Pro
Sección titulada «Alternativa de Pro»NextPDF Pro Compliance valida EN 16931 / Factur-X / ZUGFeRD en proceso en la capa de factura electrónica. No proporciona las directivas estructurales predefinidas de PDF/A-4, PAdES, LTV, FDA Part 11 ni SEC 17a-4; estas se incluyen únicamente en el paquete nextpdf/enterprise. La superficie de sidecars externos de Enterprise Compliance es un módulo independiente.
Nota sobre la frontera de Enterprise
Sección titulada «Nota sobre la frontera de Enterprise»El punto de entrada, la fábrica de directivas y el informe se describen a nivel de comportamiento. Los detalles internos de las reglas de cada directiva y cualquier detalle de clasificación interno quedan fuera del alcance de la superficie pública. La validez criptográfica de la firma queda deliberadamente fuera de alcance aquí; la parte de verificación de Verificación de firmas y los módulos Security la gestionan.
Frontera de despliegue
Sección titulada «Frontera de despliegue»La validación se ejecuta en proceso y en local, sin E/S de red; una directiva no puede alterar la entrada. El operador trata los bytes del PDF procedentes de fuentes no confiables como hostiles, muestra la cláusula de exención de responsabilidad del informe en la salida orientada al usuario y se responsabiliza de los controles de conservación y minimización de los informes y los hallazgos, que pueden contener datos personales procedentes de documentos firmados y de metadatos de la pista de auditoría.
Frontera de cumplimiento legal
Sección titulada «Frontera de cumplimiento legal»La compatibilidad con un estándar no es conformidad con él, y la conformidad no es certificación; NextPDF no posee ninguna certificación ni la otorga. Las directivas de FDA 21 CFR Part 11 y SEC 17a-4 comprueban únicamente atributos estructurales y no establecen el cumplimiento legal. Esta documentación no es una opinión legal; consulte a su equipo de cumplimiento para determinar la suficiencia legal.
Consulte también
Sección titulada «Consulte también»- Compliance: sidecars de validador externos (superficie distinta).
- Evidence: paquetes de informes sellados y con marca de tiempo.
- Core Compliance: validadores de flujo de bytes en proceso.
- Verificación de firmas: parte de verificación criptográfica de CMS / marca de tiempo / cadena de archivado (distinta de esta superficie estructural).
- Especificaciones: PDF/A-4: estándar referenciado.
- Validación — Referencia detallada: detalles internos de las reglas de cada directiva y referencia completa de clases.