DataSunrise sponsert AWS re:Invent 2024 in Las Vegas, bitte besuchen Sie uns am Stand #2158 von DataSunrise

Beispiel für Datenklassifizierung

Beispiel für Datenklassifizierung

Beispiel für Datenklassifizierung

Einführung

In der heutigen digitalen Landschaft sind Daten das Lebenselixier von Organisationen. Von Kundendaten bis hin zu Finanztransaktionen verlassen sich Unternehmen auf große Mengen an Informationen, um fundierte Entscheidungen zu treffen und Wachstum zu fördern. Allerdings sind nicht alle Daten gleich. Einige Daten sind sensibler als andere und erfordern eine besondere Handhabung und Schutz. Hier kommt die Datenklassifizierung ins Spiel.

Datenklassifizierung ist der Prozess der Kategorisierung von Daten basierend auf ihrer Sensibilität, Kritikalität und ihrem Wert für die Organisation. Durch die Klassifizierung von Daten können Unternehmen sicherstellen, dass geeignete Sicherheitsmaßnahmen vorhanden sind, um sensible Informationen vor unbefugtem Zugriff, Missbrauch oder Sicherheitsverletzungen zu schützen. In diesem Artikel werden wir die Grundlagen der Datenklassifizierung erklären und Beispiele untersuchen, wie sie mit Python und Regulären Ausdrücken implementiert werden kann.

Verständnis der Datenklassifizierung

Bei der Datenklassifizierung geht es darum, Daten basierend auf ihren Eigenschaften und ihrem Sensibilitätsgrad in vordefinierte Kategorien oder Klassen zu organisieren. Das Hauptziel der Datenklassifizierung besteht darin, Daten zu identifizieren und zu priorisieren, die verstärkte Sicherheitskontrollen und Schutz erfordern.

Es gibt zwei Hauptansätze zur Datenklassifizierung:

Klassifizierung nach Schema

Dieser Ansatz umfasst die Analyse von Datenbank-Metadaten in Bezug auf die Namen von Spalten, Tabellen, Ansichten und Funktionen. Wenn eine Spalte beispielsweise „last_name“ genannt wird, wird sie als sensible Daten klassifiziert.

Klassifizierung nach Daten

Bei diesem Ansatz wird der tatsächliche Inhalt der Daten analysiert, um deren Sensibilität und Klassifizierung zu bestimmen. Diese Methode erfordert eine detailliertere Untersuchung der Daten selbst, oft unter Verwendung von Techniken wie Mustererkennung oder Regulären Ausdrücken, um sensible Informationen zu identifizieren.

Diese beiden Ansätze können nach Wunsch kombiniert werden. Darüber hinaus kombiniert DataSunrise sie, wenn der Benutzer Attribute für den Informationstyp erstellt, die im Sensitive Data Discovery Feature verwendet werden. Später werden wir untersuchen, wie die Verwendung von Regulären Ausdrücken zu einer erheblichen Anzahl von Prüfungen für jeden Ausdruck führt. Daher ist eine zentrale Kontrolle aller Datenklassifizierungsmechanismen äußerst wichtig. Diese Funktionalität ist in DataSunrise sofort einsatzbereit verfügbar sowie andere leistungsstarke Funktionen wie die OCR-basierte Datenerkennung.

Klassifizierung von Daten mit Python und Regulären Ausdrücken

Ein leistungsstarkes Werkzeug zur Klassifizierung von Daten sind Reguläre Ausdrücke. Reguläre Ausdrücke, oder Regexes, sind eine Folge von Zeichen, die ein Suchmuster definieren. Sie ermöglichen es, spezifische Muster innerhalb von Textdaten zu finden und zu extrahieren.

Betrachten wir ein Beispiel, bei dem wir eine virtuelle Datenbanktabelle mit verschiedenen Arten von Informationen, einschließlich E-Mails, Kreditkartennummern und Sozialversicherungsnummern (SSNs), haben. Unser Ziel ist es, diese Daten zu klassifizieren und die sensiblen Informationen zu identifizieren.

import re

# Beispieldaten
  data = [
    ['John Doe', '[email protected]', '5555-5555-5555-4444', '123-45-6789'],
    ['Jane Smith', '[email protected]', '4111-1111-1111-1111', '987-65-4321'],
    ['Bob Johnson', '[email protected]', '1234-5678-9012-3456', '456-78-9012']
  ]

# Reguläre Ausdrücke für sensible Daten
email_regex = r'\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b'
mastercard_regex = r'\b(?:5[1-5][0-9]{2}|222[1-9]|22[3-9][0-9]|2[3-6][0-9]{2}|27[01][0-9]|2720)[0-9]{12}\b'
ssn_regex = r'\b(?!000|666)[0-8][0-9]{2}-(?!00)[0-9]{2}-(?!0000)[0-9]{4}\b'

# Daten klassifizieren
for row in data:
  for cell in row:
    if re.match(email_regex, cell):
    print(f"E-Mail gefunden: {cell}")
    elif re.match(mastercard_regex, cell):
    print(f"Mastercard-Nummer gefunden: {cell}")
    elif re.match(ssn_regex, cell):
    print(f"SSN gefunden: {cell}")

In diesem Beispiel haben wir eine Liste von Listen, die eine Datenbanktabelle darstellen. Jede innere Liste stellt eine Zeile dar, und jedes Element innerhalb der Zeile stellt einen Spaltenwert dar.

Wir definieren Reguläre Ausdrücke, um E-Mails, Mastercard-Nummern und Sozialversicherungsnummern zu identifizieren. Diese Regulären Ausdrücke erfassen die spezifischen Muster, die mit jeder Art von sensiblen Daten verbunden sind.

Ein Rohstring-Literal r’…’ in Python behandelt Backslashes (\) als literale Zeichen. Dies ist besonders nützlich bei Regulären Ausdrücken, da Backslashes häufig als Escape-Zeichen verwendet werden. Durch die Verwendung von Rohstring-Literalen müssen Sie Backslashes nicht zweimal escapen (einmal für Python und einmal für die Regex-Engine).

Mit einer verschachtelten Schleife durchlaufen wir jede Zeile und jede Zelle in den Daten. Für jede Zelle verwenden wir die Funktion re.match(), um zu überprüfen, ob der Zellwert mit einem der definierten Regulären Ausdrücke übereinstimmt. Wenn eine Übereinstimmung gefunden wird, geben wir den entsprechenden sensiblen Datentyp und den übereinstimmenden Wert aus.

Das Ausführen dieses Codes führt zu folgendem Ergebnis:

E-Mail gefunden: [email protected]
Mastercard-Nummer gefunden: 5555-5555-5555-4444
SSN gefunden: 123-45-6789
E-Mail gefunden: [email protected]
Mastercard-Nummer gefunden: 4111-1111-1111-1111
SSN gefunden: 987-65-4321
E-Mail gefunden: [email protected]
SSN gefunden: 456-78-9012

Es ist wichtig zu beachten, dass es eine Herausforderung darstellen kann, umfassende Reguläre Ausdrücke für alle möglichen Variationen sensibler Daten zu erstellen. Unterschiedliche Datenformate, Randfälle und sich entwickelnde Muster können es schwierig machen, jedes Vorkommen genau zu erfassen. Daher ist es eine gute Idee, mit einfachen Regulären Ausdrücken zu beginnen und sie kontinuierlich basierend auf den spezifischen Anforderungen und Daten in realen Szenarien zu verfeinern.

Zusätzliche sensible Datenmuster

Hier sind einige weitere Reguläre Ausdrücke zur Klassifizierung sensibler Daten:

Telefonnummer (US-Format, mit und ohne +1):

^\\(?([0-9]{3})\\)?[-.\\s]?([0-9]{3})[-.\\s]?([0-9]{4})$

oder

^(\([0-9]{3}\) |[0-9]{3}-)[0-9]{3}-[0-9]{4}$

Diese Regulären Ausdrücke stimmen mit Telefonnummern in verschiedenen Formaten überein. Wie Sie aus dem obigen Link sehen können, gibt es eine Vielzahl von Regulären Ausdrücken, die helfen, Telefonnummern in verschiedenen Formaten und in verschiedenen Ländern zu klassifizieren. Diese Komplexität erschwert den Klassifizierungsprozess, da Sie all diese Regulären Ausdrücke einbeziehen müssen, um alle Daten genau zu klassifizieren.

IP-Adresse (IPv4):

^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$)){4}$

Dieser Reguläre Ausdruck stimmt mit IPv4-Adressen überein und stellt sicher, dass jedes Oktett im gültigen Bereich (0-255) liegt.

Passnummer (US-Format):

^(?!^0+$)[a-zA-Z0-9]{3,20}$

Dieser Reguläre Ausdruck stimmt mit US-Passnummern überein.

Bankkontonummer (IBAN-Format):

^[A-Z]{2}[0-9]{2}[A-Z0-9]{1,30}$

Dieser Reguläre Ausdruck stimmt mit Internationalen Bankkontonummern (IBAN) im Standardformat überein. Eine Liste der verschiedenen Formate (Reguläre Ausdrücke) finden Sie im Apache Validator.

Kreditkartennummer (American Express):

^3[47][0-9]{13}$

Dieser Reguläre Ausdruck stimmt mit American Express Kreditkartennummern überein, die entweder mit 34 oder 37 beginnen und insgesamt 15 Ziffern haben.

Sozialversicherungsnummer (SSN) mit Bindestrichen:

^(?!666|000|9\\d{2})\\d{3}-(?!00)\\d{2}-(?!0{4})\\d{4}$

Dieser Reguläre Ausdruck stimmt mit SSNs im Format XXX-XX-XXXX überein und schließt bestimmte ungültige Muster wie 000 in der Bereichsnummer oder 0000 in der Seriennummer aus.

E-Mail-Adresse:

^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,6}$

Dieser Reguläre Ausdruck stimmt mit E-Mail-Adressen überein und ermöglicht eine Kombination aus alphanumerischen Zeichen, Punkten, Unterstrichen und Bindestrichen im lokalen Teil und im Domainnamen. Dies ist eine kurze Variante. Sie können leicht die Diskussionen auf Stackoverflow finden, die fortgeschrittenere Varianten vorschlagen.

Denken Sie daran, dass diese Regulären Ausdrücke Beispiele sind und möglicherweise basierend auf Ihren spezifischen Anforderungen und den Ihnen vorliegenden Datenformaten angepasst werden müssen. Darüber hinaus sind Reguläre Ausdrücke allein nicht ausreichend für umfassenden Datenschutz. Sie sollten sie in Verbindung mit anderen Sicherheitsmaßnahmen wie Datenverschlüsselung, Zugangskontrollen und sicheren Speicherpraktiken verwenden.

Bei der Arbeit mit sensiblen Daten ist es entscheidend, die spezifischen Anforderungen und Vorschriften zu berücksichtigen, die für Ihren Bereich gelten. Konsultieren Sie immer die relevanten Sicherheits- und Compliance-Rahmenwerke und Richtlinien, um eine angemessene Handhabung und Schutz sensibler Informationen sicherzustellen.

Schlussfolgerung

Datenklassifizierung ist ein entscheidender Aspekt der Datensicherheit und Compliance. Durch die Kategorisierung von Daten basierend auf ihrer Sensibilität und die Anwendung geeigneter Sicherheitskontrollen können Organisationen sensible Informationen vor unbefugtem Zugriff und Sicherheitsverletzungen schützen.

Python und Reguläre Ausdrücke bieten leistungsstarke Werkzeuge zur Klassifizierung von Daten basierend auf ihrem Inhalt. Durch die Definition von Regulären Ausdrücken, die spezifische Muster erfassen, können wir sensible Daten in strukturierten oder unstrukturierten Datensätzen identifizieren und kennzeichnen.

Es ist jedoch wichtig, die Herausforderungen bei der Erstellung umfassender Regulärer Ausdrücke für alle möglichen Datenvariationen zu erkennen. Reguläre Ausdrücke sollten in Verbindung mit anderen Sicherheitsmaßnahmen wie Verschlüsselung, Zugangskontrollen und Überwachung verwendet werden, um einen robusten Datenschutz zu gewährleisten.

Bei DataSunrise bieten wir außergewöhnliche und flexible Werkzeuge zur Erkennung, Sicherheit, Auditregeln, Maskierung und Compliance sensibler Daten. Unsere Lösungen befähigen Organisationen, ihre sensiblen Daten zu schützen und regulatorische Anforderungen effektiv zu erfüllen. Wir ermutigen Sie, eine Online-Demo zu vereinbaren, um zu erfahren, wie DataSunrise Ihnen helfen kann, Ihre kritischen Datenbestände zu klassifizieren und zu schützen.

Nächste

Datenlokalisierung

Datenlokalisierung

Erfahren Sie mehr

Benötigen Sie die Hilfe unseres Support-Teams?

Unsere Experten beantworten gerne Ihre Fragen.

Allgemeine Informationen:
[email protected]
Kundenservice und technischer Support:
support.datasunrise.com
Partnerschafts- und Allianz-Anfragen:
[email protected]