pii_anonymizer_presidio
SKILL.md
pii_anonymizer_presidio
Microsoft Presidio analiza texto en busca de PII (nombres, DNIs, fechas de nacimiento, IBANs, emails) y los reemplaza por tokens antes de que lleguen a los logs o a cualquier sistema de almacenamiento secundario.
When to use
Usar como middleware de logging y antes de cualquier export de datos a sistemas externos (Loki, Jaeger, Grafana). Aplicar también sobre los campos textuales extraídos por OCR antes de persistirlos en auditoría.
Instructions
- Instalar:
pip install presidio-analyzer presidio-anonymizer - Descargar modelo spaCy:
python -m spacy download es_core_news_lg(español) yen_core_web_lg(inglés). - Inicializar en
backend/core/privacy.py:from presidio_analyzer import AnalyzerEngine from presidio_anonymizer import AnonymizerEngine analyzer = AnalyzerEngine() anonymizer = AnonymizerEngine() - Función de enmascarado:
def anonymize_text(text: str, language: str = "es") -> str: results = analyzer.analyze(text=text, language=language) return anonymizer.anonymize(text=text, analyzer_results=results).text - Añadir processor personalizado en structlog que aplique
anonymize_text()al campomessagede cada log entry. - Configurar entidades a detectar:
PERSON,ID_NUMBER,DATE_TIME,IBAN_CODE,EMAIL_ADDRESS,PHONE_NUMBER. - Para campos de OCR (nombre, DOB, número de documento), aplicar antes de INSERT en PostgreSQL.
Notes
- Presidio opera completamente offline — no envía datos a ningún servicio externo.
- El modelo spaCy es el más preciso para español; para rendimiento en producción usar
es_core_news_sm. - Los campos MRZ y embeddings NO deben llegar nunca a los logs — filtrarlos antes de la capa de anonimización.
Weekly Installs
1
Repository
davidcastagnetoa/skillsFirst Seen
10 days ago
Installed on
mcpjam1
claude-code1
replit1
junie1
windsurf1
zencoder1