Pseudonymisierung und Sie – Datenschutz optimieren
Niemand mochte das E-Mail-Armageddon der Datenschutzerklärungen – Unternehmen eingeschlossen. Nicht, weil einige ihrer E-Mails direkt im Spam landeten, sondern weil viele Unternehmen ihre Sicherheitsvorkehrungen noch einmal überdenken mussten. Sicherheitsmaßnahmen zu überarbeiten, kann nervig sein – aber der Verlust einer Unmenge an persönlichen Daten ist der absolute Albtraum.
Was können wir tun?
Unternehmen können das Risiko eines Datendiebstahls senken, indem sie die richtigen Methoden für den Datenschutz anwenden – und einige davon sind ziemlich einfach umzusetzen. Eine Methode, die uns besonders gefällt, ist die Pseudonymisierung. Das ist nur ein eleganter Ausdruck für die Tarnung sensibler Daten. Bei der Pseudonymisierung werden identifizierende Informationen in einem Datensatz durch fiktive Kennungen (Pseudonyme) ersetzt, was es schwierig macht, einen bestimmten Datenpunkt zurückzuverfolgen. Wenn man darüber nachdenkt, ist es ein bisschen wie dieses Fake-MySpace-Profil, das Sie 2007 hatten.
Klingt kompliziert, warum also der Aufwand?
Das Großartige an der Pseudonymisierung ist, dass es sich um dieselben Daten handelt, nur unter einem falschen Namen – oder in diesem Fall unter einer sehr langen Zeichenfolge. Da keine einzelne Schutzmaßnahme für sich allein ausreicht, trägt die Kombination mit anderen Praktiken wie Verschlüsselung, Hashing oder Tokenisierung dazu bei, das Risiko einer Re-Identifizierung zu verringern. Pseudonymisierung auf Ihre Daten anzuwenden, ist relativ einfach, und es gibt mehr als einen Weg, dies zu erreichen. In diesem Beispiel sehen wir uns das Logstash-Fingerprint-Filter-Plugin an. Probieren Sie alternativ ein generisches Dateiskript mit einem Ruby-Filter-Plugin aus, falls das für Sie nicht funktioniert. Beide Methoden maskieren die Felder für Benutzername und IP-Adresse. Behalten Sie das im Hinterkopf.
Pseudonymisierung implementieren
Bevor wir anfangen, schnappen Sie sich ein Mountain Dew, denn nichts verleiht einem mehr das Gefühl eines Computer-Genies als fragwürdige Softdrink-Entscheidungen. Sobald Sie die kalte Dose geöffnet haben, laden Sie die Dateien im Repository in ein lokales Verzeichnis herunter. Hier ist etwas Code von GitHub der das Herunterladen der einzelnen Dateien erleichtert:
curl -O https://raw.githubusercontent.com/elastic/examples/master/Miscellaneous/gdpr/pseudonymization/docker-compose.ymlrnrncurl -O https://raw.githubusercontent.com/elastic/examples/master/Miscellaneous/gdpr/pseudonymization/logstash_fingerprint.confrnrncurl -O https://raw.githubusercontent.com/elastic/examples/master/Miscellaneous/gdpr/pseudonymization/logstash_script_fingerprint.confrnrncurl -O https://raw.githubusercontent.com/elastic/examples/master/Miscellaneous/gdpr/pseudonymization/pipelines.ymlrnrncurl -O https://raw.githubusercontent.com/elastic/examples/master/Miscellaneous/gdpr/pseudonymization/pseudonymise.rbrnrncurl -O https://raw.githubusercontent.com/elastic/examples/master/Miscellaneous/gdpr/pseudonymization/Dockerfilernrncurl -O https://raw.githubusercontent.com/elastic/examples/master/Miscellaneous/gdpr/pseudonymization/sample_docs
Überprüfen Sie, ob das Verzeichnis mit den heruntergeladenen Dateien für Docker freigegeben ist. Gehen Sie dann in das Verzeichnis und führen Sie den folgenden Befehl aus:
ELASTIC_PASSWORD=changeme TAG=6.2.2 docker-compose up
Achten Sie auf die untenstehende Logzeile. Diese zeigt an, dass Logstash gestartet wurde und nun Daten annimmt.
logstash_1 | [2018-03-20T12:40:33,638][INFO ][logstash.agent ] Pipelines running {:count=>2, :pipelines=>["fingerprint_filter", "ruby_filter"]}
Jetzt einen Schluck nehmen, Leute. Wir haben es fast geschafft.

Führen Sie für das Fingerprint-Filter-Plugin den folgenden Befehl aus:
cat sample_docs | nc localhost 5000
Ta-da. Nun sehen Sie die Daten ein und nutzen sie. Die pseudonymisierten Informationen werden in einem Ereignisindex indiziert, auf den Sie über folgende Abfrage zugreifen:
curl "http://localhost:9200/events/_search?pretty" -u elastic:changeme
Das sollte dann ungefähr so aussehen:
{rnrn "_index": "events",rnrn "_type": "doc",rnrn "_id": "tQOjQ2IBED8Jv9YVVDxs",rnrn "_score": 1,rnrn "_source": {rnrn "host": "gateway",rnrn "user_agent": "Mozilla/5.0 (Macintosh; PPC Mac OS X 10_6_7) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.790.0 Safari/535.1",rnrn "job_title": "Electrical Engineer",rnrn "username": "95b88d8d477e18a8acca833e7bcbd2c5d5f646b29e2d1c9604a1d930e2f63313",rnrn "@timestamp": "2018-03-20T13:39:59.799Z",rnrn "ip": "e85022a9801b356dd8c3ed6b2e02f0061a3aeea5bbad15a9ff4aed35b5bb3a42",rnrn "source": "ruby_pipeline",rnrn "city": "Komsomol’skiy",rnrn "title": "Mr",rnrn "country_code": "UZ",rnrn "@version": "1",rnrn "gender": "Female",rnrn "country": "Uzbekistan",rnrn "port": 41126rnrn }rnrn }
Großartig, oder? Es gibt noch mehr. Die Suchen nach Schlüssel-Wert-Paaren befinden sich in einem Identitätsindex, auf den Sie mit dieser Abfrage zugreifen:
curl "http://localhost:9200/identities/_search?pretty" -u elastic:changeme
Wenn Sie sich fragen, wie das aussieht, werfen Sie einen Blick nach unten:
{rnrn "_index": "identities",rnrn "_type": "doc",rnrn "_id": "1924d02bd98a46c795cb2a925b98a22ae59c563e0de49f4ba4aa49e6cab072ad",rnrn "_score": 1,rnrn "_source": {rnrn "key": "1924d02bd98a46c795cb2a925b98a22ae59c563e0de49f4ba4aa49e6cab072ad",rnrn "value": "174.145.248.21",rnrn "tags": [rnrn "identities"rnrn ],rnrn "@timestamp": "2018-03-20T13:39:59.957Z",rnrn "@version": "1",rnrn "source": "ruby_pipeline"rnrn }
Sie sollten immer 200 Dokumente in einem Pseudonym-Index haben, unabhängig davon, wie oft Sie die Daten indizieren. Für jeden eindeutigen Wert in der Tabelle gibt es ein Dokument, in diesem Fall Benutzername und IP-Adresse. Müssen Sie einen Wert re-identifizieren? Schlagen Sie ihn anhand der ID im Identitätsindex nach. ICYMI – so sieht ein pseudonymisierter Wert aus:
6efda88d5338599ef1cc29df5dad8da681984580dc1f7f495dcf17ebcf7191f8
Wenn Sie den ursprünglichen Wert benötigen, erhalten Sie ihn mit diesem Befehl:
curl "http://localhost:9200/identities/doc/6efda88d5338599ef1cc29df5dad8da681984580dc1f7f495dcf17ebcf7191f8?pretty" -u elastic:changeme
Fazit

BAM. Pseudonymisierung. Das ist wie ein Zeugenschutzprogramm für Daten – wir sind große Fans davon. All diese pseudonymisierten Daten machen es böswilligen Akteuren schwer, etwas damit anzufangen, selbst wenn sie gut in dem sind, was sie tun. Mit einer soliden Richtlinie zur Vorratsdatenspeicherung lässt sich Ihr Diebstahlrisiko drastisch minimieren – und wer liebt das nicht? Wenn Sie neugierig auf die Datenverarbeitung bei Mailgun sind, besuchen Sie unsere Website. Wenn es um E-Mails geht, werden wir sehr schnell sehr technisch.