sql >> Databasteknik >  >> RDS >> Database

Statisk och dynamisk datamaskering i FieldShield

Vanligtvis utförs maskering av statisk data på produktionsdata i vila så att den lagras säkert, eller när den replikeras till icke-produktionsmiljöer för test- eller utvecklingsändamål. Dynamisk datamaskering (DDM) utförs på data i produktionstabeller under frågor, så att de som inte har behörighet att se ursprungliga kolumnvärden kommer att se redigerade vyer av värdena i sin app istället.

Det är välkänt att IRI FieldShield är en statisk datamaskeringsprodukt. Men den kan också användas för att maskera och avmaska ​​data i databaser och platta filer på ett mer dynamiskt sätt. Vi har sett användningsfall som kräver antingen, eller båda, när data i riskzonen är i vila (statisk) eller i rörelse (dynamisk) och behöver skyddas.

DDM via 'redaction in flight' är tillgänglig från IRI genom:API-anropbara maskeringsbibliotek som du kan skapa på en autentiserad, anpassad basis från C, C++, Java eller .NET-applikationer (se SDK här); SQL (procedur) anrop; och snart, en speciell JDBC-drivrutin som hanteras via proxyserver. Den här artikeln tar upp den första metoden för dynamisk un maskering i samband med statisk datamaskering.

För att demonstrera både statisk och dynamisk datamaskering använde vi IRI Workbench, det kostnadsfria grafiska gränssnittet för FieldShield och annan IRI-mjukvara, byggd på Eclipse™. I scenarier för datasäkerhet, efterlevnad och testdata ansluter Workbench-användare till sina källor, utför upptäckt och klassificering och bygger och kör sedan statiska datamaskeringsfunktioner.

Mer specifikt definierar de sina dataklasser och sökkriterier och tillämpar sedan konsekventa maskeringsregler för att skydda dem. Detta hjälper dem att styra sina data bättre och bevara källornas referensintegritet. Och det hjälper dem att följa datasekretesslagar och affärsbehov.

Workbench stöder även re-ID-riskpoäng, databasunderinställningar, testdatagenerering och population och många andra datahanteringsfunktioner aktiverade i IRI Voracity plattformen, som inkluderar FieldShield.

Att vara i Eclipse innebär också att Workbench stöder Java-applikationsutveckling, och därmed dina program som dynamiskt kan maskera eller demaskera data med hjälp av biblioteksfunktioner som är kompatibla med de statiska funktionerna. Återigen är API:et dokumenterat i FieldShield SDK.

Den här artikeln ger ett snabbt exempel på hur du använder FieldShield i Workbench för statisk datamaskering av en databastabell och sedan avmaskerar dessa data dynamiskt i ett Java-program. Allt är konfigurerat i IRI Workbench.

Konfigurera

Först byggde vi och fyllde i en exempeltabell i MySQL med hjälp av SQL-klippboken i plugin-programmet Data Tools Platform (DTP). Vi definierade kolumner för:användarnamn, e-post, tid och kommentarer:

Statisk datamaskering

Vi använde guiden "New Data Masking Job ..." från den övre verktygsfältsmenyn i Workbench för att snabbt skaffa den tabellen och dess metadata, och bygga ett jobb för att statiskt maskera e-postkolumnen med en av AES 256-krypteringsfunktionerna i FieldShield, enc_aes256. I FieldShield-skriptet som guiden skapade kan vi se funktionen som ska tillämpas på kolumnen en gång och sedan på nya rader i tabellen när samma jobb utlöses eller schemalagt att köras igen.

När den har körts kommer tabellen i MySQL-databasen att ha e-postkolumnen krypterad.

Dynamisk datamaskering (av)

För att demonstrera dynamisk dataavmaskering, eller dekryptering i det här fallet, anropade vi motsvarande dekrypteringsfunktion, dec_aes256, i FieldShield API-biblioteket för Java:

Liknande samtal är möjliga från .NET-språk. Denna grundläggande app visar hur man ansluter till MySQL-tabellen, validerar användaren och visar både det statiskt krypterade chiffertextvärdet från tabellen och det dynamiskt dekrypterade ursprungliga e-postvärdet i klartext i konsolen:

Naturligtvis kunde du också ha utfört dekrypteringen tillbaka i Workbench på statiskt sätt med en liknande, fristående FieldShield-uppgift som denna:

Skriptet ovan dekrypterar chiffertextens e-postvärden tillbaka till deras ursprungliga klartext i varje rad i databasen. Utdata kan vara själva källtabellen (för att återställa den), andra mål (t.ex. för testning) eller båda. Flera uppgiftsskript som adresserar maskering eller avmaskering av flera tabeller kan skapas automatiskt via FieldShield-guider i Workbench (och bevara referensintegritet) med eller utan definierade dataklasser.

I det här fallet kan du kontrollera att värdena har dekrypterats till sin ursprungliga form genom att ansluta till din MySQL-databas och välja de fält som du vill se, eller genom att helt enkelt visa tabellen i Workbench. Den dekrypterade vyn är den ursprungliga tabellen:

Summan av kardemumman är att du kan maskera och avmaska ​​data statiskt eller dynamiskt med IRI FieldShield. Använd fristående läge för statiska operationer och API-läge för dynamiskt. Maskeringsfunktionerna är kompatibla och alla lösningar är aktiverade i samma glasruta.

  1. Fler av-/maskeringsfunktioner, plus många andra transformations- och omformateringsfunktioner (via en IRI CoSort- eller Voracity-licens), kan köras mot dessa data i samma jobbskript och I/O-pass .

  1. Kalkylblad kontra databaser:Är det dags att byta? Del 2

  2. Insamlingsmetod:LIMIT-funktion i Oracle Database

  3. Subtrahera år från ett datum i PostgreSQL

  4. Konfigurera SQL Server Log Shipping