By · Last updated 2026-05-29

Tornar al BlogTècnic

Pipeline GDPR: Anonimitzar el PIE abans d'emmagatzemar-lo

Les etiquetes de columnes de dbt no son compliment GDPR. Les dades de clients en brut arriben al vostre magatzem Snowflake sense emmascarar abans que s'apliquin les polítiques basades en etiquetes.

May 29, 20268 min llegit
data pipelinedbtSnowflakedata warehouseELT anonymizationGDPR engineering

Pipeline segur per al GDPR: Anonimitzar el PIE abans d'emmagatzemar-lo

Actualitzat per al 2026

Heu etiquetat les vostres columnes PIE a dbt. Heu configurat l'emmascarament dinamic a Snowflake. Us sentiu conformes amb el GDPR.

El vostre contingut d'origen encara arriba al magatzem sense emmascarar. L'emmascarament s'executa en el moment de la consulta. El contingut sense emmascarar es troba al vostre esquema en brut. Qualsevol persona amb acces a l'esquema en brut pot llegir-lo. Els vostres models dbt s'han executat abans que existissin les polítiques d'emmascarament. Les taules ingerides antigues mai no s'han emmascarar.

La diferencia entre "tenim polítiques d'emmascarament" i "el nostre pipeline es segur" es on es produeixen les infraccions del GDPR.

Consulteu la nostra visio general de compliment per saber com anonym.legal dona suport al GDPR.

Com els pipelines ELT exposen el PIE

El patro Extract-Load-Transform (ELT) es ara la norma. Carrega les dades d'origen al magatzem primer. Les transformacions venen despres. Els passos son els seguents:

  1. Extraccio: Els sistemes d'origen exporten tots els camps. Salesforce CRM, Stripe payments, Intercom support - tot surt.
  2. Carrega: Les dades d'origen arriben a l'esquema d'ingesta del magatzem. Snowflake, BigQuery, Redshift funcionen tots de la mateixa manera. S'inclouen tots els camps PIE.
  3. Transformacio: Els models dbt netegen i combinen les dades per a l'analítica.

La capa d'ingesta conte informacio personal completa. Noms, adreces de correu electronic, numeros de telefon, detalls de pagament, text de tickets de suport. En molts equips, els enginyers i analistes tenen acces a l'esquema en brut. Poden consultar aquestes taules en qualsevol moment.

L'emmascarament basat en etiquetes a Snowflake ajuda en el moment de la consulta. Pero nomes per als models posteriors configurats correctament. No emmascara les taules ingerides antigues. No bloqueja les consultes directes d'esquema. Cada model i tauler de control ha d'estar etiquetat. Aquesta carrega creix a mesura que l'esquema creix.

Anonimitzar abans de carregar

L'anonimitzacio del PIE a nivell de pipeline elimina el risc de la capa en brut. Feu-ho abans que el contingut arribi al magatzem.

Enfocament ETL (anonimitzacio previa a la carrega):

  1. Extreure dels sistemes d'origen
  2. Passar per un pas d'anonimitzacio
  3. Carregar la sortida neta al magatzem

El magatzem mai no rep PIE sense emmascarar. L'esquema d'ingesta nomes conte contingut net. Els models posteriors, els taulers de control i les consultes directes treballen tots amb sortida neta.

Teniu dues vies principals.

Opcio 1 - Integracio API:

Per a sistemes amb webhooks o exportacions en streaming, enruteu les entrades a traves de l'API d'anonym.legal primer. Els tickets que surten d'Intercom passen per l'API abans del magatzem. Les exportacions de Stripe fan el mateix.

POST /api/anonymize
{
  "text": "El client Joan Garcia (joan@exemple.com) ha informat...",
  "entities": ["PERSON", "EMAIL_ADDRESS", "PHONE_NUMBER"],
  "method": "replace"
}

Opcio 2 - Preprocessament per lots:

Per a exportacions de fitxers CSV/JSON diaries o setmanals, executeu els fitxers a traves del processament per lots abans de carregar-los.

Estructura del DAG d'Airflow:

extract_task >> anonymize_batch_task >> load_to_warehouse_task

La tasca d'anonimitzacio carrega els fitxers i obte les versions netes. La tasca de carrega gestiona la resta.

Consulteu la nostra pagina de practiques de seguretat per obtenir detalls sobre subprocessadors i flux de dades.

Que fan i no fan les etiquetes de columnes de dbt

dbt us permet etiquetar les columnes PIE:

models:
  - name: stg_customers
    columns:
      - name: email
        tags: ['pii', 'email']
      - name: full_name
        tags: ['pii', 'personal_data']

Les etiquetes us permeten:

  • Documentar on es troba el PIE
  • Activar polítiques d'emmascarament posteriors (requereix configuracio a nivell de magatzem)
  • Fer seguiment del llinatge amb eines com Secoda

Les etiquetes no fan:

  • Emmascarar les taules ingerides a l'esquema en brut
  • Bloquejar les consultes directes de taules
  • Anonimitzar les dades en el moment de la carrega
  • Emmascarar retroactivament les dades antigues

Les etiquetes de columnes de dbt son una eina de governanca. Us mostren on es troba el PIE. No apliquen les "mesures tecniques adequades" que requereix l'article 32 del GDPR.

La llacuna de l'emmascarament de Snowflake

L'emmascarament dinamic de Snowflake amaga el contingut de les columnes als usuaris en el moment de la consulta. Es un control fort per a l'us en produccio. Pero te limitacions clares.

Limitacions principals:

  • Cada nova columna necessita una política explícita
  • Els canvis d'esquema poden deixar noves columnes sense emmascarar fins que s'actualitzen les polítiques
  • Els rols SYSADMIN i ACCOUNTADMIN poden eludir l'emmascarament
  • Els treballs d'importacio sovint s'executen amb privilegis alts que ometen l'emmascarament
  • Les dades antigues carregades abans de configurar les polítiques s'emmagatzemen en forma clara - les polítiques s'executen en el moment de la lectura, no de l'escriptura

L'emmascarament en el moment de la consulta no es suficient. Les dades han d'estar netes abans d'emmagatzemar-les.

Documentacio de compliment

La norma de responsabilitat del GDPR requereix proves. Les paraules no son suficients. Per als equips d'enginyeria, aixo significa registres escrits.

Registres d'Activitats de Processament (ROPA): Documenteu que la informacio dels clients s'anonimitza abans de carregar-la al magatzem analític. El pas d'anonimitzacio es una activitat de processament sota el GDPR.

Notes sobre mesures tecniques: Anoteu quins tipus d'entitat adreceu al vostre pipeline. Anoteu el metode d'anonimitzacio utilitzat. Els registres d'execucio per lots us donen aixo de forma gratuita.

Llinatge de dades: Secoda o el llinatge integrat de dbt pot mostrar que les taules d'origen flueixen a traves d'un pas d'anonimitzacio abans d'arribar als models analítics. Aquest es el vostre rastre d'auditoria.

Registre de proveïdors: El servei d'anonimitzacio es un subprocessador. El seu DPA i política de privacitat han d'estar al vostre registre de proveïdors.

Passos d'implementacio

Per a un pipeline de dbt i Snowflake:

Pas 1: Auditeu la vostra capa en brut

Trobeu quines taules contenen informacio personal. Consulteu les vostres etiquetes de columna de dbt o el vostre cataleg per a taules etiquetades com a PIE.

Pas 2: Establiu l'abast de l'anonimitzacio

Per a cada taula d'origen, decidiu quines columnes contenen PIE. Despres decidiu quines necessiten anonimitzacio i quines pseudonimitzacio. Text del cos del ticket de suport: anonimitzar. ID de comanda: pseudonimitzar per mantenir les claus d'unio intactes. Marca de temps: mantenir tal qual per a l'analisi de series temporals.

Pas 3: Trieu una via d'implementacio

Equip petit amb exportacions per lots: useu el processament de fitxers per lots abans de la carrega. Equip d'enginyeria disponible: construiu la integracio API a Airflow o Prefect.

Pas 4: Proveu i valideu

Executeu l'anonimitzacio en una mostra abans de posar-ho en produccio. Comproveu que els models de dbt segueixen funcionant. Alguns models s'uneixen per correu electronic. Aquells necessiten valors de substitucio consistents. La pseudonimitzacio manté les claus d'unio. La redaccio les trenca.

Pas 5: Gestioneu les taules en brut antigues

El contingut carregat abans que l'anonimitzacio estigues en vigor necessita processament retroactiu. Exporteu, anonimitzeu, torneu a carregar. Aquesta es una tasca unica per taula.

Conclusio

L'emmascarament basat en etiquetes us mostra on es troba el PIE. No impedeix que els usuaris amb acces a l'esquema el llegeixin. Per al compliment real del GDPR, el PIE ha d'estar net abans d'arribar al magatzem. Aixo fa que la capa d'ingesta sigui tan segura com la capa de produccio.

Aixo es mes difícil que l'etiquetatge de columnes. Pero aixo es el que "mesures tecniques adequades" significa en realitat.

Fonts

Preparat per protegir les vostres dades?

Comenceu a anonimitzar PII amb més de 285 tipus d'entitats en 48 idiomes.

About this page

We update this page when our platform or the law changes.

Read our founder note for how we work.

Each change shows up in the timestamp at the top.

Related reading

We follow these rules

  • GDPR (EU 2016/679).
  • ISO/IEC 27001:2022.
  • NIS2 (EU 2022/2555).
  • HIPAA safe harbor under 45 CFR § 164.514(b)(2).

Our promise

We do not sell your data.

We do not train models on your text.

We store your files in Germany.

You can delete your account at any time.

You own your work.

Where we run

Our servers live in Falkenstein, Germany.

We use Hetzner. They hold ISO 27001 certification.

All data stays in the EU.

Backups run every day.

Need help?

Email support@anonym.legal.

We reply within one business day.

How we test

We run a full check suite on every release.

Each surface gets its own sweep script and report.

Human reviewers spot-check the output each week.

We track recall and precision on a labelled set.

Bad runs block the deploy.

What we never do

  • We never sell your information to third parties.
  • We never train models on what you upload.
  • We never keep your work after you delete it.
  • We never share keys with any outside firm.
  • We never run ads inside the product.

Plans in plain words

We sell credits, not seats.

One credit covers one short job.

Long jobs use a few credits each.

You can top up at any time.

Unused credits roll over each month.

Read the plans page for current rates.

Who built this

A small team of engineers and lawyers built this.

We ship from Europe and work in the open.

Our founder note spells out why we started.

Where to start

How the parts fit

A browser add-on cleans text inside Chrome.

A Word plug-in handles drafts in Office.

A small desktop tool works on whole folders.

An agent protocol link feeds large models safely.

All four share one core engine and one rule set.

Words from our team

We started this work after a lunch about cookies.

One friend kept getting odd ads on her phone.

We asked why a court file leaked through a draft.

We sketched the first build on a napkin that week.

By month three we had a tiny demo for a friend.

She used it on her first case the next day.

Common questions we hear

Can the tool read scanned PDFs? Yes, with OCR.

Does it work on long files? Yes, in small chunks.

Can I roll my own rule set? Yes, save it as a preset.

Does it run offline? The desktop build runs offline.

Do you keep my files? No, the cloud build wipes after each run.

Will it learn from my work? No, we never train on inputs.

A short tour of the workflow

Upload a file or paste a snippet of prose.

Pick the entities you want gone from the draft.

Choose a method: replace, mask, hash, encrypt, or redact.

Press run and watch the side panel show each hit.

Skim the result and tweak any rule that misfired.

Save the cleaned file or send it to a teammate.