{"id":16785,"date":"2024-01-04T02:24:56","date_gmt":"2024-01-04T07:24:56","guid":{"rendered":"https:\/\/www.iri.com\/blog\/?p=16785"},"modified":"2024-01-04T21:14:18","modified_gmt":"2024-01-05T02:14:18","slug":"finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard","status":"publish","type":"post","link":"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/","title":{"rendered":"Masking RDB Data in the DarkShield GUI"},"content":{"rendered":"<p><i><span style=\"font-weight: 400;\"><strong>Editor&#8217;s Note: <\/strong>This article is part of a series of articles on using DarkShield to search and mask sensitive data in relational databases. This new support for RDB sources in DarkShield can augment or replace <a href=\"https:\/\/www.iri.com\/products\/fieldshield\">IRI FieldShield<\/a> support for the same data classes, locational searches and masking functions <a href=\"https:\/\/www.iri.com\/company\/faqs\/190\">for certain use cases<\/a>.<\/span><\/i><\/p>\n<h5><b>Introduction<\/b><\/h5>\n<p><span style=\"font-weight: 400;\">The <\/span><a href=\"https:\/\/www.iri.com\/products\/darkshield\"><span style=\"font-weight: 400;\">IRI DarkShield<\/span><\/a><span style=\"font-weight: 400;\"> data masking product now includes fit-for-purpose wizards in the <\/span><a href=\"https:\/\/www.iri.com\/products\/workbench\/darkshield-gui\"><span style=\"font-weight: 400;\">IRI Workbench<\/span><\/a><span style=\"font-weight: 400;\"> IDE to search (classify) and mask (remediate) sensitive \u201ddark data\u201d (as defined by Gartner) in many semi, unstructured, and structured file, NoSQL, and relational database (RDB) sources. The focus of this article is on RDBs; DarkShield can support any RDB with a JDBC driver connection.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The diagram below summarizes DarkShield architecture; the wizard this article explains is inside Workbench:<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-16896\" src=\"\/blog\/wp-content\/uploads\/2024\/01\/DarkShield-V5-Architecture-1-244x300.png\" alt=\"\" width=\"398\" height=\"489\" srcset=\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/DarkShield-V5-Architecture-1-244x300.png 244w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/DarkShield-V5-Architecture-1.png 832w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/DarkShield-V5-Architecture-1-768x946.png 768w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/DarkShield-V5-Architecture-1-1248x1536.png 1248w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/DarkShield-V5-Architecture-1-1663x2048.png 1663w\" sizes=\"(max-width: 398px) 100vw, 398px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">Although not discussed in this article, DarkShield also includes wizards for other sources, like the <\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-files-with-the-darkshield-files-wizard\/\"><i><span style=\"font-weight: 400;\">New File Search\/Masking Job<\/span><\/i><\/a><i><span style=\"font-weight: 400;\"> \u2026 <\/span><\/i><span style=\"font-weight: 400;\">wizard for sensitive data in files, and the <\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/finding-and-masking-nosql-dbs-with-the-darkshield-gui\"><i><span style=\"font-weight: 400;\">New NoSQL DB Search\/Masking Job<\/span><\/i><\/a><i><span style=\"font-weight: 400;\">\u2026 <\/span><\/i><span style=\"font-weight: 400;\">wizard for sensitive data in a NoSQL database.<\/span><\/p>\n<h5><b>What the DarkShield Relational DB Wizard Does<\/b><\/h5>\n<p><span style=\"font-weight: 400;\">The \u201c<\/span><i><span style=\"font-weight: 400;\">New Relational DB Search\/Masking Job \u2026<\/span><\/i><span style=\"font-weight: 400;\">\u201d wizard in the IRI Workbench GUI for DarkShield helps you create a DarkShield Job (.dsc file) with the Search and Mask Contexts applicable to your job.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Search Contexts contain instructions on how to access an RDB instance and search for PII. Mask Contexts contain instructions on masking the PII found during the search operations, and how to access the target RDB where the masked version of data will be sent.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The scanning and remediation of data stored in RDBs is based on the Data Classes you defined and stored in an <\/span><i><span style=\"font-weight: 400;\">IRI Data Class and Rule Library<\/span><\/i><span style=\"font-weight: 400;\">. Each Data Class contains one or more search methods called Search Matchers used to identify PII.\u00a0\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The previous iterations of the wizard only supported scanning and extracting sensitive values that matched Java RegEx patterns and Set File lookups. Today\u2019s wizard supports more search methods and of course simultaneous or separate masking operations, for DarkShield or Voracity users.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">For more information on the various search methods available read about <\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/data-matchers\/\"><span style=\"font-weight: 400;\">Data Matchers<\/span><\/a><span style=\"font-weight: 400;\"> and <\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/location-matchers\/\"><span style=\"font-weight: 400;\">Location Matchers<\/span><\/a><span style=\"font-weight: 400;\">.<\/span><\/p>\n<h5><b>Prerequisites<\/b><span style=\"font-weight: 400;\"><br \/>\n<\/span><\/h5>\n<p><span style=\"font-weight: 400;\">Before launching the DarkShield RDB wizard ensure these preliminary steps are completed:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">First, verify that the DarkShield API distribution directory has been specified in <\/span><i><span style=\"font-weight: 400;\">IRI Workbench <img loading=\"lazy\" decoding=\"async\" class=\"\" title=\"\" src=\"https:\/\/lh7-us.googleusercontent.com\/704t8D-zFuQ4LI71z73tIzRni-mNaRr-cS5hepMJG9IFydYVMyqilXb4wmc-n_Iw0uF_dGk8FGb3nlhuIsDm66hU4mVPF-jD6mY85BLkFdSpfJ-Ds_zpGiv1wY3vtncoQXxXmajEiLobaHEPn1B6qt4\" alt=\"\" width=\"29\" height=\"28\" \/><\/span><\/i><i><span style=\"font-weight: 400;\">Preferences &gt; IRI &gt; DarkShield<\/span><\/i><span style=\"font-weight: 400;\">. From here you can configure DarkShield GUI and API preferences including the host, port, and directory where the DarkShield API resides.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-16897\" src=\"\/blog\/wp-content\/uploads\/2024\/01\/DarkShield-GUI-and-API-preferences-300x235.png\" alt=\"\" width=\"564\" height=\"442\" srcset=\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/DarkShield-GUI-and-API-preferences-300x235.png 300w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/DarkShield-GUI-and-API-preferences-768x601.png 768w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/DarkShield-GUI-and-API-preferences.png 805w\" sizes=\"(max-width: 564px) 100vw, 564px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">If the DarkShield API distribution (Plankton) has not been specified in Preferences or your DarkShield Job will be using a different DarkShield API distribution,\u00a0 you will need to manually place JDBC driver(s) associated with the database silo(s) inside the <\/span><i><span style=\"font-weight: 400;\">lib <\/span><\/i><span style=\"font-weight: 400;\">folder of the DarkShield API distribution that will be used.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-16899\" src=\"\/blog\/wp-content\/uploads\/2024\/01\/lib-folder-DarkShield-300x162.jpg\" alt=\"\" width=\"613\" height=\"331\" srcset=\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/lib-folder-DarkShield-300x162.jpg 300w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/lib-folder-DarkShield.jpg 715w\" sizes=\"(max-width: 613px) 100vw, 613px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">Second, all DarkShield Wizards require a project possessing an IRI Data Class and Rule Library. The IRI Library in turn should contain at least one Data Class and a (masking) Rule that can be assigned to that Data Class. To learn more about IRI Data Class and Rule Library and creating Data Classes and Rules read this <\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/iri-data-classification\/\"><span style=\"font-weight: 400;\">article<\/span><\/a><span style=\"font-weight: 400;\">.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-16900 size-full\" src=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/01\/IRI-Project-containing-IRI-Library.-e1704350734847.png\" alt=\"\" width=\"164\" height=\"119\" \/><\/p>\n<p style=\"text-align: center;\"><i><span style=\"font-weight: 400;\">IRI Project containing IRI Library.<\/span><\/i><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-16901\" src=\"\/blog\/wp-content\/uploads\/2024\/01\/IRI-Data-Class-and-Rules-Library-Form-Editor-300x87.png\" alt=\"\" width=\"735\" height=\"213\" srcset=\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/IRI-Data-Class-and-Rules-Library-Form-Editor-300x87.png 300w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/IRI-Data-Class-and-Rules-Library-Form-Editor-1024x297.png 1024w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/IRI-Data-Class-and-Rules-Library-Form-Editor-768x222.png 768w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/IRI-Data-Class-and-Rules-Library-Form-Editor.png 1053w\" sizes=\"(max-width: 735px) 100vw, 735px\" \/><\/p>\n<p style=\"text-align: center;\"><i><span style=\"font-weight: 400;\">IRI Data Class and Rules Library Form Editor contains some Data Classes and Rules.<\/span><\/i><\/p>\n<p><span style=\"font-weight: 400;\">Fourth, verify that the Plankton (DarkShield\u00a0 API) server is running. This can be done by opening the DarkShield API Status view. This view displays information about the DarkShield API, including whether it is currently running.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-16902\" style=\"text-align: start;\" src=\"\/blog\/wp-content\/uploads\/2024\/01\/DS-API-status-300x116.png\" alt=\"\" width=\"603\" height=\"233\" srcset=\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/DS-API-status-300x116.png 300w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/DS-API-status-768x296.png 768w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/DS-API-status.png 775w\" sizes=\"(max-width: 603px) 100vw, 603px\" \/><\/p>\n<p style=\"text-align: center;\"><i><span style=\"font-weight: 400;\">DarkShield API Status view panel<\/span><\/i><\/p>\n<p><span style=\"font-weight: 400;\">Finally, the Data Source Explorer in IRI Workbench should contain data connection profiles for both the RDB source and target silos. The destination silo must also contain an existing schema.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Tables in the target schema <\/span><span style=\"font-weight: 400;\">will attempt to be populated automatically, but the attempted derivation of a create table statement to use is not guaranteed to be correct. If a table cannot successfully be automatically created when a DarkShield job is run, then it needs to be created beforehand.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Note that if a data source connection profile does not exist, it must be created in the later steps of the DarkShield RDB wizard. To see an example of how to create a data source connection profile in Workbench, see the JDBC section in <\/span><a href=\"https:\/\/www.iri.com\/blog\/iri\/iri-workbench\/connecting-ms-sql-iri-workbench\/\"><span style=\"font-weight: 400;\">this article<\/span><\/a><span style=\"font-weight: 400;\">.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-16903\" src=\"\/blog\/wp-content\/uploads\/2024\/01\/Screenshot-2023-07-11-143657.png\" alt=\"\" width=\"297\" height=\"160\" \/><\/p>\n<p><span style=\"font-weight: 400;\">For this demonstration, I will be searching a table called DARKSHIELD inside a schema called IRI. The DARKSHIELD table contains a combination of columnar values, free-floating text, and binary.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-16905\" src=\"\/blog\/wp-content\/uploads\/2024\/01\/Screenshot-2023-07-11-151725-293x300.png\" alt=\"\" width=\"352\" height=\"360\" srcset=\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Screenshot-2023-07-11-151725-293x300.png 293w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Screenshot-2023-07-11-151725.png 387w\" sizes=\"(max-width: 352px) 100vw, 352px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">I will write the masked data to an empty table called DARKSHIELD inside the schema MASKED. The DARKSHIELD table contains identical columns from the same-named table in the IRI schema.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-16906\" src=\"\/blog\/wp-content\/uploads\/2024\/01\/Screenshot-2023-07-12-121955-300x263.png\" alt=\"\" width=\"371\" height=\"325\" srcset=\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Screenshot-2023-07-12-121955-300x263.png 300w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Screenshot-2023-07-12-121955.png 402w\" sizes=\"(max-width: 371px) 100vw, 371px\" \/><\/p>\n<h5><b>Using the Wizard<\/b><\/h5>\n<p><span style=\"font-weight: 400;\">In this article, I will demonstrate the use of the <\/span><i><span style=\"font-weight: 400;\">New Relational DB Search\/Masking Job<\/span><\/i><span style=\"font-weight: 400;\">\u2026 wizard to create a DarkShield RDB Job.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-16907\" src=\"\/blog\/wp-content\/uploads\/2024\/01\/Screenshot-2023-07-11-132426-300x119.png\" alt=\"\" width=\"499\" height=\"198\" srcset=\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Screenshot-2023-07-11-132426-300x119.png 300w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Screenshot-2023-07-11-132426.png 541w\" sizes=\"(max-width: 499px) 100vw, 499px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">To open the wizard, <\/span><span style=\"font-weight: 400;\">\u00a0select the DarkShield menu <\/span><span style=\"font-weight: 400;\">dropdown and select the <\/span><i><span style=\"font-weight: 400;\">New Relational DB\u00a0 Search\/Masking Job<\/span><\/i><span style=\"font-weight: 400;\">\u2026 wizard. This brings up the first page where you can name the new job:<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-16908\" src=\"\/blog\/wp-content\/uploads\/2024\/01\/Screenshot-2023-07-11-132813-300x252.png\" alt=\"\" width=\"465\" height=\"390\" srcset=\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Screenshot-2023-07-11-132813-300x252.png 300w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Screenshot-2023-07-11-132813.png 526w\" sizes=\"(max-width: 465px) 100vw, 465px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">Here you will also specify the folder and file names for the output of the wizard.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Click <\/span><i><span style=\"font-weight: 400;\">Next<\/span><\/i><span style=\"font-weight: 400;\"> when finished to move on to the specifics of the data you are trying to find \u2014 and how it should be masked.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-16909\" src=\"\/blog\/wp-content\/uploads\/2024\/01\/RDB-demo-masked-300x284.png\" alt=\"\" width=\"480\" height=\"454\" srcset=\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/RDB-demo-masked-300x284.png 300w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/RDB-demo-masked.png 534w\" sizes=\"(max-width: 480px) 100vw, 480px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">Here is where you specify an IRI Data Class and Rule Library containing your desired Data Classes, Data Class Groups, and Rules. It is possible to filter the Data Classes and Groups from the library by selecting or deselecting Data Classes in the <\/span><i><span style=\"font-weight: 400;\">Active<\/span><\/i><span style=\"font-weight: 400;\"> column. In this example, I am using the default Data Classes provided when creating an IRI Project.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-16910\" src=\"\/blog\/wp-content\/uploads\/2024\/01\/default-Data-Classes-300x284.png\" alt=\"\" width=\"478\" height=\"453\" srcset=\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/default-Data-Classes-300x284.png 300w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/default-Data-Classes.png 532w\" sizes=\"(max-width: 478px) 100vw, 478px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">In the Masking Rules tab, we can see that two functions are available: a Format Preserving Encryption Rule and a Blur Date Rule. These rules dictate how PII found using Data Classes will be masked. It is also possible to add or remove Masking Rules from this tab.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Click <\/span><i><span style=\"font-weight: 400;\">Next<\/span><\/i><span style=\"font-weight: 400;\"> when finished to move onto the page that will allow you to assign these Masking Rules to specific Data Classes.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-16911\" src=\"\/blog\/wp-content\/uploads\/2024\/01\/Masking-Rules-to-specific-Data-Classes-300x285.png\" alt=\"\" width=\"488\" height=\"464\" srcset=\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Masking-Rules-to-specific-Data-Classes-300x285.png 300w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Masking-Rules-to-specific-Data-Classes.png 534w\" sizes=\"(max-width: 488px) 100vw, 488px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">On the <\/span><i><span style=\"font-weight: 400;\">Assign Masking Rules to Data Classes<\/span><\/i><span style=\"font-weight: 400;\"> wizard page, each Data Class and Data Class Group must be assigned a Masking Rule to indicate how PII will be masked. If you do not wish to mask a particular PII data type, click <\/span><i><span style=\"font-weight: 400;\">Back <\/span><\/i><span style=\"font-weight: 400;\">and deselect the applicable Active checkbox in the Data Class or Data Class Group tab. Then return to this page and finish assigning rules to your data classes.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Once finished, click <\/span><i><span style=\"font-weight: 400;\">Next<\/span><\/i><span style=\"font-weight: 400;\"> to begin specifying the RDB silo that will be searched and masked.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-16912\" src=\"\/blog\/wp-content\/uploads\/2024\/01\/select-source-schema-300x252.png\" alt=\"\" width=\"483\" height=\"406\" srcset=\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/select-source-schema-300x252.png 300w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/select-source-schema.png 527w\" sizes=\"(max-width: 483px) 100vw, 483px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">On this page, choose the <\/span><i><span style=\"font-weight: 400;\">Connection profile<\/span><\/i><span style=\"font-weight: 400;\"> associated with the database that you intend to scan from the dropdown menu. You can also create a new connection profile by clicking <\/span><i><span style=\"font-weight: 400;\">New Profile<\/span><\/i><span style=\"font-weight: 400;\"> and following the steps.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">When a connection profile has been chosen, select the name of the schema that will be accessed in the dropdown menu inside the form field <\/span><i><span style=\"font-weight: 400;\">Schema name<\/span><\/i><span style=\"font-weight: 400;\">. Unlike FieldShield, DarkShield RDB jobs will handle only one schema at a time. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">The<\/span><b> [Include] <\/b><span style=\"font-weight: 400;\">pattern option involves specifying a Java regular expression that defines what tables to <\/span><i><span style=\"font-weight: 400;\">include<\/span><\/i><span style=\"font-weight: 400;\"> in the DarkShield search or masking job in the schema selected. Any table names in the source schema that do not match the <em>I<\/em><\/span><i><span style=\"font-weight: 400;\">nclude<\/span><\/i><span style=\"font-weight: 400;\"> pattern will be ignored at runtime.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The <\/span><b>[Exclude<\/b><span style=\"font-weight: 400;\">] pattern option is for specifying a Java regular expression that defines what tables to <\/span><i><span style=\"font-weight: 400;\">exclude<\/span><\/i><span style=\"font-weight: 400;\"> in a search or masking job on the schema selected. Any table names in the source schema that match the <\/span><i><span style=\"font-weight: 400;\">exclude<\/span><\/i><span style=\"font-weight: 400;\"> pattern will not be included in the job.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The <\/span><b>[Fetch Size] <\/b><span style=\"font-weight: 400;\">option<\/span> <span style=\"font-weight: 400;\">defines the number of rows of a table to be processed in a single batch. The default value is 1024 rows. Generally, a smaller fetch size will reduce performance, but use less memory. After a certain point (approximately 1024 rows), there is usually minimal improvement in performance (i.e. time to run a job) compared to the amount of memory used.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The<\/span><b> [Row Limit] <\/b><span style=\"font-weight: 400;\">option limits the maximum number of rows processed (searched and\/or masked) in each table.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Once satisfied with the source schema selection click <\/span><i><span style=\"font-weight: 400;\">Next<\/span><\/i><span style=\"font-weight: 400;\"> to optionally filter data to search or mask by their JDBC-defined data type. <\/span><span style=\"font-weight: 400;\">A list of <\/span><a href=\"https:\/\/docs.oracle.com\/javase\/8\/docs\/technotes\/guides\/jdbc\/\"><span style=\"font-weight: 400;\">JDBC <\/span><\/a><span style=\"font-weight: 400;\">data types can be selected from the JDBC Data Type Selection page to filter the scope of searching to only columns of the data types selected.\u00a0<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-16913\" src=\"\/blog\/wp-content\/uploads\/2024\/01\/Screenshot-2023-07-11-155048-300x253.png\" alt=\"\" width=\"450\" height=\"380\" srcset=\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Screenshot-2023-07-11-155048-300x253.png 300w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Screenshot-2023-07-11-155048.png 525w\" sizes=\"(max-width: 450px) 100vw, 450px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">By default, all JDBC types are set to true. DarkShield will not search or mask any types you uncheck. Narrowing your job scope in this way can improve DarkShield\u2019s overall performance.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">For example, you may have binary columns containing files that may or may not contain sensitive data but your data governance team has decided those files are not required and will be purged from the database. Being able to filter out the LONGVARBINARY type will improve DarkShield\u2019s speed.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Once you are finished filtering your input, click <\/span><i><span style=\"font-weight: 400;\">Next<\/span><\/i><span style=\"font-weight: 400;\"> to move on to the Target Schema page where you will specify the destination for the masked content. Note that if your source and destination are the same, your original data will be overwritten!<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-16914\" src=\"\/blog\/wp-content\/uploads\/2024\/01\/target-schema-300x285.png\" alt=\"\" width=\"467\" height=\"444\" srcset=\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/target-schema-300x285.png 300w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/target-schema.png 533w\" sizes=\"(max-width: 467px) 100vw, 467px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">Any driver properties in the connection profiles used for source and target databases are passed through to the DarkShield API.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">For the target of the operation, select a database from the list of connection profiles, then select an available schema in that database. Optionally, specify whether foreign keys will attempt to be automatically disabled in the target schema when running a DarkShield job. Any foreign keys that were disabled when running a DarkShield job will be automatically reenabled before the completion of the DarkShield job. This option will only have any effect when the target schema is in a SQL Server, MySQL, Oracle, PostgreSQL, or DB2 database.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Tables will attempt to be generated automatically based on the DDL of the source; however, this may fail if the target database is different from the source database due to differences in DDL between different databases.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">If there are existing tables in the database with the same name as tables being processed in the source, any data in those tables will be truncated at the start of a DarkShield job before data is inserted. If the target is the same as the source, then data will be updated as the job runs<\/span><span style=\"font-weight: 400;\">.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Click <\/span><i><span style=\"font-weight: 400;\">Finish<\/span><\/i><span style=\"font-weight: 400;\"> to generate your DarkShield Job file with the extension .dsc.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-16915\" src=\"\/blog\/wp-content\/uploads\/2024\/01\/Project-containing-RDB-.dsc-file.png\" alt=\"\" width=\"217\" height=\"224\" \/><\/p>\n<p style=\"text-align: center;\"><i><span style=\"font-weight: 400;\">Project containing RDB .dsc file<\/span><\/i><\/p>\n<h5><b>DarkShield Job Editor<\/b><\/h5>\n<p><span style=\"font-weight: 400;\">Every .dsc file can be viewed from a DarkShield Job editor. This editor allows you to modify your DarkShield job parameters after you completed the steps of the DarkShield RDB Wizard; e.g.,<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-16916\" src=\"\/blog\/wp-content\/uploads\/2024\/01\/Screenshot-2023-07-11-162210-300x249.png\" alt=\"\" width=\"590\" height=\"490\" srcset=\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Screenshot-2023-07-11-162210-300x249.png 300w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Screenshot-2023-07-11-162210-768x639.png 768w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Screenshot-2023-07-11-162210.png 777w\" sizes=\"(max-width: 590px) 100vw, 590px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">You can add, edit, or remove a source and\/or target from your .dsc file as desired by clicking the <\/span><i><span style=\"font-weight: 400;\">Edit\u2026<\/span><\/i><span style=\"font-weight: 400;\"> button alongside the source or target.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">From the editor, you can also modify your Data Class Rule Mappings by clicking the Modify button. It is also possible to choose a different IRI Library and\/or rearrange the Masking Rules assigned to your Data Classes.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Finally, the editor also provides a preview option that allows you to test your Data Class search matchers and Masking Rules using text input. By clicking <\/span><i><span style=\"font-weight: 400;\">Preview<\/span><\/i><span style=\"font-weight: 400;\">, you can see what PII was found and how it was transformed using the current Data Classes and Masking Rules.<\/span><\/p>\n<h5><b>Running You Search and Masking Jobs<\/b><\/h5>\n<p><span style=\"font-weight: 400;\">You can use your DarkShield job configuration in three different ways; i.e., in a:<\/span><\/p>\n<ol>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Search Job to simply identify PII and log the results to file. Be aware of search results logged to file (.*annotations.json) from a search job, which may contain PII found in your data source(s). DarkShield (Base) and File API will save JSON files in your workspace but DarkShield NoSQL and RDB API will store search results in the directory specified in DarkShield API configuration file.;<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Masking Job that will use the search log to mask the discovered PII; or,<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Search <\/span><i><span style=\"font-weight: 400;\">and <\/span><\/i><span style=\"font-weight: 400;\">Masking Job to search and mask PII in one job.\u00a0<\/span><\/li>\n<\/ol>\n<p><span style=\"font-weight: 400;\">In this demonstration, we will be running a DarkShield Search and Mask Job. To run a DarkShield Search and Mask Job right, click the .dsc file and select<\/span><i><span style=\"font-weight: 400;\"> IRI &gt; Run Search and Masking Job<\/span><\/i><span style=\"font-weight: 400;\">.\u00a0<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-16917\" src=\"\/blog\/wp-content\/uploads\/2024\/01\/Screenshot-2023-07-11-162529-300x295.png\" alt=\"\" width=\"586\" height=\"576\" srcset=\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Screenshot-2023-07-11-162529-300x295.png 300w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Screenshot-2023-07-11-162529-70x70.png 70w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Screenshot-2023-07-11-162529.png 733w\" sizes=\"(max-width: 586px) 100vw, 586px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">After running a Search and Masking Job, the PII data found will be masked and placed in the target silo you previously specified.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Following is an example of my source and target tables, showing their mix of structured and unstructured data before and after a DarkShield search and masking operation:<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-16918\" src=\"\/blog\/wp-content\/uploads\/2024\/01\/Table-DARKSHIELD-from-IRI-schema-300x60.png\" alt=\"\" width=\"695\" height=\"139\" srcset=\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Table-DARKSHIELD-from-IRI-schema-300x60.png 300w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Table-DARKSHIELD-from-IRI-schema-768x154.png 768w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Table-DARKSHIELD-from-IRI-schema.png 900w\" sizes=\"(max-width: 695px) 100vw, 695px\" \/><\/p>\n<p style=\"text-align: center;\"><i><span style=\"font-weight: 400;\">Table DARKSHIELD from IRI schema containing various PII and binary inside the PDF column<\/span><\/i><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-16919\" src=\"\/blog\/wp-content\/uploads\/2024\/01\/Binary-in-PDF-column-converted-to-PDF-with-unprotected-PII-270x300.png\" alt=\"\" width=\"515\" height=\"572\" srcset=\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Binary-in-PDF-column-converted-to-PDF-with-unprotected-PII-270x300.png 270w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Binary-in-PDF-column-converted-to-PDF-with-unprotected-PII-768x854.png 768w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Binary-in-PDF-column-converted-to-PDF-with-unprotected-PII.png 817w\" sizes=\"(max-width: 515px) 100vw, 515px\" \/><\/p>\n<p style=\"text-align: center;\"><i><span style=\"font-weight: 400;\">Binary in PDF column converted to PDF with unprotected PII<\/span><\/i><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-16920\" src=\"\/blog\/wp-content\/uploads\/2024\/01\/table-DS-from-masked-schema-300x62.png\" alt=\"\" width=\"725\" height=\"150\" srcset=\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/table-DS-from-masked-schema-300x62.png 300w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/table-DS-from-masked-schema-768x159.png 768w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/table-DS-from-masked-schema.png 879w\" sizes=\"(max-width: 725px) 100vw, 725px\" \/><\/p>\n<p style=\"text-align: center;\"><i><span style=\"font-weight: 400;\">Table DARKSHIELD from MASKED schema containing various PII and binary inside the PDF column<\/span><\/i><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-16921\" src=\"\/blog\/wp-content\/uploads\/2024\/01\/Binary-in-PDF-column-converted-to-PDF-with-PII-protected-1-281x300.png\" alt=\"\" width=\"529\" height=\"565\" srcset=\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Binary-in-PDF-column-converted-to-PDF-with-PII-protected-1-281x300.png 281w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Binary-in-PDF-column-converted-to-PDF-with-PII-protected-1-768x820.png 768w, https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Binary-in-PDF-column-converted-to-PDF-with-PII-protected-1.png 826w\" sizes=\"(max-width: 529px) 100vw, 529px\" \/><\/p>\n<p style=\"text-align: center;\"><i><span style=\"font-weight: 400;\">Binary in PDF column converted to PDF with PII-protected<\/span><\/i><\/p>\n<p><span style=\"font-weight: 400;\">If you would like help using this wizard to scan and\/or mask data in your relational database \u2013 or with any other data source(s) \u2013 please contact your IRI <\/span><a href=\"https:\/\/www.iri.com\/partners\/resellers\"><span style=\"font-weight: 400;\">representative<\/span><\/a><span style=\"font-weight: 400;\"> or email <\/span><a href=\"mailto:darkshield@iri.com\"><span style=\"font-weight: 400;\">darkshield@iri.com<\/span><\/a><span style=\"font-weight: 400;\">.<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Editor&#8217;s Note: This article is part of a series of articles on using DarkShield to search and mask sensitive data in relational databases. This new support for RDB sources in DarkShield can augment or replace IRI FieldShield support for the same data classes, locational searches and masking functions for certain use cases. Introduction The IRI<\/p>\n<div><a class=\"btn-filled btn\" href=\"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/\" title=\"Masking RDB Data in the DarkShield GUI\">Read More<\/a><\/div>\n","protected":false},"author":152,"featured_media":16893,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"footnotes":""},"categories":[8,91,29],"tags":[1718,1388,1719,1724,1121],"class_list":["post-16785","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-data-protection","category-iri-workbench","category-test-data","tag-finding-pii","tag-iri-darkshield","tag-masking-pii","tag-rdb-wizard","tag-relational-database"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v23.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Masking RDB Data in the DarkShield GUI - IRI<\/title>\n<meta name=\"description\" content=\"This is the third article in a series of articles focusing on using DarkShield to search and mask sensitive data in relational databases. IRI DarkShield data masking product now includes fit-for-purpose wizards in the IRI Workbench IDE to search (classify) and mask (remediate) sensitive \u201ddark data\u201d (as defined by Gartner) in many semi, unstructured, and structured file, NoSQL, and relational database (RDB) sources. The focus of this article is on RDBs; DarkShield can support any RDB with a JDBC driver connection.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Masking RDB Data in the DarkShield GUI - IRI\" \/>\n<meta property=\"og:description\" content=\"This is the third article in a series of articles focusing on using DarkShield to search and mask sensitive data in relational databases. IRI DarkShield data masking product now includes fit-for-purpose wizards in the IRI Workbench IDE to search (classify) and mask (remediate) sensitive \u201ddark data\u201d (as defined by Gartner) in many semi, unstructured, and structured file, NoSQL, and relational database (RDB) sources. The focus of this article is on RDBs; DarkShield can support any RDB with a JDBC driver connection.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/\" \/>\n<meta property=\"og:site_name\" content=\"IRI\" \/>\n<meta property=\"article:published_time\" content=\"2024-01-04T07:24:56+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-01-05T02:14:18+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Finding-masking-PII-RDB-wizard-featured-image.png\" \/>\n\t<meta property=\"og:image:width\" content=\"768\" \/>\n\t<meta property=\"og:image:height\" content=\"368\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Adam Lewis\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Adam Lewis\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"10 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/\"},\"author\":{\"name\":\"Adam Lewis\",\"@id\":\"https:\/\/beta.iri.com\/blog\/#\/schema\/person\/37c0e5beab094bd61cc521902df2876e\"},\"headline\":\"Masking RDB Data in the DarkShield GUI\",\"datePublished\":\"2024-01-04T07:24:56+00:00\",\"dateModified\":\"2024-01-05T02:14:18+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/\"},\"wordCount\":2155,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/beta.iri.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Finding-masking-PII-RDB-wizard-featured-image.png\",\"keywords\":[\"finding pii\",\"IRI DarkShield\",\"masking pii\",\"RDB Wizard\",\"relational database\"],\"articleSection\":[\"Data Masking\/Protection\",\"IRI Workbench\",\"Test Data\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/\",\"url\":\"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/\",\"name\":\"Masking RDB Data in the DarkShield GUI - IRI\",\"isPartOf\":{\"@id\":\"https:\/\/beta.iri.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Finding-masking-PII-RDB-wizard-featured-image.png\",\"datePublished\":\"2024-01-04T07:24:56+00:00\",\"dateModified\":\"2024-01-05T02:14:18+00:00\",\"description\":\"This is the third article in a series of articles focusing on using DarkShield to search and mask sensitive data in relational databases. IRI DarkShield data masking product now includes fit-for-purpose wizards in the IRI Workbench IDE to search (classify) and mask (remediate) sensitive \u201ddark data\u201d (as defined by Gartner) in many semi, unstructured, and structured file, NoSQL, and relational database (RDB) sources. The focus of this article is on RDBs; DarkShield can support any RDB with a JDBC driver connection.\",\"breadcrumb\":{\"@id\":\"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/#primaryimage\",\"url\":\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Finding-masking-PII-RDB-wizard-featured-image.png\",\"contentUrl\":\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Finding-masking-PII-RDB-wizard-featured-image.png\",\"width\":768,\"height\":368},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/beta.iri.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Masking RDB Data in the DarkShield GUI\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/beta.iri.com\/blog\/#website\",\"url\":\"https:\/\/beta.iri.com\/blog\/\",\"name\":\"IRI\",\"description\":\"Total Data Management Blog\",\"publisher\":{\"@id\":\"https:\/\/beta.iri.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/beta.iri.com\/blog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/beta.iri.com\/blog\/#organization\",\"name\":\"IRI\",\"url\":\"https:\/\/beta.iri.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/beta.iri.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png\",\"contentUrl\":\"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png\",\"width\":750,\"height\":206,\"caption\":\"IRI\"},\"image\":{\"@id\":\"https:\/\/beta.iri.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/beta.iri.com\/blog\/#\/schema\/person\/37c0e5beab094bd61cc521902df2876e\",\"name\":\"Adam Lewis\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/beta.iri.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/087667d0c75d33bb6fab6e734bd89333?s=96&d=blank&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/087667d0c75d33bb6fab6e734bd89333?s=96&d=blank&r=g\",\"caption\":\"Adam Lewis\"},\"url\":\"https:\/\/beta.iri.com\/blog\/author\/adaml\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Masking RDB Data in the DarkShield GUI - IRI","description":"This is the third article in a series of articles focusing on using DarkShield to search and mask sensitive data in relational databases. IRI DarkShield data masking product now includes fit-for-purpose wizards in the IRI Workbench IDE to search (classify) and mask (remediate) sensitive \u201ddark data\u201d (as defined by Gartner) in many semi, unstructured, and structured file, NoSQL, and relational database (RDB) sources. The focus of this article is on RDBs; DarkShield can support any RDB with a JDBC driver connection.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/","og_locale":"en_US","og_type":"article","og_title":"Masking RDB Data in the DarkShield GUI - IRI","og_description":"This is the third article in a series of articles focusing on using DarkShield to search and mask sensitive data in relational databases. IRI DarkShield data masking product now includes fit-for-purpose wizards in the IRI Workbench IDE to search (classify) and mask (remediate) sensitive \u201ddark data\u201d (as defined by Gartner) in many semi, unstructured, and structured file, NoSQL, and relational database (RDB) sources. The focus of this article is on RDBs; DarkShield can support any RDB with a JDBC driver connection.","og_url":"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/","og_site_name":"IRI","article_published_time":"2024-01-04T07:24:56+00:00","article_modified_time":"2024-01-05T02:14:18+00:00","og_image":[{"width":768,"height":368,"url":"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Finding-masking-PII-RDB-wizard-featured-image.png","type":"image\/png"}],"author":"Adam Lewis","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Adam Lewis","Est. reading time":"10 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/#article","isPartOf":{"@id":"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/"},"author":{"name":"Adam Lewis","@id":"https:\/\/beta.iri.com\/blog\/#\/schema\/person\/37c0e5beab094bd61cc521902df2876e"},"headline":"Masking RDB Data in the DarkShield GUI","datePublished":"2024-01-04T07:24:56+00:00","dateModified":"2024-01-05T02:14:18+00:00","mainEntityOfPage":{"@id":"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/"},"wordCount":2155,"commentCount":0,"publisher":{"@id":"https:\/\/beta.iri.com\/blog\/#organization"},"image":{"@id":"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/#primaryimage"},"thumbnailUrl":"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Finding-masking-PII-RDB-wizard-featured-image.png","keywords":["finding pii","IRI DarkShield","masking pii","RDB Wizard","relational database"],"articleSection":["Data Masking\/Protection","IRI Workbench","Test Data"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/","url":"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/","name":"Masking RDB Data in the DarkShield GUI - IRI","isPartOf":{"@id":"https:\/\/beta.iri.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/#primaryimage"},"image":{"@id":"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/#primaryimage"},"thumbnailUrl":"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Finding-masking-PII-RDB-wizard-featured-image.png","datePublished":"2024-01-04T07:24:56+00:00","dateModified":"2024-01-05T02:14:18+00:00","description":"This is the third article in a series of articles focusing on using DarkShield to search and mask sensitive data in relational databases. IRI DarkShield data masking product now includes fit-for-purpose wizards in the IRI Workbench IDE to search (classify) and mask (remediate) sensitive \u201ddark data\u201d (as defined by Gartner) in many semi, unstructured, and structured file, NoSQL, and relational database (RDB) sources. The focus of this article is on RDBs; DarkShield can support any RDB with a JDBC driver connection.","breadcrumb":{"@id":"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/#primaryimage","url":"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Finding-masking-PII-RDB-wizard-featured-image.png","contentUrl":"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Finding-masking-PII-RDB-wizard-featured-image.png","width":768,"height":368},{"@type":"BreadcrumbList","@id":"https:\/\/beta.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/beta.iri.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Masking RDB Data in the DarkShield GUI"}]},{"@type":"WebSite","@id":"https:\/\/beta.iri.com\/blog\/#website","url":"https:\/\/beta.iri.com\/blog\/","name":"IRI","description":"Total Data Management Blog","publisher":{"@id":"https:\/\/beta.iri.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/beta.iri.com\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/beta.iri.com\/blog\/#organization","name":"IRI","url":"https:\/\/beta.iri.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/beta.iri.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png","contentUrl":"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png","width":750,"height":206,"caption":"IRI"},"image":{"@id":"https:\/\/beta.iri.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/beta.iri.com\/blog\/#\/schema\/person\/37c0e5beab094bd61cc521902df2876e","name":"Adam Lewis","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/beta.iri.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/087667d0c75d33bb6fab6e734bd89333?s=96&d=blank&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/087667d0c75d33bb6fab6e734bd89333?s=96&d=blank&r=g","caption":"Adam Lewis"},"url":"https:\/\/beta.iri.com\/blog\/author\/adaml\/"}]}},"jetpack_featured_media_url":"https:\/\/beta.iri.com\/blog\/wp-content\/uploads\/2024\/01\/Finding-masking-PII-RDB-wizard-featured-image.png","_links":{"self":[{"href":"https:\/\/beta.iri.com\/blog\/wp-json\/wp\/v2\/posts\/16785"}],"collection":[{"href":"https:\/\/beta.iri.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/beta.iri.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/beta.iri.com\/blog\/wp-json\/wp\/v2\/users\/152"}],"replies":[{"embeddable":true,"href":"https:\/\/beta.iri.com\/blog\/wp-json\/wp\/v2\/comments?post=16785"}],"version-history":[{"count":12,"href":"https:\/\/beta.iri.com\/blog\/wp-json\/wp\/v2\/posts\/16785\/revisions"}],"predecessor-version":[{"id":17665,"href":"https:\/\/beta.iri.com\/blog\/wp-json\/wp\/v2\/posts\/16785\/revisions\/17665"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/beta.iri.com\/blog\/wp-json\/wp\/v2\/media\/16893"}],"wp:attachment":[{"href":"https:\/\/beta.iri.com\/blog\/wp-json\/wp\/v2\/media?parent=16785"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/beta.iri.com\/blog\/wp-json\/wp\/v2\/categories?post=16785"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/beta.iri.com\/blog\/wp-json\/wp\/v2\/tags?post=16785"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}