DataSunrise Maskierung für Oracle
DataSunrise Maskierung für Oracle zielt darauf ab, sensible Daten während der Übertragung vor Bedrohungen durch interne und externe Nutzer zu schützen. Die Funktion obfusziert originale Daten und stellt den Nutzern zufällige Zeichen anstelle der echten Datenbankeinträge zur Verfügung. So können unautorisierte Nutzer immer noch mit der Produktionsdatenbank arbeiten, erhalten jedoch keinen Zugang zu den ursprünglichen sensiblen Informationen.
Oracle-Datenmaskierungswerkzeuge von DataSunrise verhindern effektiv die Offenlegung sensibler Informationen beim Gewähren von Datenbankzugriffen für Drittorganisationen. Es gibt viele Gelegenheiten, bei denen Organisationen Daten aus ihren Produktionsdatenbanken mit Drittmitarbeitern teilen müssen. Hier sind einige Beispiele:
- Eine bestimmte Organisation beauftragt externe IT-Spezialisten, um ihr Geschäftssystem anzupassen oder Datenbanktests, Upgrades usw. durchzuführen.
- Ein Gesundheitsunternehmen stellt medizinischen Forschern Informationen zu klinischen Studien zur Verfügung.
- Ein Einzelhandelsunternehmen teilt Verkaufsinformationen mit Marktforschern.
Der Punkt ist, dass in den meisten Fällen Drittfachleute die echten Daten der Datenbank nicht benötigen. Eine Umgebung, die eine echte Produktionsdatenbank nachahmt, ist ausreichend. Der beste Weg, um sensible Daten beim Transfer an Dritte zu schützen, besteht darin, sie durch neutrale Daten zu ersetzen. Und der effizienteste Weg, dies zu tun, ist die Maskierung.
Wichtig ist, dass maskierte Daten konsistent genug sein müssen, um das ordnungsgemäße Funktionieren der Anwendung der Drittpartei zu unterstützen. Einfach ausgedrückt besteht der Hauptzweck der Maskierung darin, sensible Daten für böse Buben unbrauchbar zu machen, während sie für diejenigen nützlich bleiben, die sie erhalten sollen.
Manchmal wird in solchen Situationen statische Maskierung verwendet. Sie ermöglicht es, der Drittpartei eine eigenständige Kopie einer echten Datenbank zur Verfügung zu stellen, die neutrale Daten anstelle sensibler Daten enthält. Während diese Methode zuverlässig ist, kann sie teuer und zeitaufwendig sein.
Deshalb ist in den meisten Fällen dynamische Datenmaskierung vorzuziehen. Im Gegensatz zur statischen Datenmaskierung geht es bei der dynamischen Datenmaskierung darum, sensible Daten während des Transports an externe Parteien on-the-fly zu obfusizieren. In diesem Fall bleiben die tatsächlichen Datenbankinhalte unangetastet und nur die Datenbankausgabe wird obfusziert.
Wie Oracle Datenmaskierung durchgeführt wird
Das dynamische Maskierungstool von DataSunrise fungiert als Proxy zwischen den Clients (den Drittfachleuten) und Ihrer Oracle-Datenbank. Clients kontaktieren die Produktionsdatenbank ausschließlich über den DataSunrise-Proxy (direkter Zugriff auf die Datenbank ist deaktiviert).
Das Oracle-Datenmaskierungswerkzeug fängt die Clientanfrage ab, ändert sie gemäß den bestehenden Sicherheitsrichtlinien und leitet die modifizierte („maskierte“) Anfrage an die Datenbank weiter. Nachdem die Datenbank eine „maskierte“ Anfrage erhalten hat, gibt sie anstelle der ursprünglich vom Client angeforderten echten Werte gefälschte (obfuskierte) Daten aus. Da keine echten Daten die Datenbank verlassen, ist diese Methode der Datenobfuskation sehr zuverlässig.
So sieht das aus

Wir haben hier beispielsweise eine Oracle-Tabelle, die einer Kundenliste mit Adressen, E-Mails und Kreditkartennummern ähnelt. Bevor wir diese Liste in ein Drittsystem exportieren, müssen wir die persönlichen Daten der Kunden obfuskieren.
Zu diesem Zweck wurden einige Maskierungsregeln erstellt. Neben allgemeinen Maskierungsmustern stellt DataSunrise Obfuskationsalgorithmen für E-Mails und Kreditkartennummern zur Verfügung. Wir haben also einige Maskierungsregeln erstellt, um Daten in Spalten zu obfuskieren, die Kreditkartennummern und E-Mail-Adressen der Kunden enthalten. Angenommen, es ist akzeptabel, andere Spalten unmaskiert zu lassen.

Und so sieht die Tabelle nach der Anwendung der Maskierung aus. Wie Sie sehen können, wurden die Daten in den angegebenen Spalten obfuskiert und sind somit für potenzielle Übeltäter nutzlos geworden.
Interna der Oracle Datenmaskierung
Schauen wir uns nun an, wie die Maskierung in SQL aussieht.
Hier ist die ursprüngliche Clientanfrage:
/* + NO_PARALLEL */
SELECT ROWID "ROWID",
ORA_ROWSCN "ORA_ROWSCN",
ORDERNUMBER ORDERNUMBER,
FIRSTNAME FIRSTNAME,
LASTNAME LASTNAME,
ADDRESS ADDRESS,
ZIP ZIP,
EMAIL EMAIL,
CARD CARD
FROM "SALES"."CUSTOMERS"
Und die SQL-Anfrage, die die Datenbank erhält, nachdem die Maskierung angewendet wurde:
/* + NO_PARALLEL */
SELECT ROWID "ROWID",
ORA_ROWSCN "ORA_ROWSCN",
ORDERNUMBER ORDERNUMBER,
FIRSTNAME FIRSTNAME,
LASTNAME LASTNAME,
ADDRESS ADDRESS,
ZIP ZIP,
CAST(regexp_replace(SUBSTR("EMAIL", 0, REGEXP_INSTR("EMAIL",
'.[[:alnum:]]+($| )')), '[[:alnum:]]', '*') ||
SUBSTR("EMAIL", REGEXP_INSTR("EMAIL",
'.[[:alnum:]]+($| )') + 1) AS VARCHAR2(50)) EMAIL,
CAST(TRANSLATE(SUBSTR("CARD", 0, LENGTH(TRIM("CARD")) - 4),
'0123456789', 'XXXXXXXXXX') ||
SUBSTR("CARD", LENGTH(TRIM("CARD")) - 3) AS VARCHAR2(20))
CARD FROM "SALES"."CUSTOMERS"


