Konzept zur Anonymisierung von Personendaten zur DSG-Kompatibilität
Mit dem Inkrafttreten des neuen Datenschutzgesetzes (DSG) in der Schweiz ändern sich ab 2023 wichtige Bestimmungen in Bezug auf die Bearbeitung von Person-Enddaten. Das revidierte neue Datenschutzgesetz (nDSG) bedingt erhöhte Anforderungen an den betrieblichen Datenschutz wie den Schutz der Persönlichkeit und der Grundrechte von natürlichen Personen, über die Personendaten bearbeitet werden. Bei dieser Arbeit wird ein Konzept erarbeitet, welches mit aktuellen Technologien die Anforderungen des nDSG erfüllen soll.
Intro
Die Base-Net Informatik AG ist erfolgreicher Anbieter für Standardsoftware im Kredit- und Hypothekarbereich zudem exklusiver Anbieter für das elektronische Pfandregister in der Schweiz und die zentrale Sicherheiten-Drehscheibe bei der SIX SIS AG. Die Standardsoftware WinCredit (WCR) wurde bereits bei über 70 Banken, Versicherungen und Pensionskassen erfolgreich eingeführt. WinCredit 3 ist die neue modulare Softwarelösung für das Kreditmanagement.
Da bei dieser Software Personendaten bearbeitet werden können, müssen die neuen Anforderungen des nDSG ab 2023 berücksichtigt werden. Zurzeit besteht noch keine firmeninterne Lösung und dadurch entstand die Idee hinter dieser Diplomarbeit, ein Konzept dafür zu erstellen.
Ausgangslage
Bei der Umsetzung des nDSGs geht es hauptsächlich darum, schützenswerte Personendaten nach einer gewissen Frist nach Erlöschen des Zwecks zu anonymisieren bzw. zu löschen. Nach erfolgreicher Anonymisierung soll der Nutzer oder Admin zudem einsehen können, dass dies erfolgreich war.
Personenbezogene Daten entsprechen allen Informationen, die sich auf eine identifizierte oder identifizierbare natürliche Person beziehen (Name, E-Mail, Telefon-Nr, Adresse, Einkommen, etc.).
Der Datenschutz ist für die Base-Net wie auch ihre Kunden ein wichtiges Thema.
Es besteht zurzeit keine Lösung firmenintern oder auf dem Markt (z.B. eine Open-Source Lösung) die für WinCredit3 eingesetzt werden kann. Somit muss ein von Grund auf neues Konzept erstellt werden, welches dem Tech-Stack und der Architektur von WCR3 entspricht.
Das Resultat dieser Arbeit soll in naher Zukunft verwendet werden können, um die nDSG-Anforderungen in WCR3 umsetzen zu können.
Umsetzung
In der Realisierungsphase ging es primär darum eine geeignete Variante für einen Anonymisierungs-Mechanismus zu finden, diese zu analysieren und bewerten. Dafür wurde eine Nutzwertanalyse gemacht, welche bei der Findung der besten Variante geholfen hat.
Es hat sich herausgestellt, dass sich die Methode mit der Datenmaskierung am besten eignet. Dabei werden Daten in einer verschlüsselter Form auf der DB abgespeichert (z.B. mit *******). Die Formate für jedes Feld müssen korrekt sein, damit diese auch gespeichert werden können, z.b. darf die Feldlänge nicht überschritten werden.
In WCR3 werden Transfer- und Domain-Models eingesetzt. Die Daten aus der DB werden jeweils auf die Domain-Models gemappt, diese führen u.A. auch Logiken aus. Die Transfer-Models dienen primär als Responses und Request Bodies. Für die Umsetzung der auserwählten Variante wurde ein eigenes Attribut erstellt, welche auf den Eigenschaften eines Models gesetzt werden kann. Das Attribut kann zwei Parameter entgegen nehmen:
- Datentyp: Um was für ein Feld es sich handelt (Text, Zahl, Mail, etc.)
- Länge: Wie lang soll der Wert für das Feld sein.
In einem Service werden alle Properties eines Models rekursiv durchiteriert und geprüft ob das Attribut auf dem Property gesetzt ist. Falls ja wird der Wert mit einem maskierten Wert gemäss den angegebenen Parametern auf dem Attribut überschrieben und schlussendlich gespeichert.
Der Service kann über einen API Endpunkt angestossen werden.
Damit eingesehen werden kann, ob die Daten auch erfolgreich anonymisiert wurden, habe ich einen eine Log-Komponente (Microsoft Logger) eingebaut. Der Logger kann beliebig konfiguriert werden wie beispielsweise wohin geloggt werden soll (File, API, DB, etc.). In den Logs ist ersichtlich welcher Datensatz anonymisiert wurde anhand des Primary Keys (ID) des Datensatzes. Auch bei einer fehlerhaften Verarbeitung wird dies entsprechend geloggt.
Ergebnis
Die auserwählte Variante wurde in dem PoC gemäss Anforderungen implementiert. Der Code des PoC entspricht den gleichen eingesetzten Technologien wie in WinCredit3 und ist somit kompatibel für die Adaption.
Zum Schluss wurde zur Überprüfung das Ganze noch getestet mit Komponenten- und Systemtests und in einem Testprotokoll festgehalten.
Sämtliche Erfolgskriterien konnten somit erfolgreich umgesetzt werden.
Die Lösung kann nun eingesetzt und weiter ausgebaut bzw. erweitert werden.
Schlusswort
Die Diplomarbeit war sehr spannend, lehrreich und auch zeitaufwändig. Ich konnte viel lernen und mich mit einem interessanten Thema auseinandersetzen, bei welchem ich bisher noch nicht in Berührung kam.









