Database
 sql >> Datenbank >  >> RDS >> Database

So maskieren Sie Tabellen und erhalten die referenzielle Integrität

Der "Neue Job zum Schutz mehrerer Tabellen …" Der in diesem Artikel beschriebene Assistent in IRI Workbench ist eine der Möglichkeiten, wie Benutzer des IRI FieldShield-Produkts (oder der IRI Voracity-Plattform) personenbezogene Daten (PII) in Datenbankspalten, die Teil einer Fremdschlüsselbeziehung sind, automatisch maskieren und so die referenzielle Integrität bewahren können zwischen den Tischen. Dadurch wird sichergestellt, dass die Datensätze auch nach der Anonymisierung verknüpft bleiben.

Beachten Sie, dass seit 2018 in unserem Artikel über die Klassifizierung, Erkennung und Maskierung mehrerer Datenbanktabellen hier eine neuere und robustere Methode zum Erreichen desselben Ergebnisses veröffentlicht wird und wird hier in den Youtube-Videos 1, 2, 3, 5 und 7 demonstriert.

Aber in diesem originellen und immer noch beliebten Assistenten bewahren Benutzer die referenzielle Integrität, indem sie Maskierungsregeln auf Feldebene definieren, die automatisch und konsistent auf gleichnamige Spalten angewendet werden. Jede der ungefähr 14 Kategorien von Datenmaskierungsfunktionen, die FieldShield-Benutzern zur Verfügung stehen – einschließlich Verschlüsselung, Pseudonymisierung und Schwärzung – kann auf der Grundlage solcher Regeln angewendet werden.

Dieser Assistent eignet sich am besten für Benutzer, die mehrere Tabellen in einem Schema maskieren und zuordnen, die nicht alle PII enthalten. Zum Beispiel würde IRI diesen Assistenten empfehlen, wenn Sie 50 Tabellen haben und alle in eine niedrigere Umgebung verschieben müssen, aber nur 20 der Tabellen haben, die PII enthalten, um konsistent zu maskieren (die anderen 30 haben keine PII).

Dieses Beispiel verwendet nur drei Oracle-Tabellen – Departments, Employees und Job_History – um zu zeigen, wie dieser Assistent funktioniert. Als die Tabellen ursprünglich entworfen wurden, wurde die Sozialversicherungsnummer des Mitarbeiters für seine ID verwendet. Dies stellt ein Sicherheitsrisiko dar, wenn Berichte ausgeführt werden, die das ID-Feld anzeigen.

Das obige E-R-Diagramm für diese Tabellen und die SQL-Abfrage und ihre Ergebnisse unten werden alle in verschiedenen IRI Workbench-GUI für FieldShield-Ansichten angezeigt. Siehe diesen Artikel zu:ERD-Erstellung in IRI Workbench. Die Abfrage verknüpfte Informationen zu Mitarbeitern, Managern und Abteilungen, zeigt jedoch Werte für Sozialversicherungsnummern (SSN) in den Spalten „Employee SID“ und „Manager SID“ an. Siehe diesen Artikel zum Codieren und Ausführen von SQL-Jobs in IRI Workbench.

Verwenden des Multi-Table-Schutzjobs von FieldShield Wizard können diese Felder verschlüsselt (oder anderweitig de-identifiziert) werden, sodass die echten SSNs in den Tabellen und nachfolgenden Abfragen maskiert werden. Die referenzielle Integrität bleibt erhalten, da dieselbe Verschlüsselung auf alle Tabellen mit einer Regel angewendet wird.

Auf der Einrichtungsseite des Assistenten ist ODBC als Ladeprogramm ausgewählt. Die drei oben genannten Tabellen werden auf der Seite Datenextraktion ausgewählt. Die nächste Seite ist die Seite Feldänderungsregeln. Auf dieser Seite können die Regeln entworfen werden, die auf alle ausgewählten extrahierten Tabellen angewendet werden sollen.

Klicken Sie auf Erstellen  öffnet die Seite Field Rule Matcher. Hier werden die Daten des Matchers eingetragen. Beginnen Sie mit der Eingabe eines Matcher-Namens.

Nachdem Sie auf Erstellen  geklickt haben neben Regelname , wird die Auswahlseite des Assistenten für neue Schutzfeldregeln angezeigt. Wählen Sie Verschlüsselungs- oder Entschlüsselungsfunktionen aus . Diese Auswahl stellt sicher, dass für alle Daten derselbe Schutzalgorithmus gilt, wodurch die referenzielle Integrität sichergestellt wird.

Auf der nächsten Seite wird die Art der Verschlüsselung ausgewählt. In diesem Fall  enc_fp_aes256_ascii wird genutzt. Dieser formaterhaltende Verschlüsselungsalgorithmus verwendet den ASCII-Zeichensatz, um die echten Daten zu ersetzen. Es wird in dieser Demonstration verwendet, damit die Verschlüsselung in der Ausgabe erkennbar ist. Eine realistischere Wahl wäre normalerweise das Alphanum  Version, die auch das tatsächliche Erscheinungsbild der SSNs (in diesem Fall 9 Nummern) beibehalten würde.

Obwohl dieses Beispiel eine eingebettete Passphrase verwendet, kann auch eine Passwortdatei als Verschlüsselungsschlüssel verwendet werden, ebenso wie eine Umgebungsvariable.

Klicken Sie auf Fertig stellen wird diese Regel in den Matcher eingeben. Als nächstes muss der Matcher selbst erstellt werden. Klicken Sie auf Hinzufügen  in den Matchern Sektion. Dadurch wird die Seite Field Rule Matcher Details geöffnet. Hier kann entweder ein Muster oder eine Datenklasse verwendet werden. Weitere Informationen zur zweiten Option finden Sie im Artikel Feldregeln mithilfe der Klassifizierung anwenden.

In diesem Beispiel Muster  ausgewählt ist und in den Details .*SID eingetragen ist. Diese Regex wird mit allen Spaltennamen abgeglichen, die auf SID.

enden

Der Matcher endet mit den unten angezeigten Details. Der Test  kann verwendet werden, um die Matcher zu testen, um sicherzustellen, dass sie mit allen beabsichtigten Spalten übereinstimmen. Es können mehrere Matcher-Details eingegeben werden, und es kann eine UND/ODER-Logik verwendet werden, um feinkörnige Matcher zu erzeugen. Beispielsweise gibt es eine zusätzliche Spalte namens VP_SSN . Der gleiche Matcher oben könnte mit einem anderen Matcher mit dem Muster .*SSN verwendet werden   und dem Operator AND  in dieser zusätzlichen Spalte zu finden, aber mit der gleichen Regel.

Klicken Sie auf OK  Hier kehren Sie zur Seite „Regeln“ zurück, auf der jeder Regelabgleicher angezeigt wird. Für unterschiedliche Felder können unterschiedliche Matcher verwendet werden, sodass nur ein Transformationsdurchlauf erforderlich ist, selbst wenn die Regeln unterschiedliche Spalten auf unterschiedliche Weise maskieren würden.

Klicken Sie auf Weiter  zeigt die Seite Datenladephase an. Hier werden die Ausgabetabelle und Optionen ausgewählt. In diesem Beispiel werden dieselben Tabellen wie die Eingabetabellen ausgewählt. Außerdem wird der Ausgabemodus in Erstellen  geändert um die Tabellen vor dem Laden abzuschneiden, damit eindeutige Schlüssel nicht verletzt werden.

Nachdem Sie auf Fertig stellen geklickt haben , wird ein Ordner mit mehreren Skripten erstellt, die mit der enthaltenen Batchdatei ausgeführt werden.

Um zu sehen, wie die Regel das Feld transformiert, und uns die Möglichkeit gibt, Dinge von Hand zu ändern, die SCOTT_EMPLOYEES.fcl Skript kann im Workbench-Editor überprüft werden. In der Ausgabe werden sowohl die EMPLOYEE_SID  und die MANAGER_SID Zeigt den angewendeten Verschlüsselungsalgorithmus an.

Nach dem Ausführen der Batchdatei zeigt dieselbe SQL-Abfrage dieselben verknüpften Ergebnisse, jedoch mit der Employee_SID  und Manager_SID  jetzt verschlüsselt. Darüber hinaus wird die referentielle Integrität gewahrt. Die ursprünglichen Mitarbeiter-Manager-Beziehungen werden beibehalten und die IDs für den Manager in Zeile 2 und den Mitarbeiter in Zeile 26 sind identisch.

Dieses Beispiel zeigt, wie eine Verschlüsselungsregel über mehrere Spalten in mehreren Tabellen hinweg verwendet werden kann, während die referenzielle Integrität beibehalten wird. Alle während der Auftragsassistenten erstellten Regeln werden in einer Regelbibliothek gespeichert. Dadurch können sie wiederverwendet und sogar mit Kollegen geteilt werden, sodass dieselben Ergebnisse mit denselben Daten gewährleistet sind.

Wenn Sie Fragen zu FieldShield-Datenmaskierungsregeln haben oder Hilfe bei der Verwendung eines der Datenerkennungs- oder Maskierungsassistenten benötigen, wenden Sie sich an Ihren IRI-Vertreter.