By · Last updated 2026-06-05

Atpakaļ uz BloguGDPR un Atbilstība

Excel PII: anonimizējiet simtiem kolonnu

Excel ir viens no PII blīvākajiem dokumentu veidiem biznesa operācijās. Lūk, kāpēc standarta teksta analīze neizdodas ar izklājlapām un ko kolonnu konteksts var uzlabot.

June 5, 20268 min lasīšanai
Excel GDPRspreadsheet anonymizationXLSX complianceHR datadata minimization

Kāpēc Excel ir jūsu augstākā riska failu veids

Excel faili ir viens no lielākajiem GDPR riskiem lielākajā daļā uzņēmumu. Medicīniskie ieraksti var glabāt jutīgākus datus vienā rindā. Bet izklājlapas ātri uzkrāj PII — un atbilstības komandas tās bieži palaiž garām.

Tris lietas padara Excel failus grūti pārvaldāmus.

Apjoms: Viens XLSX fails var glabāt 50 000 rindu un 100 kolonnu. Tas ir pieci miljoni šūnu. Nekāda manuālā pārskatīšana nevar pārbaudīt visas.

Režģa izkārtojums: Teksts plūst vienā virzienā. Excel izklāj datus pa rindām un kolonnām. Personas dati var slēpties jebkur šajā režģī.

Jaukts saturs: Algu joslas, nodaļu kodi un darba pakāpes atrodas vienā failā kopā ar SSN un e-pasta adresēm. Viss izdzēšana padara failu bezjēdzīgu.

Ilgstoša glabāšana: Darbinieku saraksti un klientu ieraksti paliek Excel failos gadiem. GDPR 5. panta 1. punkta e) apakšpunkts nosaka, ka dati jāglabā "ne ilgāk, nekā nepieciešams". Faili, kas "varētu noderēt", bieži paliek daudz ilgāk par šo punktu.

Kāpēc standarta teksta skenēšana neizdodas ar izklājlapām

Teksta analīzes rīki tika veidoti dokumentiem. Tie neizdodas ar izklājlapām dažos izplatītos veidos.

SSN kā cipara problēma

Excel saglabā sociālās apdrošināšanas numurus bez svītrām (123456789) kā vienkāršus ciparus — nevis tekstu. Skeneris, kas veidots, lai atrastu ###-##-####, tos palaidīs garām. Labam rīkam jāzina, ka 9 ciparu skaitlis kolonnā ar nosaukumu "SSN" ir sociālās apdrošināšanas numurs.

Datuma kā cipara problēma

Excel glabā datumus kā seriālos ciparus. 2024. gada 6. februāris ir saglabāts kā 45329. CSV eksports rādīs "45329" kolonnā "Dzimšanas datums". Skenerim šis cipars jāpārvērš par reālu datumu, pirms tas var atzīmēt vērtību.

Daļēja SSN problēma

Dažas sistēmas rāda tikai pēdējos četrus SSN ciparus (*--1234). Pilnais skaitlis atrodas bloķētā kolonnā. Daļējai vērtībai joprojām jābūt anonimizētai — pat ja tā neizskatās pēc pilna SSN.

Formulas PII problēma

Dažas šūnas veido PII no citām šūnām. Šūna ar =CONCATENATE(B2," ",C2) rāda pilnu vārdu. Ja dzēšat B un C kolonnas, pilnais vārds joprojām ir redzams formulas šūnā. Rīks, kas lasa tikai saglabātās vērtības — nevis formulu saites — atstās PII savā vietā.

Vairāku lapu problēma

Lielai darbgrāmatai var būt piecas lapas: Klientu saraksts, Pasūtījumi, Atbalsta pieteikumi, Rēķini un Analītika. Klientu vārdi parādās visās piecās. "Jānis Bērziņš" vienā lapā jākļūst par vienu un to pašu tokenu — "PERSON_0047" — katrā citā lapā. Divi dažādi tokeni pārrāvj ierakstu saites.

Kolonnu galvenes kā signāls

Labākais uzlabojums izklājlapu PII noteikšanā ir kolonnu galveņu analīze.

Kolonna ar nosaukumu "SSN" norāda rīkam, ka visas vērtības šajā kolonnā ir sociālās apdrošināšanas numuri. Tas darbojas pat tad, ja vērtības ir daļējas, dīvaini formatētas vai saglabātas kā cipari.

Kolonnas galveneKo tā signalizē
SSN / Sociālā apdrošināšana / Nodokļu IDUztveriet 9 ciparu ciparus kā SSN
E-pasts / E-mail / E-pasta adreseAtzīmējiet pat daļējos e-pasta modeļus
Tālrunis / Telefons / Mobīlais / ŠūnaPieņemiet jebkuru tālruņa formātu
Dzimšanas datums / Dzimšanas dienaKonvertējiet seriālos ciparus datumos
Vārds / Uzvārds / Pilns vārdsPazeminiet latiņu vārdu noteikšanai
Adrese / Iela / Pilsēta / Pasta indekssApvienojiet tuvumā esošos atrašanās vietas laukus
Pacienta ID / MRN / Ieraksta numursPielietojiet veselības aprūpes ID modeļus

Kolonnas konteksts neaizstāj satura skenēšanu. Tas to papildina. Kolonna ar nosaukumu "SSN" ar 100 vērtībām: satura skenēšana nozvejo 99 labi formatētas. Kolonnas konteksts nozvejo vienu, kas izskatās dīvaini.

Saglabājiet struktūru, noņemiet vārdus

Mērķis lielākajā daļā Excel GDPR gadijumu nav iznīcināt failu. Tas ir atdalīt personas datus, vienlaikus saglabājot daļas, kas padara failu noderīgu.

15 000 rindu darbinieku ierakstu failam atbilstības virsniekiem nepieciešams:

Noņemt:

  • Darbinieku vārdus → PERSON_XXXX tokeni
  • SSN → REDACTED
  • E-pasta adreses → REDACTED
  • Tālruņu numurus → REDACTED
  • Mājas adreses → REDACTED

Saglabāt:

  • Nodaļu kodus
  • Amata nosaukumus (tikai vispārīgās lomas)
  • Algu joslas (plašas kategorijas)
  • Veiktspējas rādītājus (grupu dati)
  • Sākuma datumus (stāža statistikai)
  • Vadītāja kodus (ja pseidonimizēts)

Rīks, kas zina atšķirību starp "datiem, kas nosau cilvēkus" un "datiem, kas apraksta darbus", dod failu, kas joprojām darbojas HR analīzei — un atbilst GDPR datu minimizācijas noteikumiem.

Reāls gadijums: M&A HR datu pārsūtīšana

Piegādes uzņēmums saņem darbinieku ierakstus no mērķa uzņēmuma: 15 000 rindu XLSX ar 40 kolonnām. Fails jānosūta ārējai HR firmai pabalstu plānošanai. GDPR nosaka, ka var kopīgot tikai tos datus, kas nepieciešami šim uzdevumam.

Pirms apstrādes: 40 kolonnas ar pilniem vārdiem, SSN, e-pastiem, mājas adresēm, ārkārtas kontaktiem un bankas datiem.

Pēc kolonnas konteksta apstrādes:

  • 12 kolonnas tieši identificē cilvēkus (vārdi, SSN, e-pasti, tālrunis, adreses, bankas dati): aizstātas ar konsekventiem tokeneem
  • 3 kolonnas netieši identificē cilvēkus (darbinieka ID, vadītāja kods, darba kods): aizstātas ar pseidonīmiskiem tokeneem, kas saskan failā
  • 25 kolonnas ir apkopotie dati (algu josla, nodaļa, stāžs, pakāpe): paliek nemainīgas

Laiks: 8 minūtes 600 000 šūnām

Izvade: Viens un tas pats XLSX izkārtojums, 40 kolonnas, 15 anonimizētas, 25 nemainītas

Audita žurnāls: Šūnu līmeņa ieraksts par katru darbību ar entītijas veidu, ticamības rādītāju un izmantoto kolonnas signālu

HR firma saņem pilnu datu kopu savam darbam — bez vārdiem vai ID. Atbilstības ieraksts saņem pierādijumu, ka tika kopīgoti tikai pareizi dati.

Šis izaicinājums nav unikāls Excel failiem. Katrs faila formāts neizdodas savā veidā. Skatiet kā formātu sadrumstalotība ietekmē PII noteikšanu par pārskatu pa failu veidiem.

Tris GDPR 5. panta noteikumi, viens process

Strukturēta izklājlapu anonimizācija vienlaikus atbilst trim noteikumiem.

Datu minimizācija (5. panta 1. punkta c) apakšpunkts): Tikai kolonnas, kas nepieciešamas uzdevumam, dodas pie saņēmēja. Identificējošās kolonnas tiek notīrītas.

Glabāšanas ierobežojums (5. panta 1. punkta e) apakšpunkts): Oriģinālais fails paliek juridiskai glabāšanai. Tiek veidota tīra kopija kopīgošanai — ar īsāku vai nekādu glabāšanas nepieciešamību.

Integritāte un konfidencialitāte (5. panta 1. punkta f) apakšpunkts): Nevieni identificējoši dati nepamet kontroles zonu. Tiek kopīgotas tikai tīras kopijas.

Audita žurnāls no procesa arī ir jūsu 5. panta 2. punkta pierādijums. Tas rāda, kā katrs noteikums tika ievērots katram failam.

Ja jūsu komanda apstrādā DSAR vai lielus datu eksportus, tā pati loģika attiecas uz API līmeni. Skatiet kā GDPR datu minimizācija darbojas reāllaika API.

Komandām, kas strādā ar lieliem apjomiem ierobežotos termiņos, skatiet GDPR DSAR partijas apstrādi apjomā par darbplūsmas modeļiem, kas attiecas arī šeit.

Avoti

Vai esat gatavi aizsargāt savus datus?

Sāciet PII anonimizāciju ar 285+ entitāšu veidiem 48 valodās.

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.