Como construir um PII ou Keyword Redaction Pipeline com .NET

Como construir um PII ou Keyword Redaction Pipeline com .NET

Redigir informações pessoalmente identificáveis (PII) e palavras-chave sensíveis em imagens escaneadas é crucial para as operações de privacidade, legal e de conformidade. Aspose.OCR Image Text Finder para .NET permite automatizar a detecção e redação em fluxos de trabalho de pacote.

Problemas do mundo real

A redação manual de dados confidenciais em arquivos escaneados é lenta, perigosa e caro.A automação é necessária para garantir um mascaramento confiável e consistente para auditorias de conformidade e privacidade.

Solução Overview

Detectar automaticamente PII ou palavras-chave usando OCR, mascar, blur ou substituí-las na imagem e salvar os resultados redigidos – garantindo privacidade e segurança.

Pré-requisitos

  • Visual Studio 2019 ou posterior
  • .NET 6.0 ou posterior (ou .Net Framework 4.6.2+)
  • Aspose.OCR para .NET de NuGet
  • PII ou lista de palavras-chave em um arquivo de texto
PM> Install-Package Aspose.OCR

Implementação passo a passo

Passo 1: Prepare PII/Lista de palavras-chave e Imagens de entrada

List<string> piiList = new List<string>(File.ReadAllLines("pii_keywords.txt"));
string[] files = Directory.GetFiles("./input", "*.png");

Passo 2: Pesquisar PII / Palavras-chave

RecognitionSettings settings = new RecognitionSettings();
settings.Language = Language.English;
AsposeOcr ocr = new AsposeOcr();
foreach (string file in files)
{
    foreach (string pii in piiList)
    {
        bool found = ocr.ImageHasText(file, pii, settings);
        if (found)
        {
            // Proceed to redact in Step 3
        }
    }
}

Passo 3: Redigir ou Mascar Termos Detetados

  • Enquanto Aspose.OCR detecta termos, a redação deve ser aplicada com bibliotecas de imagens (por exemplo, System.Drawing, SkiaSharp).
// Example using System.Drawing to overlay black box (simplified)
using (var image = new Bitmap(file))
{
    using (var g = Graphics.FromImage(image))
    {
        // Locate/estimate bounding box for found term (requires mapping OCR region, see docs/API)
        // g.FillRectangle(Brushes.Black, x, y, width, height);
    }
    image.Save($"./redacted/redacted_{Path.GetFileName(file)}");
}

Passo 4: Regista arquivos editados

File.AppendAllText("redaction_log.csv", $"{file},{pii},redacted\n");

Passo 5: Complete Batch Workflow Exemplo

using Aspose.OCR;
using System;
using System.Collections.Generic;
using System.IO;
using System.Drawing;

class Program
{
    static void Main(string[] args)
    {
        List<string> piiList = new List<string>(File.ReadAllLines("pii_keywords.txt"));
        string[] files = Directory.GetFiles("./input", "*.png");
        RecognitionSettings settings = new RecognitionSettings();
        settings.Language = Language.English;
        AsposeOcr ocr = new AsposeOcr();
        foreach (string file in files)
        {
            foreach (string pii in piiList)
            {
                bool found = ocr.ImageHasText(file, pii, settings);
                if (found)
                {
                    // Redact by overlay (simplified; see docs for bounding box)
                    using (var image = new Bitmap(file))
                    using (var g = Graphics.FromImage(image))
                    {
                        // Example: Draw rectangle where text is found (requires OCR region info)
                        // g.FillRectangle(Brushes.Black, x, y, width, height);
                        // Save redacted copy
                        image.Save($"./redacted/redacted_{Path.GetFileName(file)}");
                    }
                    File.AppendAllText("redaction_log.csv", $"{file},{pii},redacted\n");
                }
            }
        }
    }
}

Observação: Para mapear a região exata, use APIs da região de reconhecimento da Aspose.OCR para obter coordenadas de blocos de texto detectados e, em seguida, mascar com precisão.

Use Casos e Aplicações

Legal e Conformidade

A redação automática de contratos, arquivos de RH e documentos regulamentados.

Auditoria de Privacidade

Certifique-se de que não houver vazamentos PII em arquivos scannados, embalagens ou documentos de evidência.

Batch DLP (Prevenção da Perda de Dados)

Pare de compartilhar ou armazenar informações sensíveis em imagens escaneadas.

Desafios comuns e soluções

Título 1: Localização de Regiões de texto precisas

Solução: Use a saída da região de texto OCR e o mapa para coordenadas de imagem para mascarar.

2o desafio: falsos positivos e negativos

** Solução:** Faça listas de palavras-chave, valida imagens editadas e execute auditorias.

Título 3: Batch Job Size

** Solução:** Paralelize e automatize o gerenciamento de erros para escala.

Considerações de desempenho

  • O cálculo da região e a escrita da imagem podem ser lentas para grandes partidas — use async se necessário
  • Inscreva-se todas as redações para a revisão da conformidade

Melhores Práticas

  • Mapa da região com precisão com imagens variadas
  • Atualizar regularmente as listas de palavras-chave para novos padrões PII
  • Segure os arquivos originais e editados
  • Validação com verificação manual

Os cenários avançados

Escenário 1: Blur em vez de Blackout

Use filtros de imagem para mover as regiões detectadas para máscara mais sutil.

Escenário 2: Redacção personalizada/Texto de substituição

Coloque a etiqueta personalizada (por exemplo, “REDACTED”) em vez da caixa preta.

Conclusão

Aspose.OCR Image Text Finder para .NET permite que você automatize a redação de PII / palavra-chave em escala – reduzindo o risco legal e garantindo a privacidade em todos os arquivos de imagem.

Para APIs regionais precisos e integração da redação, veja Aspose.OCR para .NET API Referência .

 Português