By · Last updated 2026-06-05

Tagasi BlogisseTehniline

GDPR-nõuetele vastavad logid: vigade parandamine säilib

Rakenduse logid koguvad vaikselt kasutajate e-posti aadresse, IP-sid ja kontonumbreid. Siin on, kuidas jagada logisid kolmandate osapooltega, töövõtjatega ja vaatlusvahendite platvormidega.

June 5, 20267 min lugemist
JSON logsGDPR complianceDevOps privacylog anonymizationdata minimization

Isikuandmed peidavad end rakenduse logides

Rakenduse logid on inseneritöös üks enim tähelepanuta jäetud GDPR-pindadest. Mitte sellepärast, et insenerid seadust ignoreerivad. Vaid sellepärast, et kasutajate andmed satuvad logifailidesse kogemata.

Üks JSON-i päringulogikirje võib sisaldada nelja isikuandmete välja:

{
  "timestamp": "2025-11-14T09:22:13Z",
  "level": "ERROR",
  "endpoint": "/api/users/profile",
  "user_email": "sarah.johnson@company.com",
  "client_ip": "82.123.45.67",
  "user_agent": "Mozilla/5.0",
  "error": "ValidationError: phone format",
  "input_value": "+49 176 1234 5678"
}

See üks kirje sisaldab e-posti aadressi, IP-aadressi ja telefoninumbrit. Korrutage see miljonite igapäevaste API-kõnedega. Tulemuseks on märkimisväärne isikuandmete töötlemine. See vajab õiguslikku alust, piiranguid ja kontrolle.

Logide jagamine kolmandate osapooltega suurendab GDPR-riski

Meeskonnad jagavad logifaile välisosalistega pidevalt:

  • Turvatestimise firmad saavad kirjeid rakenduse käitumise kaardistamiseks
  • Väliskonsultandid kasutavad logi näidiseid aeglaste kohtade leidmiseks
  • Logi platvormid (Elastic, Datadog, Splunk) saavad täielikke väljundvooge
  • SRE töövõtjad pääsevad intsidentide ajal kirjetele ligi
  • Arendustiimid teistes juriidilistes üksustes saavad faile silumiseks

Iga jagamine tõstatab GDPR artikkel 28 küsimusi. Kas saaja on volitatud töötleja? Kas on olemas andmetöötluse leping? Kas neil on õiguslik alus näha kasutajate andmeid nendes failides?

Logiplatvormid on sage lünk. Reaalsete kasutajate e-postide ja IP-dega väljundi saatmine Elastic Cloudile või Datadogile loob töötlemisseose. See seos vajab DPA-d, standardklausleid ja ülekanderiista, kui platvorm asub väljaspool EL-i. Kõik see nõuab aega ja juriidilist ülevaatust.

Lihtsam tee: puhastage kasutajate andmed enne failide süsteemist lahkumist. Lugege meie nõuetele vastavuse ülevaade täieliku artikkel 28 reeglistiku jaoks.

Miks JSON-struktuur muudab tuvastamise raskeks

JSON-logifilide struktuur varieerub. Üldine teksti skaneerimne ei piisa.

Pesastamise sügavus: Kasutajate andmed ilmuvad mis tahes sügavustel. Väli request.headers.x-forwarded-for sisaldab IP-aadresse. Väli response.body.errors[0].field_value võib sisaldada kasutaja sisendit. Lame teksticheck jätab sügavale pesastatud väljades olevad väljad vahele.

Ebajärjepidevad skeemid: Iga API otspunkt toodab oma väljundkuju. Autentimislogid näevad makselogidest erinevad välja. Profiili uuendamise logid näevad mõlemast erinevad välja. Fikseeritud-tee lähenemine jätab vahele kasutajate andmed, mis ilmuvad veakontekstides ebatavalistes teedes.

Tehniline väärtused segistatuna isikuandmetega: Virnahaarangud, veakoodid ja ajatemplid peavad jääma puutumata. Laiaulatuslik eemaldamine pühib vajalikke välju ja muudab faili kasutuks.

Õige lähenemine on sisupõhine tuvastus. Leidke kasutajate andmed selle järgi, mis nad on - e-posti muster, IP-vorming, nimeline olem - mitte selle järgi, kus nad struktuuris asuvad. See käsitleb muutuvaid skeeme ilma otspunktipõhise seadistamiseta.

Järjepidev asendamine hoiab logid kasutatavana

Võtmenõue on referentsiaalne terviklikkus. Kui sarah.johnson@company.com ilmub 47 kirjes päringuahela ulatuses, peavad kõik 47 vastama samale väärtusele.

Vastenduseeskirjad:

  • sarah.johnson@company.com - user1@example.com (sama väärtus kogu faili ulatuses)
  • 82.123.45.67 - 192.0.2.1 (RFC 5737 dokumentatsioon IP - selgelt mitte reaalne)
  • +49 176 1234 5678 - +49 XXX XXX XXXX (maskeeritud)

Selle vastendusega saab arendaja jälgida user1@example.com 47 kirje ulatuses, rekonstrueerida päringuahela ja parandada vea - ilma reaalseid kasutajate andmeid nägemata.

Need metaandmete väljad jäävad muutmata:

  • Ajatemplid (ei ole kasutajate andmed)
  • Veakoodid ja tüübid (ei ole kasutajate andmed)
  • Virnahaarangud (võivad sisaldada tehniline ID-sid, mitte kasutajate andmeid)
  • HTTP meetodid, teed, staatuskoodid (ei ole kasutajate andmed)
  • Mõõdiku väärtused ja latentsuse arvud (ei ole kasutajate andmed)

Tulemus on fail, mis toimib silumistöö jaoks. See ei sisalda reaalseid kasutajate andmeid. Vaadake meie sõnastikku anonümiseerimise ja pseudonümiseerimise erinevuse kohta GDPR alusel.

Kasutusjuhtum: turvatestimise logi jagamine

SaaS-ettevõte viis läbi kvartali turvauuenduse välise turvatestimise meeskonnaga. Ulatus nõudis 90 päeva tootmis-API väljundit autentimisvoogude kaardistamiseks ja veamustrite analüüsimiseks.

Toores maht: 180 MB JSON-faile. Isikuandmete arv: 4200 unikaalset kasutaja e-posti aadressi, 1800 unikaalset IP-d, 340 osalist kontonumbrit veakontekstides.

Ilma kasutajate andmete eelnevalt eemaldamiseta nõuaks nende failide jagamine:

  • DPA-d turvatestimise firmaga
  • GDPR artikkel 46 ülekanderiista (firma asus väljaspool EL-i)
  • Andmesubjekti teate ülevaatust

Igaüks neist lisab juriidilist tööd ja aega.

Isikuandmete eemaldamisega rakendatuna:

  • Töötlemisaeg: 25 minutit 180 MB jaoks
  • Väljund: 180 MB struktuuriliselt identseid faile, kõik e-postid ja IP-d asendatud turvaväärtustega
  • Tulemus: turvatestimise meeskond sai täieliku konteksti; nende juurde ei jõudnud ühtegi reaalset kasutaja andmeid
  • GDPR tulemus: DPA pole vajalik - puhastatud väljund ei ole GDPR alusel kasutajate andmed

Vaadake meie KKK-d levinumate küsimuste jaoks selle kohta, mis loeb GDPR alusel anonüümseks.

Isikuandmete eemaldamise integreerimine CI/CD-sse

Meeskondadele, kes jagavad väljundit regulaarselt, saab selle sammu käitada olemasolevate konveierite sees.

Logi rotatsioon:

  1. Rotatsiooni skript käivitatakse öösel
  2. Eemaldamise samm käivitatakse enne arhiveerimist või mis tahes logiplatformile saatmist
  3. Puhastatud failid lähevad välissüsteemidesse
  4. Algsed failid jäävad sisemiseks täieliku säilitamisega

Enne-jagamise skript:

  1. Insener vajab töövõtjaga näidise jagamist
  2. Käivitab skripti: input=raw-logs/ output=clean-logs/
  3. Jagab kausta clean-logs/
  4. Käsitsi isikuandmete ülevaatust pole vaja

Sidecar lähenemine:

  1. Sidecar puhastab väljundvoo enne edasiandmist
  2. Reaalajas eemaldamine säilitab kasulikkuse logi analüüsi jaoks
  3. Platvorm ei saa ühtegi reaalset kasutaja andmeid

Säilitamispoliitika integreerimine

GDPR artikkel 5(1)(e) nõuab salvestamise piirangut. Isikuandmete eemaldamine sobib iga säilitamispoliitikaga.

  • Töötlemata väljund hoitakse 7 päeva (igapäevaseks silumistööks)
  • Puhastatud versioonid hoitakse 90 päeva (trendi analüüsi ja intsidentide ülevaatuse jaoks)
  • Eemaldamise samm käivitatakse 7. päeval

See rahuldab salvestamise piirangu. See eemaldab riski hoida töötlemata väljundit pikaajaliselt.

Allikad

Kas olete valmis oma andmeid kaitsma?

Alustage PII anonüümitamist 285+ üksustüübi abil 48 keeles.

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.