Volver a actualizaciones
Nuevo releaseSep 10, 2026

pii-shield v2.2.3

Sidecar de K8s sin código para sanitización de logs. Detecta secretos mediante Análisis de Entropía, preserva la integridad JSON y redacta PII de forma determinista. 🛡️

Compartir

PII-Shield 🛡️

Sidecar de saneamiento de logs sin código para Kubernetes. Previene fugas de datos (GDPR/SOC2) redactando PII de los logs antes de que salgan del pod.

PII-Shield se ejecuta en proceso — CLI, sidecar o WASM. No hay API alojada ni servidor al que se envíen tus datos.

Release License Docker Pulls Artifact Hub
OpenSSF Best Practices Go Report Card Test Coverage Sponsor

"No dejes que la PII envenene tus modelos de IA." PII-Shield garantiza que los datos sensibles nunca lleguen a tu conjunto de entrenamiento, ahorrándote el reentrenamiento de modelos forzado por GDPR.

[!WARNING] ¿Actualizando a v2.0.0? Hemos trasladado la distribución para usuarios finales a instalaciones basadas en Helm y Sidecars Nativos Distroless. Kustomize ya no es una ruta de instalación soportada para usuarios de producción, aunque el repositorio del operador mantiene el andamiaje de Kustomize para desarrollo local y generación de manifiestos. El acceso a /bin/sh dentro del sidecar de PII-Shield ya no está soportado. Lee la Guía de Migración.

Dos Modelos de Despliegue

PII-Shield ofrece dos formas distintas de integrarse en tu stack:

  1. Operador de Kubernetes (Sin código): Nuestro modelo de despliegue insignia. Un Operador de K8s totalmente automatizado que inyecta un Sidecar Distroless altamente seguro en tus pods para interceptar y sanear los logs sobre la marcha.
  2. WASM en Proceso (Para integraciones principales): Para rendimiento extremo, el motor principal puede integrarse directamente vía WASM, proporcionando latencia <1ms sin saltos de red.

Estado del Proyecto y Hoja de Ruta

PII-Shield es una herramienta de seguridad de código abierto en desarrollo activo, en fase de endurecimiento para producción. La línea de versiones v2.x publica artefactos utilizables de CLI, contenedor, Helm/operador y SDK WASM. Las rutas principales de redacción están listas para despliegues controlados, mientras que algunos modos de despliegue de Kubernetes y garantías de cadena de suministro aún se están estabilizando.

ComponenteEstado
Escáner principalPublicado / despliegues controlados
Sidecar CLIPublicado / despliegues controlados
Operador de KubernetesFase de estabilización
SDKs WASMBeta publicado
Integración de gateway Proxy-WasmI+D planificado
UI del Plano de ControlI+D planificado
Intercepción eBPFI+D experimental

Consulta KNOWN_LIMITATIONS.md para conocer los límites actuales del endurecimiento para producción.

¿Por qué PII-Shield?

Los desarrolladores a menudo olvidan enmascarar datos sensibles. Los filtros regex tradicionales en Fluentd/Logstash son lentos, difíciles de mantener y consumen CPU costosa en los agregadores de logs.

PII-Shield se sitúa justo al lado de tu contenedor de aplicación:

  • Motor Principal Endurecido para Producción: Optimizado para sidecars de Kubernetes con bajas asignaciones de memoria en rutas críticas y coincidencia regex determinista.
  • Análisis de Entropía Sensible al Contexto: Detecta secretos de alta entropía incluso sin claves (p. ej. Error: ... 44saCk9...) analizando palabras clave de contexto.
  • Reglas Regex Personalizadas: Redacción determinista para datos estructurados (UUIDs, IDs) que anula las comprobaciones de entropía para patrones conocidos.
  • Cobertura de Regresión y Fuzzing: Probado contra casos de estrés que incluyen basura binaria, anidamiento JSON y logs multilingües.
  • Hash Determinista: Reemplaza secretos con hashes únicos (p. ej., [HIDDEN:a1b2c]), permitiendo a QA correlacionar errores sin ver los datos brutos.
  • Plug-and-Play: No requiere cambios de código. Funciona con cualquier lenguaje (Node, Python, Java, Go).
  • Soporte de Lista Blanca: Permite explícitamente patrones seguros (p. ej., hashes git, IDs de sistema) usando PII_SAFE_REGEX_LIST para prevenir falsos positivos.

¿Gestionando PII-Shield en docenas de clústeres?

Estamos construyendo un Plano de Control alojado con gestión centralizada de reglas, alertas de Slack y analíticas de redacción. Join the Waitlist

Integraciones

La compilación WASM en proceso de PII-Shield se distribuye dentro de GuardSpine Code, una GitHub Action de gobernanza de código IA de código abierto, que incluye el binario y lo acredita en su NOTICE.

Consideraciones de Rendimiento

Aunque PII-Shield está altamente optimizado, la inspección profunda de logs complejos requiere atención cuidadosa a la configuración.

  • Logs de Texto: Extremadamente rápidos (>100k líneas/s).
  • Logs JSON: Análisis de cero asignaciones (sin sobrecarga de encoding/json). El escáner analiza manualmente las estructuras JSON para garantizar alto rendimiento (~7MB/s) sin picos de memoria.
  • Recomendación: El uso es seguro para alto rendimiento. Usamos salvaguardas de recursión para prevenir desbordamientos de pila en JSON profundamente anidado.

Instalación

Chart Helm (Operador de Kubernetes)

La forma oficial y recomendada de desplegar PII-Shield en Kubernetes es mediante nuestro Operador totalmente automatizado:

helm repo add pii-shield https://pii-shield.github.io/pii-shield/
helm repo update
helm install pii-shield-operator pii-shield/pii-shield-operator -n operator-system --create-namespace

Esto despliega el Operador PII-Shield que inyecta automáticamente sidecars distroless altamente seguros en tus Pods sin requerir cambios de código ni de Dockerfile.

Docker

Obtén la última imagen ligera desde Docker Hub o GHCR:

docker pull thelisdeep/pii-shield:2.2.3
# O desde GitHub Container Registry (Enterprise):
docker pull ghcr.io/pii-shield/pii-shield:2.2.3

Compilar desde el Código Fuente

Puedes compilar el binario directamente desde el código fuente:

go build -o pii-shield ./cmd/cleaner/main.go

Configuración

Consulta CONFIGURATION.md para una lista completa de variables de entorno, incluyendo:

  • PII_SALT: Salt HMAC personalizado (Requerido para producción).
  • PII_ADAPTIVE_THRESHOLD: Habilita líneas base de entropía dinámicas.
  • PII_DISABLE_BIGRAM_CHECK: Optimiza para logs no ingleses.
  • PII_CUSTOM_REGEX_LIST: Reglas regex personalizadas para redacción determinista.
  • PII_SAFE_REGEX_LIST: Reglas regex de lista blanca a ignorar (las coincidencias se devuelven tal cual).

Tabla de Sensibilidad de Entropía (Umbral Predeterminado: 3.6)

EntropíaTipo de DatoEjemplo
0.0 - 3.0Palabras comunes, repeticionespassword, admin, 111111
3.0 - 3.6CamelCase, hashes parcialesProgramCampaignInstanceJob, 8f3a11b2c
3.6 - 4.5Rutas, UUIDs, Contraseñas Débiles/opt/application/runtime, P@ssw0rd2026!
4.5 - 5.0Tokens MedianosE8s9d_2kL1
5.0+Claves de Alta Entropía(SHA-256, API Keys)

Inicio Rápido

  1. Probar Localmente (CLI) Puedes canalizar cualquier salida de log a través de PII-Shield para verlo en acción inmediatamente:
# Emula un log con una contraseña sensible
echo "Error: User password=MySecretPass123! failed login" | docker run -i --rm ghcr.io/pii-shield/pii-shield:2.2.3

# Salida: Error: User password=[HIDDEN:8f3a11] failed login
  1. Kubernetes (Inyección Automatizada de Sidecar) Con el Operador PII-Shield instalado, proteger una aplicación es tan simple como crear una PiiPolicy y etiquetar tus Pods.

Crear una Política:

apiVersion: core.pii-shield.io/v1alpha1
kind: PiiPolicy
metadata:
  name: strict-policy
  namespace: default
spec:
  injectionMode: "file"

Etiquetar tu Deployment:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: secure-app
spec:
  template:
    metadata:
      labels:
        pii-shield.io/inject: "true"
      annotations:
        pii-shield.io/policy: "strict-policy"
# ...

El Operador inyectará automáticamente el pii-shield-agent usando el patrón de Sidecar Nativo (K8s 1.28+) y enmascarará de forma segura todos los logs.


📋 Gratis: Lista de Verificación de Auditoría de PII en Logs de Kubernetes de 25 Puntos — dónde se filtran los PII desde los pods, qué rutas de log evaden tus filtros y cómo verificar que la redacción realmente funciona. Obtén la lista de verificación →

📦 Paquete de Cumplimiento GDPR — disponible ahora (acceso anticipado): Más de 40 reglas de redacción probadas, documentación lista para DPO, plantillas de pistas de auditoría. $149 → · HIPAA/PCI en la lista de espera →

💬 ¿Usas PII-Shield? Cuéntanos sobre tu despliegue → — 2 minutos, y ayuda a definir qué se construye a continuación.

Verificación

Este proyecto está verificado con una suite de pruebas en crecimiento destinada a aumentar la confianza antes del endurecimiento para producción:

  1. Pruebas Unitarias: Cubren casos límite, soporte multilingüe e integridad JSON con >85% de cobertura.
  2. Fuzzing: El fuzzing nativo de Go garantiza seguridad contra fallos ante entradas binarias inválidas y aleatorias.
  3. Pruebas de Humo: ./scripts/test-smoke.sh ejercita cargas de trabajo mixtas e informa la precisión de detección.
  4. Pruebas de Extremo a Extremo (E2E): La suite operator/tests/run_e2e.sh realiza validación de pila completa usando Minikube y Helm. Compila imágenes locales, aprovisiona el Operador sin cert-manager, despliega Jobs objetivo y verifica la redacción real de logs interceptando las salidas del sidecar.

Benchmarks de Rendimiento

Para comparar el rendimiento de CLI de extremo a extremo entre la rama actual y una ref base:

./benchmark/run_benchmarks.sh

Por defecto, el benchmark compara HEAD contra origin/main, actualiza origin/main, genera un corpus de logs mixto, alterna el orden de ejecución antiguo/nuevo e informa mediana, p95, min/max y MiB/s:

BASE_REF=origin/main RUNS=9 LINES=500000 ./benchmark/run_benchmarks.sh

Esto mide la ruta CLI completa de stdin a stdout. Para microbenchmarks solo del escáner, ejecuta:

go test -bench=. -benchmem ./pkg/scanner

Pruebas de Integración del Operador

El operador mantiene pruebas unitarias rápidas separadas de las pruebas de integración de la API de Kubernetes. Las pruebas regulares del operador no inician un servidor API local:

cd operator
go test ./...

Para ejecutar la suite de integración del controlador basada en envtest:

./scripts/test-operator-integration.sh

Estas pruebas inician un servidor API de Kubernetes local y etcd a través de envtest, por lo que requieren permiso para vincularse a 127.0.0.1. En sandboxes restringidos, ejecútalas en un shell local, entorno Docker o runner de CI que permita el enlace a localhost.

Soporte

PII-Shield es infraestructura de código abierto para logs que preservan la privacidad. Si este proyecto es útil para ti o tu organización, puedes apoyar su desarrollo a través de GitHub Sponsors.

Verificación de Versiones

La guía de verificación de checksums de versiones y digests de imágenes está documentada en docs/release-verification.md. Las versiones con firma y respaldo de procedencia se rastrean como parte de la hoja de ruta de endurecimiento de la cadena de suministro.

Licencia

Distribuido bajo la Licencia Apache 2.0. Consulta LICENSE para más información.

Categorías