Enterprise edição
Privacidade
Em resumo
Seção intitulada “Em resumo”O NextPDF Enterprise Privacy detecta texto que corresponde a padrões de PII configurados e o redige, suprime as linhas que o contêm ou o substitui por pseudônimos determinísticos reversíveis apoiados por um mapa cifrado em repouso. Ele remove o conteúdo que corresponde às regras configuradas, conforme testado. Ele não garante a remoção completa de PII e não é uma declaração de conformidade regulatória.
Disponibilidade e licenciamento
Seção intitulada “Disponibilidade e licenciamento”Esta capacidade é entregue no NextPDF Enterprise (nextpdf/enterprise) e é ativada com um envelope de licença de nível Enterprise. Uma implantação sem esse direito de uso não carrega as classes da capacidade. Compare as edições e obtenha uma licença.
Instalação
Seção intitulada “Instalação”composer require nextpdf/enterprise:^3Visão conceitual
Seção intitulada “Visão conceitual”A detecção é baseada em padrões. Um detector varre o texto em relação a um registro de padrões de expressão regular e traz padrões integrados para endereços de e-mail, números de telefone, números de Social Security dos Estados Unidos, números de cartão de crédito e números de identidade nacional de Taiwan. Uma implantação pode registrar padrões adicionais. A detecção encontra apenas os tipos configurados; um valor que nenhum padrão corresponde não é detectado, e uma página digitalizada sem camada de texto não produz nenhuma correspondência.
Uma política de redação controla o comportamento. No modo somente-detecção, o motor retorna achados sem alterar o conteúdo. No modo de redação, ele substitui cada trecho correspondente por uma substituição de caixa preta (black-box), caixa branca (white-box) ou texto. O desidentificador acrescenta uma estratégia de supressão que remove linhas inteiras contendo uma correspondência em vez de mascarar trechos individuais. Cada execução retorna o SHA-256 do texto original, o conteúdo modificado, um relatório detalhado e uma flag de modificado.
A pseudonimização é reversível por design. O motor substitui as entidades detectadas por pseudônimos determinísticos e cientes do formato, derivados de um HMAC sobre o valor original e uma semente por sessão, de modo que o mesmo valor mapeie de forma consistente dentro de uma sessão, enquanto, entre sessões, os tokens não se correlacionam por igualdade determinística. O mapa de original-para-pseudônimo é serializado e cifrado em repouso com AES-256-GCM e uma chave versionada, dando suporte à rotação de chaves. A reidratação restaura os valores originais, mas apenas com a chave correta e o mapa cifrado correspondente; sem eles, os valores originais não são recuperáveis apenas a partir do texto pseudonimizado.
Essas operações implementam a desidentificação, que remove a associação entre os dados e a pessoa — ISO/IEC 29100:2024 §2. A pseudonimização substitui um identificador por um alias e é, por definição, reversível com o mapeamento mantido separadamente — ISO/IEC 29100:2024 §2. A anonimização visa impedir irreversivelmente a identificação — ISO/IEC 29100:2024 §2; esta superfície do Enterprise realiza redação, supressão e pseudonimização reversível com escopo por padrão, não anonimização. O risco residual de reidentificação depende dos atributos que permanecem após a desidentificação — ISO/IEC 29100:2024 §2, e a desidentificação reduz, mas não elimina, esse risco — ISO/IEC 29151:2017. Trate a saída como conteúdo que corresponde às regras configuradas removido ou substituído conforme testado, não como uma garantia de remoção completa de PII, de irreversibilidade ou de conformidade regulatória.
Por que funciona assim
Seção intitulada “Por que funciona assim”A reversibilidade é a escolha estrutural. Os pseudônimos são saídas de HMAC-SHA256 sobre o valor original e uma semente por sessão, de modo que o mesmo valor mapeia para o mesmo token ao longo de uma sessão e as relações internas do documento sobrevivem. Uma nova semente aleatória por sessão significa que o mesmo valor não mapeia para o mesmo token entre sessões, de modo que os pseudônimos não se correlacionam por igualdade determinística de token entre sessões, o que reduz a vinculabilidade determinística sem uma consulta central. O mapeamento é deliberadamente mantido — cifrado em repouso com AES-256-GCM — para que a reidratação autorizada possa restaurar os originais; é essa reversibilidade que torna isto uma pseudonimização sob a ISO/IEC 29100:2024 §2, não uma anonimização. O tradeoff é aceito: o mapa cifrado, e não o texto pseudonimizado, torna-se o artefato sensível, de modo que a confidencialidade se reduz à custódia de chaves. Os tokens cientes do formato preservam a forma de cada entidade, de modo que os parsers a jusante continuam funcionando, ao custo de que validadores de checksum possam rejeitar um valor com forma, mas sintético.
Contexto de design: Redação não é um retângulo preto.
Superfície de API
Seção intitulada “Superfície de API”| Type | Kind | Role | Stability | Since |
|---|---|---|---|---|
PiiDetector | class | Pattern-based PII detection; supports custom pattern registration | stable | 2.2.0 |
RedactionEngine | class | Detect-only or destructive text redaction by policy | stable | 2.2.0 |
DeIdentifier | class | Redact or line-suppress strategy dispatch | stable | 2.2.0 |
RedactionPolicy | class | Target entity types, redaction toggle, replacement style | stable | 2.2.0 |
PseudonymizationEngine | class | Deterministic, format-aware pseudonym replacement | stable | 2.2.0 |
PrivacyGateway | class | Document-scoped pseudonymize/rehydrate with audit | stable | 2.2.0 |
RehydrationService | class | Restores originals from an encrypted map | stable | 2.2.0 |
EncryptedMapSerializer | class | AES-256-GCM at-rest map serialization with key versioning | stable | 2.2.0 |
PrivacyAuditTrail | class | Append-only log of pseudonymize/rehydrate operations | stable | 2.2.0 |
EntityType / RedactionStyle / DeIdentificationStrategy | enums | Entity, style, and strategy vocabulary | stable | 2.2.0 |
A trilha de auditoria é somente-acréscimo por contrato: ela registra um id de sessão, a operação, a contagem de entidades, um hash de política, um timestamp e um id de tenant. Ela não registra os valores detectados.
Exemplo de código — Início rápido
Seção intitulada “Exemplo de código — Início rápido”<?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() tem como alvo os tipos integrados. Um valor que nenhum padrão configurado corresponde não é redigido.
Exemplo de código — Produção
Seção intitulada “Exemplo de código — Produção”<?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']]; }}O registro de log carrega apenas uma contagem. Ele não carrega o texto do documento, os valores detectados nem o mapa cifrado.
Casos extremos e pegadinhas
Seção intitulada “Casos extremos e pegadinhas”- A detecção tem escopo por padrão. Um valor que nenhum padrão corresponde não é detectado. O motor não afirma que todos os dados pessoais são encontrados, e o resultado não é uma garantia de remoção completa de PII.
- Páginas digitalizadas não têm camada de texto. A detecção por padrões de texto não produz nenhuma correspondência; combine com a superfície de sobreposição pesquisável do Intelligence se o texto for necessário primeiro.
- A pseudonimização é reversível por definição. Qualquer pessoa com a chave correta e o mapa cifrado correspondente pode restaurar os originais. Isso não é anonimização; não apresente a saída pseudonimizada como irreversível.
- Os pseudônimos cientes do formato preservam uma forma (por exemplo, um token semelhante a um ID ou a um e-mail). Um sistema a jusante que valide checksums pode rejeitar um pseudônimo; isso é esperado.
- O mapa cifrado é o artefato sensível. Perdê-lo torna a reidratação impossível; vazá-lo junto com sua chave torna a pseudonimização reversível por um terceiro. Trate a custódia de chaves e o armazenamento do mapa como responsabilidade de implantação.
- A redação opera sobre o conteúdo de texto que lhe é passado. Ela não achata uma imagem, não remove uma miniatura nem retira os metadados do documento por si só; ajuste o pipeline de acordo.
Desempenho
Seção intitulada “Desempenho”O custo de detecção escala com a contagem de padrões e o comprimento do texto. A pseudonimização acrescenta um HMAC por entidade única e um selo AES-256-GCM do mapa. O orçamento de 1500 ms de wall cobre um documento de negócios típico. O perfil de reprodutibilidade é structural: os pseudônimos são determinísticos para uma semente fixa, mas o timestamp de auditoria e a semente de sessão aleatória variam entre execuções, de modo que duas execuções diferem nesses campos.
Notas de segurança
Seção intitulada “Notas de segurança”O mapa em repouso usa criptografia autenticada. O mapa é selado com AES-256-GCM e uma chave versionada; a reidratação é impossível sem a versão de chave correta. A geração, a custódia e a rotação de chaves são responsabilidade da implantação; a biblioteca consome uma chave, ela não gerencia um repositório de chaves. A trilha de auditoria é somente-acréscimo e registra metadados, nunca os valores detectados. Toda fonte normativa é parafraseada e nenhuma é reproduzida.
Residência de dados e mitigações de PII
Seção intitulada “Residência de dados e mitigações de PII”A detecção, a redação e a pseudonimização são executadas em processo no host. Nenhum conteúdo de documento sai do host em nenhuma dessas operações. O mapa cifrado e qualquer saída reidratada são dados pessoais; onde eles são armazenados, e qual jurisdição os processa, é uma responsabilidade da implantação, fora do limite da biblioteca. A biblioteca realiza a desidentificação com escopo por padrão conforme testado; ela não certifica conformidade com a GDPR, a HIPAA ou qualquer outra regulamentação, e não realiza anonimização. O risco residual de reidentificação depende dos atributos que permanecem — ISO/IEC 29151:2017.
Telemetria segura e limpeza de logs
Seção intitulada “Telemetria segura e limpeza de logs”A biblioteca lança exceções tipadas com mensagens estruturais e nunca coloca valores detectados, bytes do documento ou o mapa cifrado no texto da exceção. Uma implantação que registre logs em torno desta superfície deve registrar contagens e o hash de política — como mostrado no exemplo de produção — e não deve registrar o payload bruto do PDF, o texto de entidade detectada nem o mapa de pseudônimos em logs ou em um backend de APM. A trilha de auditoria somente-acréscimo é o registro seguro a reter.
Comportamento em modo FIPS
Seção intitulada “Comportamento em modo FIPS”O mapa em repouso usa AES-256-GCM por meio do provedor de criptografia da plataforma. Quando o host executa um provedor validado por FIPS, essa operação é executada no limite validado. O NextPDF Enterprise realiza a montagem estrutural e não é, ele próprio, um módulo criptográfico validado por FIPS e não faz nenhuma afirmação de certificação FIPS.
Conformidade
Seção intitulada “Conformidade”| Claim | Standard | Clause |
|---|---|---|
| A desidentificação remove a associação entre os dados e a pessoa. | ISO/IEC 29100:2024 | §2 |
| A pseudonimização substitui um identificador por um alias e é reversível com o mapeamento separado. | ISO/IEC 29100:2024 | §2 |
| A anonimização visa impedir irreversivelmente a identificação (esta superfície não anonimiza). | ISO/IEC 29100:2024 | §2 |
| O risco residual de reidentificação depende dos atributos remanescentes. | ISO/IEC 29100:2024 | §2 |
| Os controles de privacidade são aplicados à PII. | ISO/IEC 29100:2024 | §6.5 |
| A desidentificação reduz, mas não elimina, o risco residual. | ISO/IEC 29151:2017 | de-identification controls |
| Minimizar a vinculabilidade de dados desidentificados. | ISO/IEC 29151:2017 | PII minimization |
| Os controles são aplicados para proteger a PII. | ISO/IEC 29151:2017 | controls |
Todas as cláusulas são parafraseadas. O NextPDF não reproduz texto normativo. Consulte os padrões publicados para obter a redação autoritativa. O NextPDF não faz nenhuma afirmação de conformidade com regulamentação de privacidade; esta página declara o comportamento de desidentificação testado e seus limites, não um status de conformidade certificado.
Contrato de comportamento
Seção intitulada “Contrato de comportamento”- A detecção tem escopo por padrão: ela encontra apenas os tipos configurados; um valor que nenhum padrão corresponde não é detectado e uma página sem camada de texto não produz nenhuma correspondência.
- Uma política de redação seleciona somente-detecção, substituição de trecho (caixa preta / caixa branca / texto) ou supressão de linha inteira; cada execução retorna o SHA-256 do texto original, o conteúdo modificado, um relatório detalhado e uma flag de modificado.
- A pseudonimização é reversível por design: os pseudônimos derivados de HMAC determinísticos são consistentes dentro de uma sessão, e a reidratação requer a versão de chave correta e o mapa em repouso AES-256-GCM correspondente.
- A trilha de auditoria somente-acréscimo registra o id de sessão, a operação, a contagem de entidades, o hash de política, o timestamp e o id de tenant — nunca os valores detectados.
- A saída é conteúdo que corresponde às regras configuradas removido ou substituído conforme testado, não uma garantia de remoção completa de PII, de irreversibilidade ou de conformidade regulatória.
Limite de publicação
Seção intitulada “Limite de publicação”Esta página documenta apenas o comportamento observável externamente e a superfície pública de API suportada. Caminhos de namespace internos, classes auxiliares, tabelas de mecanismo, nomes de arquivos de runbook e prefixos de tickets estão fora do escopo.
Fallback no Core
Seção intitulada “Fallback no Core”O NextPDF Core (Apache-2.0) não tem superfície de detecção, redação ou pseudonimização de PII — nenhuma; essa capacidade não tem equivalente no nível Core.
Fallback no Pro
Seção intitulada “Fallback no Pro”O NextPDF Pro traz uma superfície de detecção de PII na camada de texto e mascaramento em tempo de geração; ele não fornece pseudonimização reversível, o mapa cifrado em repouso, a supressão de linhas nem a trilha de auditoria somente-acréscimo. Esses recursos são entregues apenas no pacote nextpdf/enterprise.
Nota sobre o limite do Enterprise
Seção intitulada “Nota sobre o limite do Enterprise”A detecção, a redação, a supressão e a pseudonimização são descritas no nível de comportamento. A biblioteca consome uma chave de criptografia; ela não gerencia um repositório de chaves, e os detalhes internos de geração, custódia e rotação de chaves estão fora do escopo da superfície pública.
Limite de implantação
Seção intitulada “Limite de implantação”O mapa cifrado e qualquer saída reidratada são dados pessoais; onde eles são armazenados e qual jurisdição os processa é uma responsabilidade da implantação, fora do limite da biblioteca. A geração, a custódia e a rotação de chaves são responsabilidade da implantação — a biblioteca consome uma versão de chave, ela não gerencia um repositório de chaves. Perder o mapa torna a reidratação impossível; vazá-lo junto com sua chave torna a pseudonimização reversível por um terceiro.
Limite legal e de conformidade
Seção intitulada “Limite legal e de conformidade”O mapa em repouso usa criptografia autenticada. A biblioteca realiza a desidentificação com escopo por padrão conforme testado e não certifica conformidade com a GDPR, a HIPAA ou qualquer outra regulamentação, e não realiza anonimização. Esta documentação não é uma opinião jurídica; consulte seus próprios assessores de conformidade e jurídicos.
Veja também
Seção intitulada “Veja também”- Referência de Privacy — a superfície pública completa de API do módulo Privacy.
- Pro security — mascaramento do Pro e detecção de PII na camada de texto.
- Forensics — análise somente leitura do histórico de revisões.
- NextPDF Enterprise — a superfície completa de recursos do Enterprise.
- Privacy policy — o tratamento de dados do próprio programa de documentação.
- PII · Pseudonymization · De-identification · AES-GCM — termos do glossário.