Salta ai contenuti
getnextpdf.com

Enterprise edizione

Privacy

NextPDF Enterprise Privacy rileva il testo corrispondente ai pattern di dati personali (PII) configurati e lo redige, sopprime le righe che lo contengono oppure lo sostituisce con pseudonimi deterministici reversibili supportati da una mappa a riposo cifrata. Rimuove il contenuto corrispondente alle regole configurate come testato. Non garantisce la rimozione completa dei dati personali (PII) e non è una dichiarazione di conformità normativa.

Questa funzionalità è inclusa in NextPDF Enterprise (nextpdf/enterprise) e si attiva con un envelope di licenza di livello Enterprise. Una distribuzione priva di tale diritto non carica le classi della funzionalità. Confronta le edizioni e ottieni una licenza.

Terminal window
composer require nextpdf/enterprise:^3

Il rilevamento è basato su pattern. Un rilevatore analizza il testo rispetto a un registry di pattern di espressioni regolari e include pattern incorporati per indirizzi email, numeri di telefono, numeri di previdenza sociale degli Stati Uniti, numeri di carta di credito e numeri di documento d’identità nazionale di Taiwan. Una distribuzione può registrare pattern aggiuntivi. Il rilevamento individua esclusivamente i tipi configurati; un valore che nessun pattern corrisponde non viene rilevato, e una pagina acquisita da scanner priva di un livello di testo non produce alcuna corrispondenza.

Una politica di redazione controlla il comportamento. In modalità solo rilevamento il motore restituisce i rilievi senza modificare il contenuto. In modalità redazione sostituisce ogni span corrispondente con una sostituzione a riquadro nero, a riquadro bianco o testuale. Il de-identificatore aggiunge una strategia di soppressione che rimuove intere righe contenenti una corrispondenza anziché mascherare i singoli span. Ogni esecuzione restituisce lo SHA-256 del testo originale, il contenuto modificato, un report dettagliato e un flag di modifica.

La pseudonimizzazione è reversibile per progettazione. Il motore sostituisce le entità rilevate con pseudonimi deterministici e consapevoli del formato, derivati da un HMAC sul valore originale e da un seed per sessione, così che lo stesso valore sia mappato in modo coerente all’interno di una sessione, mentre tra sessioni diverse i token non si correlano per uguaglianza deterministica. La mappa da originale a pseudonimo viene serializzata e cifrata a riposo con AES-256-GCM e una chiave versionata, supportando la rotazione delle chiavi. La reidratazione ripristina i valori originali, ma solo con la chiave corretta e la mappa cifrata corrispondente; senza di esse i valori originali non sono recuperabili dal solo testo pseudonimizzato.

Queste operazioni implementano la de-identificazione, che rimuove l’associazione tra i dati e la persona — ISO/IEC 29100:2024 §2. La pseudonimizzazione sostituisce un identificatore con un alias ed è, per definizione, reversibile con la mappatura conservata separatamente — ISO/IEC 29100:2024 §2. L’anonimizzazione mira a impedire l’identificazione in modo irreversibile — ISO/IEC 29100:2024 §2; questa superficie Enterprise esegue redazione con ambito di pattern, soppressione e pseudonimizzazione reversibile, non anonimizzazione. Il rischio residuo di reidentificazione dipende dagli attributi che rimangono dopo la de-identificazione — ISO/IEC 29100:2024 §2, e la de-identificazione riduce ma non elimina tale rischio — ISO/IEC 29151:2017. Trattare l’output come contenuto corrispondente alle regole configurate rimosso o sostituito come testato, non come una garanzia di rimozione completa dei dati personali (PII), di irreversibilità o di conformità normativa.

La reversibilità è la scelta portante. Gli pseudonimi sono output HMAC-SHA256 sul valore originale e su un seed per sessione, così che lo stesso valore sia mappato sullo stesso token per l’intera sessione e le relazioni interne del documento sopravvivano. Un seed casuale nuovo per ogni sessione fa sì che lo stesso valore non sia mappato sullo stesso token tra sessioni diverse, perciò gli pseudonimi non si correlano per uguaglianza deterministica dei token tra sessioni, il che riduce la collegabilità deterministica senza una ricerca centralizzata. La mappatura è deliberatamente conservata — cifrata a riposo con AES-256-GCM — così che una reidratazione autorizzata possa ripristinare gli originali; è questa reversibilità che rende questa una pseudonimizzazione ai sensi di ISO/IEC 29100:2024 §2, non un’anonimizzazione. Il compromesso è accettato: la mappa cifrata, non il testo pseudonimizzato, diventa l’artefatto sensibile, perciò la riservatezza si riduce alla custodia delle chiavi. I token consapevoli del formato preservano la forma di ciascuna entità, così che i parser a valle continuino a funzionare, al costo che i validatori di checksum possano rifiutare un valore dalla forma corretta ma sintetico.

Contesto di progettazione: La redazione non è un rettangolo nero.

TipoGenereRuoloStabilitàDa
PiiDetectorclassRilevamento dei dati personali (PII) basato su pattern; supporta la registrazione di pattern personalizzatistable2.2.0
RedactionEngineclassRedazione del testo solo rilevamento o distruttiva per politicastable2.2.0
DeIdentifierclassDispatch della strategia di redazione o soppressione di righestable2.2.0
RedactionPolicyclassTipi di entità di destinazione, toggle di redazione, stile di sostituzionestable2.2.0
PseudonymizationEngineclassSostituzione con pseudonimi deterministici e consapevoli del formatostable2.2.0
PrivacyGatewayclassPseudonimizzazione/reidratazione con ambito di documento e auditstable2.2.0
RehydrationServiceclassRipristina gli originali da una mappa cifratastable2.2.0
EncryptedMapSerializerclassSerializzazione della mappa a riposo AES-256-GCM con versionamento delle chiavistable2.2.0
PrivacyAuditTrailclassLog append-only delle operazioni di pseudonimizzazione/reidratazionestable2.2.0
EntityType / RedactionStyle / DeIdentificationStrategyenumsVocabolario di entità, stile e strategiastable2.2.0

L’audit trail è append-only per contratto: registra un id di sessione, l’operazione, un conteggio di entità, un hash di politica, un timestamp e un id di tenant. Non registra i valori rilevati.

Detect and redact configured PII
<?php
declare(strict_types=1);
require_once __DIR__ . '/vendor/autoload.php';
use NextPDF\Enterprise\Privacy\PiiDetector;
use NextPDF\Enterprise\Privacy\RedactionEngine;
use NextPDF\Enterprise\Privacy\RedactionPolicy;
/**
* Redact every configured entity type from text content.
*
* @param string $content The text to process.
*
* @return string The redacted text.
*/
function redactAll(string $content): string
{
$engine = new RedactionEngine(new PiiDetector());
return $engine->redact($content, RedactionPolicy::allEntities())
->redactedContent;
}

RedactionPolicy::allEntities() mira ai tipi incorporati. Un valore che nessun pattern configurato corrisponde non viene redatto.

Reversible pseudonymization with audit and safe logging
<?php
declare(strict_types=1);
require_once __DIR__ . '/vendor/autoload.php';
use NextPDF\Enterprise\Privacy\PrivacyGateway;
use NextPDF\Enterprise\Privacy\PrivacyPolicy;
use NextPDF\Enterprise\Privacy\EntityType;
use Psr\Log\LoggerInterface;
final readonly class DocumentDeidentifier
{
public function __construct(
private PrivacyGateway $gateway,
private LoggerInterface $logger,
) {}
/**
* Pseudonymize a document and return the encrypted reversal map.
*
* @param non-empty-string $text Document text.
* @param list<array{text: non-empty-string, type: EntityType}> $entities Detected entities.
*
* @return array{text: string, encrypted_map: non-empty-string}
*/
public function process(string $text, array $entities): array
{
$policy = PrivacyPolicy::piiOnly('session-' . bin2hex(random_bytes(6)));
$result = $this->gateway->pseudonymize($text, $entities, $policy);
$this->logger->info('Pseudonymization complete', [
'entityCount' => $result['entity_count'],
]);
return ['text' => $result['text'], 'encrypted_map' => $result['encrypted_map']];
}
}

Il record di log riporta soltanto un conteggio. Non riporta il testo del documento, i valori rilevati né la mappa cifrata.

  • Il rilevamento ha ambito di pattern. Un valore che nessun pattern corrisponde non viene rilevato. Il motore non asserisce che tutti i dati personali siano individuati, e il risultato non è una garanzia di rimozione completa dei dati personali (PII).
  • Le pagine acquisite da scanner non hanno alcun livello di testo. Il rilevamento basato su pattern di testo non produce alcuna corrispondenza; combinare con la superficie di overlay ricercabile di Intelligence se occorre prima il testo.
  • La pseudonimizzazione è reversibile per definizione. Chiunque disponga della chiave corretta e della mappa cifrata corrispondente può ripristinare gli originali. Questa non è anonimizzazione; non presentare l’output pseudonimizzato come irreversibile.
  • Gli pseudonimi consapevoli del formato preservano una forma (per esempio, un token simile a un documento d’identità o a un’email). Un sistema a valle che convalida i checksum può rifiutare uno pseudonimo; ciò è atteso.
  • La mappa cifrata è l’artefatto sensibile. Perderla rende impossibile la reidratazione; farla trapelare insieme alla sua chiave rende la pseudonimizzazione reversibile da parte di terzi. Trattare la custodia delle chiavi e l’archiviazione della mappa come una responsabilità della distribuzione.
  • La redazione opera sul contenuto di testo che le viene passato. Non appiattisce di per sé un’immagine, non rimuove una miniatura e non elimina i metadati del documento; impostare la pipeline di conseguenza.

Il costo del rilevamento cresce con il numero di pattern e la lunghezza del testo. La pseudonimizzazione aggiunge un HMAC per ciascuna entità univoca e un sigillo AES-256-GCM della mappa. Il budget wall di 1500 ms copre un tipico documento aziendale. Il profilo di riproducibilità è structural: gli pseudonimi sono deterministici per un seed fisso, ma il timestamp di audit e il seed di sessione casuale variano tra le esecuzioni, perciò due esecuzioni differiscono in quei campi.

La mappa a riposo usa la cifratura autenticata. La mappa è sigillata con AES-256-GCM e una chiave versionata; la reidratazione è impossibile senza la versione corretta della chiave. La generazione, la custodia e la rotazione delle chiavi sono responsabilità della distribuzione; la libreria consuma una chiave, non gestisce un key store. L’audit trail è append-only e registra metadati, mai i valori rilevati. Ogni fonte normativa è parafrasata e nessuna è riprodotta.

Residenza dei dati e mitigazioni dei dati personali (PII)

Sezione intitolata “Residenza dei dati e mitigazioni dei dati personali (PII)”

Il rilevamento, la redazione e la pseudonimizzazione vengono eseguiti in-process sull’host. Nessun contenuto del documento lascia l’host per nessuna di queste operazioni. La mappa cifrata e qualsiasi output reidratato sono dati personali; dove vengono archiviati, e quale giurisdizione li elabora, è una responsabilità della distribuzione esterna al confine della libreria. La libreria esegue la de-identificazione con ambito di pattern come testato; non certifica la conformità al GDPR, all’HIPAA o a qualsiasi altra normativa, e non esegue anonimizzazione. Il rischio residuo di reidentificazione dipende dagli attributi che rimangono — ISO/IEC 29151:2017.

La libreria solleva eccezioni tipizzate con messaggi strutturali e non inserisce mai i valori rilevati, i byte del documento o la mappa cifrata nel testo dell’eccezione. Una distribuzione che effettua il logging attorno a questa superficie deve registrare conteggi e l’hash di politica — come mostrato nell’esempio di produzione — e non deve registrare il payload PDF grezzo, il testo delle entità rilevate o la mappa degli pseudonimi nei log o in un backend APM. L’audit trail append-only è il record sicuro da conservare.

La mappa a riposo usa AES-256-GCM tramite il provider crittografico della piattaforma. Quando l’host esegue un provider convalidato FIPS, tale operazione viene eseguita all’interno del confine convalidato. NextPDF Enterprise esegue l’assemblaggio strutturale e non è di per sé un modulo crittografico convalidato FIPS e non avanza alcuna rivendicazione di certificazione FIPS.

AsserzioneStandardClausola
La de-identificazione rimuove l’associazione tra i dati e la persona.ISO/IEC 29100:2024§2
La pseudonimizzazione sostituisce un identificatore con un alias ed è reversibile con la mappatura separata.ISO/IEC 29100:2024§2
L’anonimizzazione mira a impedire l’identificazione in modo irreversibile (questa superficie non anonimizza).ISO/IEC 29100:2024§2
Il rischio residuo di reidentificazione dipende dagli attributi rimanenti.ISO/IEC 29100:2024§2
I controlli di privacy sono applicati ai dati personali (PII).ISO/IEC 29100:2024§6.5
La de-identificazione riduce ma non elimina il rischio residuo.ISO/IEC 29151:2017controlli di de-identificazione
Minimizzare la collegabilità dei dati de-identificati.ISO/IEC 29151:2017minimizzazione dei dati personali (PII)
I controlli sono applicati per proteggere i dati personali (PII).ISO/IEC 29151:2017controlli

Tutte le clausole sono parafrasate. NextPDF non riproduce il testo normativo. Consultare gli standard pubblicati per il testo autorevole. NextPDF non avanza alcuna rivendicazione di conformità alle normative sulla privacy; questa pagina indica il comportamento di de-identificazione testato e i suoi confini, non uno stato di conformità certificato.

  • Il rilevamento ha ambito di pattern: individua esclusivamente i tipi configurati; un valore che nessun pattern corrisponde non viene rilevato e una pagina priva di un livello di testo non produce alcuna corrispondenza.
  • Una politica di redazione seleziona solo rilevamento, sostituzione dello span (riquadro nero / riquadro bianco / testo) o soppressione dell’intera riga; ogni esecuzione restituisce lo SHA-256 del testo originale, il contenuto modificato, un report dettagliato e un flag di modifica.
  • La pseudonimizzazione è reversibile per progettazione: gli pseudonimi deterministici derivati da HMAC sono coerenti all’interno di una sessione, e la reidratazione richiede la versione corretta della chiave e la mappa a riposo AES-256-GCM corrispondente.
  • L’audit trail append-only registra l’id di sessione, l’operazione, il conteggio delle entità, l’hash di politica, il timestamp e l’id di tenant — mai i valori rilevati.
  • L’output è contenuto corrispondente alle regole configurate rimosso o sostituito come testato, non una garanzia di rimozione completa dei dati personali (PII), di irreversibilità o di conformità normativa.

Questa pagina documenta esclusivamente il comportamento osservabile dall’esterno e la superficie API pubblica supportata. I percorsi di namespace interni, le classi helper, le tabelle dei meccanismi, i nomi di file dei runbook e i prefissi di ticket sono fuori ambito.

NextPDF Core (Apache-2.0) non dispone di alcuna superficie di rilevamento dei dati personali (PII), redazione o pseudonimizzazione — nessuna; questa funzionalità non ha un equivalente di livello Core.

NextPDF Pro include una superficie di rilevamento dei dati personali (PII) sul livello di testo e un mascheramento al momento della generazione; non fornisce la pseudonimizzazione reversibile, la mappa a riposo cifrata, la soppressione di righe né l’audit trail append-only. Queste sono incluse esclusivamente nel pacchetto nextpdf/enterprise.

Il rilevamento, la redazione, la soppressione e la pseudonimizzazione sono descritti a livello di comportamento. La libreria consuma una chiave di cifratura; non gestisce un key store, e le componenti interne di generazione, custodia e rotazione delle chiavi sono fuori ambito per la superficie pubblica.

La mappa cifrata e qualsiasi output reidratato sono dati personali; dove vengono archiviati e quale giurisdizione li elabora è una responsabilità della distribuzione esterna al confine della libreria. La generazione, la custodia e la rotazione delle chiavi sono responsabilità della distribuzione — la libreria consuma una versione di chiave, non gestisce un key store. Perdere la mappa rende impossibile la reidratazione; farla trapelare insieme alla sua chiave rende la pseudonimizzazione reversibile da parte di terzi.

La mappa a riposo usa la cifratura autenticata. La libreria esegue la de-identificazione con ambito di pattern come testato e non certifica la conformità al GDPR, all’HIPAA o a qualsiasi altra normativa, e non esegue anonimizzazione. Questa documentazione non è un parere legale; consultare i propri consulenti di conformità e legali.