Favicon of Presidio

Presidio

A self-hosted Python framework that detects and anonymizes sensitive data in text, images and structured records. Open source under the MIT license.

Screenshot of Presidio website

Presidio is a self-hosted Python framework for developers and organizations that need to detect and remove personally identifiable information (PII) from text, images and structured data. It can identify names, credit card numbers, social security numbers and other sensitive details, then redact, mask or anonymize them. It's open source under the MIT license.

Detection combines language models that recognize names and other entities with pattern matching, rules and checksum checks. Recognizers use surrounding context and support multiple languages. Teams can add their own recognizers or connect external PII detection models when the built-in detection doesn't cover their data.

Its separate detection and anonymization modules let teams customize what counts as sensitive and how each detected item is handled. Presidio supports both automated processing and workflows with human review, which matters when different records need different treatment.

Image redaction uses OCR to find text before identifying and obscuring sensitive information. It covers standard image types and DICOM medical images. A separate module handles structured and semi-structured records.

Presidio can run in your own Python or PySpark workloads, as an HTTP service, or in Docker and Kubernetes deployments. This makes it suitable for adding de-identification to existing data processing systems. Automated detection can miss sensitive information, so Presidio doesn't guarantee that every private detail will be found.

Similar to Presidio