Saltar al contenido

RGPD para equipos técnicos: lo que de verdad cambia en tu código y tu infraestructura

    RGPD para equipos técnicos:

    lo que de verdad cambia en tu código y tu infraestructura

    Gobernanza y normativa  |  unfantasmaenelsistema.com

    El Reglamento General de Protección de Datos se ha explicado mil veces para juristas y para responsables de negocio, y casi nunca para quien diseña el esquema de la base de datos, escribe el endpoint que exporta un perfil o decide cuánto tiempo se guardan los logs de acceso. El resultado es un patrón conocido: la organización tiene un registro de actividades impecable en un PDF, y al mismo tiempo un microservicio que escribe el DNI del cliente en texto claro en un fichero de log que se retiene tres años «por si acaso».

    Este artículo traduce el RGPD al lenguaje de quien mantiene los sistemas: qué obligaciones se convierten en decisiones de arquitectura, de modelo de datos y de operación, y cómo implementarlas sin romper la integridad referencial ni las copias de seguridad. No es asesoramiento jurídico: la calificación de un tratamiento, la base de licitud aplicable o la obligación de designar un delegado de protección de datos se deciden con el DPO y con soporte legal, no en una revisión de código.

    Qué aprenderás en este artículo

    Cómo la base de licitud y la minimización condicionan el esquema de datos · Seudonimización y cifrado como medidas concretas del artículo 32 · Qué es el registro de actividades del tratamiento y por qué te afecta · Cómo tratar los logs que contienen datos personales y cuánto retenerlos · Implementar los derechos ARSOPL sin romper backups ni claves foráneas · El reloj de 72 horas ante una brecha, las transferencias internacionales y cuándo toca una EIPD

    1. El RGPD es también un problema de ingeniería

    El reglamento no impone tecnologías concretas, pero sí resultados que solo se consiguen con decisiones técnicas. Dos principios del artículo 5 marcan el diseño desde el primer día. La minimización obliga a tratar solo los datos adecuados, pertinentes y limitados a lo necesario: cada columna de una tabla debería poder justificarse contra una finalidad. La limitación del plazo de conservación obliga a borrar o anonimizar cuando esa finalidad se cumple: un dato sin fecha de caducidad definida es un incumplimiento en potencia.

    El artículo 25, protección de datos desde el diseño y por defecto, lo hace explícito: las medidas se integran en el desarrollo, y la configuración por defecto es siempre la más protectora. Si al dar de alta a un usuario todas las casillas de compartición vienen marcadas, el producto nace incumpliendo.

    2. Base de licitud y minimización en el modelo de datos

    Todo tratamiento necesita una de las seis bases del artículo 6, y esa base condiciona lo que el sistema puede y no puede hacer con el dato.

    Base de licitud (art. 6)Uso típicoImplicación técnica
    ConsentimientoMarketing, cookies no esenciales, perfiladoHay que registrar cuándo y cómo se dio, y permitir retirarlo tan fácil como darlo; sin consentimiento vigente, el dato no se trata
    Ejecución de un contratoDatos de cuenta, envío de un pedidoSolo lo imprescindible para prestar el servicio; al terminar la relación, pasa a conservación limitada
    Obligación legalFacturación, prevención de blanqueo, laboralFija plazos de retención mínimos que priman sobre una solicitud de supresión
    Interés legítimoSeguridad de la red, prevención de fraude, logsExige una ponderación documentada y da al interesado derecho de oposición
    Interés vital / misión de interés públicoEmergencias, sector públicoCasos acotados; normalmente no aplican a un SaaS comercial

    En la práctica: antes de añadir un campo, identifica su finalidad y su base. Las categorías especiales del artículo 9 (salud, biometría, ideología, orientación sexual, afiliación sindical) requieren una condición adicional del artículo 9.2 y casi siempre cifrado reforzado y control de acceso estricto. Evita recogerlos si no es imprescindible.

    3. Seudonimización y cifrado: el artículo 32

    El artículo 32 pide medidas técnicas y organizativas apropiadas al riesgo, y menciona expresamente cuatro: seudonimización, cifrado, garantía continuada de confidencialidad-integridad-disponibilidad-resiliencia, y un proceso de verificación y evaluación regular de su eficacia.

    MedidaQué significa a nivel técnicoNota importante
    SeudonimizaciónSeparar los identificadores directos de los datos de actividad, sustituyéndolos por un token; la reidentificación exige una tabla de correspondencia guardada aparteEl dato seudonimizado SIGUE siendo dato personal y bajo el RGPD
    AnonimizaciónTransformación irreversible: agregación, generalización, k-anonimato, ruido diferencialSi de verdad es irreversible, queda FUERA del RGPD; el listón técnico es alto
    Cifrado en reposoDisco/volumen (LUKS, BitLocker) y, para lo sensible, cifrado a nivel de campo o de aplicación con gestión de claves separadaEl cifrado de disco no protege frente a una consulta SQL con credenciales válidas
    Cifrado en tránsitoTLS moderno en todo, incluido el tráfico entre servicios internos y hacia la base de datos«Red interna de confianza» ya no es una excusa aceptable

    Un patrón habitual y efectivo es separar en dos tablas los datos identificativos (nombre, correo, documento) de los datos de comportamiento, unidas solo por un identificador interno sin significado. El grueso de las consultas analíticas trabaja contra la tabla seudonimizada, y el acceso a la tabla de identidades queda auditado y restringido.

    -- Datos de identidad: acceso restringido, cifrado a nivel de campo, auditado
    CREATE TABLE persona_identidad (
        persona_id     BIGINT PRIMARY KEY,
        nombre_cifrado  BYTEA NOT NULL,
        email_cifrado   BYTEA NOT NULL,
        creado_en       TIMESTAMPTZ NOT NULL DEFAULT now()
    );
     
    -- Datos de actividad: solo el token interno, sin PII directa
    CREATE TABLE evento_uso (
        evento_id    BIGINT PRIMARY KEY,
        persona_id   BIGINT NOT NULL REFERENCES persona_identidad,
        accion       TEXT NOT NULL,
        ocurrido_en  TIMESTAMPTZ NOT NULL,
        borrar_tras  DATE NOT NULL   -- fecha de caducidad explicita por fila
    );

    4. Registro de actividades del tratamiento (artículo 30)

    El artículo 30 obliga a mantener un inventario de los tratamientos: finalidad, categorías de interesados y de datos, destinatarios, transferencias internacionales, plazos de supresión previstos y descripción general de las medidas de seguridad. Es un documento de la organización, pero se nutre de información que solo el equipo técnico conoce con precisión.

    • Qué sistemas y bases de datos participan en cada tratamiento y qué campos personales contienen
    • A qué encargados se envían datos: proveedores de correo, analítica, alojamiento, pasarela de pago, soporte — cada uno necesita un contrato de encargo del artículo 28
    • Dónde se alojan físicamente los datos y sus copias (país y proveedor)
    • Qué plazo de conservación aplica cada tabla y cómo se ejecuta el borrado

    Mantener este mapa actualizado es más fácil si vive cerca del código: un fichero versionado que describe cada tabla con datos personales, su finalidad, su base y su retención, revisado en cada cambio de esquema, evita que el registro formal quede obsoleto al mes siguiente.

    5. Logs con datos personales

    Los registros de acceso, las trazas de aplicación y la telemetría contienen casi siempre datos personales: direcciones IP, identificadores de usuario, correos en mensajes de error, a veces el cuerpo entero de una petición. Son un tratamiento más y necesitan su base de licitud —normalmente interés legítimo en la seguridad— y su plazo de conservación.

    Higiene de logs

    No registres cuerpos de petición ni de respuesta completos en sistemas con datos personales; si hace falta para depurar, enmascara los campos sensibles antes de escribir · Nunca metas contraseñas, tokens, números de tarjeta ni categorías especiales del artículo 9 en un log · Define retención por tipo: trazas de depuración días o semanas, registros de seguridad para investigación de incidentes meses, y bórralos de verdad — también en el sistema de agregación · El acceso a la plataforma de logs es acceso a datos personales: restríngelo y audítalo igual que la base de datos

    6. Derechos ARSOPL sin romper el sistema

    El capítulo III da al interesado derecho de Acceso, Rectificación, Supresión, Oposición, Portabilidad y Limitación del tratamiento, más el derecho a no ser objeto de decisiones únicamente automatizadas. La organización tiene un mes para responder. Cada derecho es una funcionalidad, no un proceso manual sostenible a escala.

    DerechoQué implica en el sistemaTrampa técnica frecuente
    Acceso / PortabilidadExportar todos los datos de una persona, los de portabilidad en formato estructurado (JSON, CSV)Datos dispersos en varios servicios y en copias desnormalizadas que nadie recuerda
    RectificaciónCorregir y propagar el cambio a réplicas, caches, índices de búsqueda y encargadosEl dato corregido en la base primaria sigue viejo en el data warehouse
    SupresiónBorrar o anonimizar respetando obligaciones legales de conservaciónClaves foráneas: borrar una fila rompe integridad referencial; suele ser mejor anonimizar en sitio
    Oposición / LimitaciónMarcar un registro para excluirlo de ciertos tratamientos sin borrarloNo existe un flag de estado y hay que inventarlo bajo presión de plazo

    6.1 Supresión y backups

    No se puede reescribir una copia de seguridad para eliminar a una persona, y el RGPD no lo exige. El enfoque aceptado: documenta que las copias son inmutables y tienen una rotación definida (por ejemplo 35 días); ejecuta la supresión en los sistemas vivos de inmediato; y mantén una lista de supresiones pendientes que se vuelva a aplicar si alguna vez hay que restaurar un backup. Así el dato borrado no reaparece por la puerta de atrás de una restauración.

    6.2 Borrado como proceso, no como evento

    La forma sostenible de cumplir la limitación de plazo es un proceso periódico que recorre las tablas con datos personales y actúa sobre las filas caducadas —anonimizando cuando hay claves foráneas o una obligación de conservar el registro contable, borrando cuando se puede—. La columna borrar_tras del ejemplo anterior convierte ese barrido en una consulta trivial.

    7. Brechas de seguridad: el reloj de 72 horas

    Ante una violación de seguridad que afecte a datos personales, el artículo 33 obliga a notificar a la autoridad de control —en España, la AEPD— sin dilación indebida y, cuando sea factible, en un plazo máximo de 72 horas desde que se tiene constancia, salvo que sea improbable que suponga un riesgo para los derechos de las personas. Si el riesgo es alto, el artículo 34 obliga además a comunicarlo a los propios afectados.

    ElementoA la AEPD (art. 33)A los afectados (art. 34)
    CuándoEn 72 h desde el conocimiento; si se retrasa, hay que justificar por quéSin dilación indebida cuando el riesgo para sus derechos es alto
    Qué se cuentaNaturaleza de la brecha, categorías y número aproximado de afectados y de registros, consecuencias probables, medidas adoptadasLenguaje claro: qué ha pasado, qué datos, qué riesgos y qué puede hacer la persona
    Se puede evitarNo, si hay riesgo; sí cabe notificación por fases si no se tiene todoSí, si los datos estaban cifrados de forma robusta o el riesgo alto se ha mitigado después

    Para el equipo técnico esto significa tener antes del incidente: un procedimiento de respuesta con roles claros, capacidad de determinar rápido qué datos y cuántos registros se han visto afectados (aquí ayudan los logs bien hechos), y un registro interno de todas las brechas —también las que no se notifican— que el artículo 33.5 exige conservar.

    8. Transferencias internacionales y EIPD

    Sacar datos personales fuera del Espacio Económico Europeo —o usar un proveedor que lo haga— exige una garantía del capítulo V: una decisión de adecuación de la Comisión Europea para ese país, o cláusulas contractuales tipo acompañadas de un análisis de impacto de la transferencia que valore la legislación del país de destino, o normas corporativas vinculantes. En términos prácticos, revisa dónde alojan los datos tu proveedor cloud, tu herramienta de analítica, tu CRM y tu servicio de correo, y qué región tienes configurada.

    La evaluación de impacto relativa a la protección de datos (EIPD, o DPIA) es obligatoria cuando un tratamiento pueda entrañar un alto riesgo: tratamiento a gran escala de categorías especiales, observación sistemática de zonas de acceso público, elaboración de perfiles con efectos significativos, uso de tecnologías novedosas. La AEPD publica una lista de tipos de tratamiento que la requieren. Conviene hacerla en fase de diseño, porque su resultado puede cambiar la arquitectura.

    Esto no sustituye al criterio del DPO ni al asesoramiento legal

    La base de licitud aplicable, la obligación de designar delegado de protección de datos, la necesidad de una EIPD concreta o la validez de una transferencia se deciden con soporte jurídico · El papel del equipo técnico es hacer que la decisión, una vez tomada, sea implementable y verificable en el sistema — y avisar cuando el diseño actual la hace imposible

    9. Privacidad desde el diseño: ejemplos concretos

    • Formularios: cada campo tiene una finalidad; los opcionales se marcan como tales y no se almacenan si van vacíos
    • Valores por defecto: visibilidad de perfil en «privado», compartición de datos con terceros desactivada, retención en el mínimo razonable
    • Analítica: truncar la IP, desactivar identificadores persistentes salvo consentimiento, preferir métricas agregadas
    • Entornos de preproducción: nunca con la base de datos de producción; usar datos sintéticos o un volcado anonimizado
    • Exportaciones y informes: seudonimizados por defecto; la reidentificación es una acción separada y auditada
    • Terceros: cada integración nueva pasa por revisión de qué datos recibe, con qué base y bajo qué contrato de encargo

    Conclusión

    El RGPD deja de parecer un texto ajeno cuando se traduce a las decisiones que el equipo técnico ya toma cada semana: qué columnas añadir, dónde poner el límite de retención, cómo separar identidad y actividad, qué escribe cada log y durante cuánto tiempo, y cómo se ejecuta un borrado sin romper nada. Casi todo se reduce a minimizar lo que se guarda, ponerle fecha de caducidad y saber en todo momento dónde está.

    Hacerlo desde el diseño cuesta poco; añadirlo después, cuando el esquema ya está lleno de datos sin finalidad clara y los logs llevan años acumulando DNIs, cuesta mucho y casi siempre coincide con el peor momento posible: el de responder a una brecha o a una inspección.

    Referencias

    Reglamento (UE) 2016/679 (RGPD) — texto consolidado en EUR-Lex · Ley Orgánica 3/2018 (LOPDGDD) — desarrollo en España · Agencia Española de Protección de Datos — guías para desarrolladores, listas de EIPD y de cláusulas (aepd.es) · EDPB — directrices sobre seudonimización, protección desde el diseño y notificación de brechas · Nuestros artículos sobre LUKS, gestión de secretos y el Esquema Nacional de Seguridad

    unfantasmaenelsistema.com | Seguridad, sistemas y todo lo que no debería funcionar (pero funciona)

    Etiquetas:
    Resumen de privacidad

    Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.