[Community Node] PII Redactor — Mask structured personal data before LLM calls


Hi n8n community,

I’m opening a controlled beta for PII Redactor, a community node designed to reduce the exposure of structured personal data in LLM-based workflows.

The intended workflow is:

Webhook
→ PII Redactor: Redact
→ OpenAI / Anthropic / Gemini
→ PII Redactor: Restore
→ Response

Redact replaces supported values with readable placeholders:

synthetic.user@example.com
→ {{EMAIL_1}}

The model receives only the masked text. Restore uses the requestId from Redact to recover the original values when the placeholders remain unchanged.

Supported in the current beta:

  • Email addresses
  • International and local phone numbers
  • Luhn-valid payment cards
  • IPv4 and IPv6 addresses
  • CIDR ranges
  • IBANs
  • Contextual national identifiers for 18 countries

Current implementation:

  • n8n community node with Redact and Restore operations
  • Managed HTTPS API
  • Per-client API keys
  • Temporary Redis mappings
  • Configurable TTL
  • Single-use Restore
  • Atomic idempotency
  • Client isolation
  • Key rotation without downtime
  • Stable error responses

Current validation:

  • Tested with Redis 7.4
  • Redact and Restore tested through HTTPS
  • Packaged node installed in a clean n8n instance
  • No known vulnerabilities in the current audit

Limitations:

  • Best-effort detection, not complete anonymization
  • No names, postal addresses, or organizations yet
  • Local phone detection depends on phoneCountry
  • National identifiers require context
  • Modified placeholders cannot be restored
  • n8n execution history must still be configured securely

I’m looking for 3–5 self-hosted n8n users for a 1–2 week beta using synthetic or controlled data.

I’m particularly interested in feedback about:

  • Node installation
  • Credential setup
  • Preserving requestId around AI nodes
  • Multi-item workflows
  • Placeholder preservation across different LLMs
  • False positives and false negatives

Project page:

2 Me gusta