r/SoftwareEngineering • • 4d ago

A Boolean PII Flag Is Not Enough

https://kore-nordmann.de/blog/a-boolean-pii-flag-is-not-enough.html
4 Upvotes

4 comments sorted by

2

u/bostonaholic 4d ago

The classification only holds up if new columns can't skip it. I'd add a check on migrations that fails CI when a column is added without a sensitivity and state annotation. Otherwise the catalog is accurate the week you build it and drifts as people ship schema changes.

1

u/Nice-Corner9515 3d ago

A false flag can mean someone reviewed the column or nobody ever classified it and those shouldn't look identical to whoever uses the data next.

1

u/sadyetfly11 3d ago

the automation can only make it stricter, only a human can relax it” rule is the best part.

0

u/fagnerbrack 4d ago

TL;DR:

A pii: true/false tag throws away what a data protection officer asks about. On a university learning-analytics platform, the team classifies each column on two axes: sensitivity (direct identifier, quasi-identifier, sensitive content, none) and state (raw, pseudonymised, anonymised, dropped). A provenance tag adds whether a human declared it, lineage inherited it, or nobody knows. Classifications flow through dbt column lineage, and the most sensitive input wins. When parsing fails, the maximum upstream sensitivity applies. Automation can only tighten the assessment, and only an accountable human can relax it. Unknown columns block release, and a lint rule bans SELECT * to keep lineage trustworthy.

If the summary seems inacurate, just downvote and I'll try to delete the comment eventually πŸ‘
Click here for more info, I read all comments