Data Masker for SQL Server 6.0
Published 21 February 2018
Deprecation of UI command line
Using DataMasker.exe to automate masking sets runs has been deprecated in 6.3.3 and will be removed in the next major release of Data Masker. To automate running of masking sets use DataMaskerCmdLine.exe instead.
To aid migration, Data Masker 6.3.3 includes an additional command line flag (-G) to DataMasker.exe to generate PARFILEs suitable for DataMaskerCmdLine.exe.
December 20th 2019 - Data masker 6.3.23
Increase the scale and precision of numbers supported by floating point data sets.
December 19th 2019 - Data masker 6.3.22
Fixed an issue running masking sets that affect a large number of rows or columns.
Keep trailing semicolons when running cross database commands.
December 18th 2019 - Data masker 6.3.21
- Added a "Check for Updates" option to the "Help" menu to manually check for new updates.
- Use fast single pass mode is now on by default for new table to table rules.
- Fixed an issue using `uniqueidentifier`s as a join condition of table-to-table rules.
December 16th 2019 - Data masker 6.3.20
- V7 performance beta now includes search and replace rules.
- The Beta rules tab has been removed. Thanks to everyone who provided us with feedback.
Fixed an issue with Row-Internal rules not allowing ID columns to be used when the V7 performance beta is enabled.
Fixed an issue where the stop masking button caused the application to become unresponsive.
December 10th 2019 - Data masker 6.3.19
- The JSONPath in JSON masker rules can optionally be evaluated by Data Masker to allow more complex specifications.
- Fixed an issue creating masking sets on case sensitive instances.
- Extend command timeouts when using V7 performance beta.
- Fixed an issue using V7 performance with case sensitive databases.
- Fixed an issue with V7 performance beta that could cause excessive memory usage.
December 2nd 2019 - Data masker 6.3.18
Skip not used parameters from row internal rule in a new algorithm (available from Enhanced performance V7 option) instead of failure for not filled parameters during execution.
November 28th 2019 - Data masker 6.3.17
- Apply V7 performance beta algorithm to shuffle and row-internal rules.
- Fixed an issue preventing shuffle rules finishing successfully when using a commit frequency larger than 50,000.
- Shuffle rules correctly respect commit frequency instead of using a commit frequency two times that specified.
- Extend timeouts in the new algorithm.
November 27th 2019 - Data masker 6.3.15
- #2941 Fix an issue applying numeric variance to integer columns.
- #150497 Fix locking issue in the new algorithm for substitution.
November 18th 2019 - Data masker 6.3.14
- Added support for SQL Server 2019/Azure SQL Database sensitivity classifications to the SQL Server Classification import.
- Fixed an issue where the new bulk substitution algorithm could fail to mask all rows when the target table includes an auto incrementing ID.
- Fixed an issue where counts of column by sensitivity are incorrect while filtering after importing plan data.
- Ensure that the new rules window is centered in relation to the main window.
- #149279 Don't show 'Rule Generation By Column' in sync manager when substitution template has more than one column.
November 12th, 2019 - Data masker 6.3.13
- Improved performance for substitution rule with new bulk substitution feature. See https://documentation.red-gate.com/dms/data-masker-help/version-6-tech-tips/the-bulk-substitution-feature for more details.
- Added the ability to import the mask plan from the Microsoft Classification Extended Properties.
- Fixed an issue where default masking set options weren't applied to new masking sets.
November 7th, 2019 - Data masker 6.3.12
- Fix 'Cannot edit this rule' pop-up after editing the controller.
November 7th, 2019 - Data masker 6.3.11
- Added filtering feature to the sensitivity column on table tab.
- Changed plan summary on tables tab to be more expressive.
November 4th, 2019 - Data masker 6.3.10
Enhancements in tables tab
We've made a number of changes to the tables tab to make it a better place to understand your schema and know what needs to be masked.
- Schemas are summarized in the "Plan Summary" column as well as tables.
- The terminology has been changed from "Must Mask" and "No Mask" to "Sensitive" and "Nonsensitive".
- Table, columns, and schemas that either haven't been categorized or have been categorized as sensitive but haven't been affected by any rule have their "Plan Summary" and "Matches Plan" columns highlighted in bold.
- Added CSV support for Masking Plan Import/Export.
- New mechanism of CSV import and export for masking plan has defaulted to export and import buttons in the controller.
Improve context menu in tables tab
- Add new commands:
- Apply sensitivity across multiple tables and columns.
- Create a substitution rule for all columns marked "Sensitive" on a table.
- View rules that affect a table or column with "Show Rules Targeting Table/Column".
- Reorganize menus
- Allows adding a cross-database table to table rule to sync manager.
- Show warning message box when creating a cross-server table to table rule.
- Fix unhandled exception from 'Find Identically Named Columns' in tables tab.
October 23rd, 2019 - Data masker 6.3.9
- Read-only beta release of a new rules view.
- Resolves an issue where masking sets required the correct, case sensitive, extension to be opened.
October 15th, 2019 - Data masker 6.3.8
- Fixed an issue where re-opening a form would not remember the previous maximised state.
October 10th, 2019 - Data masker 6.3.7
- #147534 Fix error when editing command rules.
October 9th, 2019 - Data masker 6.3.6
- Use SQL syntax highlighting for SQL Command Rule.
- Rule descriptions are auto-generated when the description is left blank.
- #147359 The trigger manager editor now correctly shows the trigger's name instead of the trigger's table.
- Fixed an issue preventing a split JSON from being unsplit..
September 24th, 2019 - Data masker 6.3.5
- Fixed an issue where the command line logs would show the incorrect value for "MatchesPlan" under masking statistics.
September 17th, 2019 - Data masker 6.3.4
- Add the number of rule workers to the toolbar.
- Changed table plan summary to unknown if some of its columns are unknown.
- Added rule creation option in the context menu on the table tab.
- Removed the confirmation dialog in column finder.|
- Renamed the tab name in the main page to simplify understanding.
- Improved how certain rule type names are displayed.
- Improved performance running masking sets with a large number of short-running rules.
- #2638: Correctly handle comparison to empty string for TEXT columns when using the "Where Not NULL or empty" option.
September 3rd, 2019 - Data masker 6.3.3
- Added an option to UI command line to generate parameter file.
- Added deprecation warning to UI command line.
- Added unique number option for Spanish NIF numbers.
- Improve suggestions for SQL Server instances in connection form.
- Fix an issue where operations in a search and replace could not be disabled.
- Fixed an issue where refresh rules fail during command line.
- #2603: Widen the rowoperations and coloperations columns in the statistics tables to monitor rules on larger tables
July 24th, 2019 - Data masker 6.3.2
- Changed the look and feel of the connection workflow, along with improved server and database discovery.
- Added a data set for South African ID numbers.
July 11th, 2019 - Data masker 6.3.1
- Table-To-Text rules in a sync manager can now be used cross database.
- It is now possible to change the dataset directory while a masking set is open. However, the new dataset directory must contain any user-defined datasets in order for masking to run correctly.
- Fixed issues working with tables and schemas with single quotes in their name.
- Fixed the default sort order to be by "Rule#" when displaying rules.
July 4th, 2019 - Data masker 6.3.0
- Improved the accessibility of actions and tools by providing a menu and toolbar.
- The rule selection window is redesigned. It now provides information on how the rules are supposed to be used.
- Masking sets created in version 5 of Data Masker can now be imported directly from the standard open dialog. This replaces the function to import version 5 masking sets from the Tools tab.
- New rules can be created from the context menu on the Rules in Set tab.
June 26th, 2019 - Data masker 6.2.7
This release contains EAP contents behind feature flag. If you're interested in trying them out, please getting in touch by email firstname.lastname@example.org.
- The rhino progress bar and option are removed.
- Make the 'New Rule' button more prominent on the 'Rules in Set' tab.
- Removed the SQL Server version selector. This change has no affect on how masking sets run on supported version of SQL Server (2005 or later).
- Fixed an issue where the masking set would not correctly clear the first time clear masking set was run.
- Fixed a race condition that could occur when running from the command line.
June 3rd, 2019 - Data masker 6.2.6
- The new masking set and controller workflow is now turned on by default.
- Fixed an issue causing the GUI command line to silently fail when started with certain arguments. This did not affect the headless command line.
May 20th, 2019 - Data masker 6.2.5
Fixes a bug when using TableToText rules from the command line.
May 9th, 2019 - Data masker 6.2.4
Make conversion from range splitter to simple substitution rule easy.
Improve the handling of nullable columns and values in the substitution rule.
Fixes a bug when using TableToText rules from the command line.
April 30th, 2019 - Data masker 6.2.3
- Fixed a bug where multiple threads could conflict on writing a log message and cause rule processing to terminate.
- Fixed a bug which caused 'SQL Server 2005' database version in edit controller form cannot be loaded and displayed.
- The JSON masker rule now masks non-string values within arrays.
- The JSON masker rule no longer masks values of null or undefined.
April 3rd, 2019 - Data masker 6.2.2
Added a new dataset for NHS Numbers. NHS Numbers can be generated with valid or invalid checksums, and optionally be uniquely generated.
This version of Data Masker requires .NET Framework version 4.7.2. You can download the latest .NET Framework from Microsoft at https://microsoft.com/downloads.
It is now possible to copy text from message boxes.
- Fixes an issue introduced in V06.02.01 causing the interface to display incorrectly on high DPI monitors.
- Fixes a failure when gathering metrics and improves the logged message.
Fixes broken help links.
March 14th, 2019 - Data masker 6.2.1
- A bug which may cause the new masking set wizard to be impossible to complete has been fixed
A bug preventing the use uniqueidentifiers as the join key in crossDB Table to Table rules has been fixed.
March 4th, 2019 - Data masker 6.2.0
New masking set and controller workflow.
New getting started page.
- Columns of type BIT can now be masked with random bits.
- A bug which caused substitution rule errored when running against column with text data type has been fixed.
- Viewing data from tables containing geography or geometry data types no longer fails.
February 13th, 2019 - Data masker 6.1.5
- Right clicking in the column selection dropdown listbox in the Substitution and Insertion rules now provides a menu item which can switch the listing between column ordinal position or alphabetical sort modes. If the alphabetical option is chosen the column typeahead function will work on the list box.
- A bug which caused setting encoding for custom dataset not working has been fixed.
January 10th, 2019 - Data masker 6.1.4
- A new rule type called the Index Refresh Rule has now been added. This rule will, when run, dynamically refreshes the Indexes known to the masking set.
- The number of worker threads value is now emitted to the logfile before each run in both the GUI and Command Line versions.
- A bug in the Command Line version which caused the number of worker threads used to be set to 2, regardless of the value configured in the masking set, has now been fixed.
January 3rd, 2019 - Data masker 6.1.3
- It is now possible to change the commit batch frequency on every rule where that concept exists. Specifically the rules which now support this new feature are: Substitution, Shuffle, Insertion, Search-Replace, XML Masker, JSON Masker, Row-Internal, Table-Internal, Table-to-Table, CrossDBTableMover, CrossDBTableToTable and Table-To-Text.
- The Shuffle rule now warns if the user selects a NOT NULL Where Clause option and also is performing a multiple column shuffle.
- Fixes an issue which prevented the triggers in a Trigger Manager rule from displaying properly in a newly created masking set until the set had been closed and re-opened.
- Fixes an issue which caused duplicates of the error handling settings when follow on rules were created without first closing and reopening the build form.
- Fixes a bug which caused duplicates of the Where Clause settings when follow on rules were created without first closing and reopening the build form.
December 10th, 2018 - Data masker 6.1.2
- Fixes an issue that was preventing upgrades to the latest version.
December 3rd, 2018 - Data masker 6.1.1
- The Rule Description is now included in the Rule Statistics Report.
- A new rule type called the FK Refresh Rule has now been added. This rule will, when run, dynamically refreshes the Foreign Keys known to the masking set.
- Multiple rules can now be selected in the Check for Un-Indexed Rule Targets tool in order to generate Index create or drop sql for them.
A bug which did not disable the "Create SQL" and "Drop SQL" buttons in the Check for Un-Indexed Rule Targets tool when only the Rule Controller was selected has now been fixed.
The alternative statistics schema is correctly persisted on updating a rule controller.
November 20th, 2018 - Data masker 6.1.0
A new rule type called the Row Count Refresh Rule has now been added. This rule will, when run, dynamically refresh the row counts in the tables known the masking set.
- A bug which caused the index create and drop code in the Find Rules with Unindexed Targets Tool to have a dummy placeholder database and schema name has now been fixed.
- Fixed an issue which caused numeric columns to be treated as nvarchar columns.
- Converting a rule to a Range Manager preserves the rule description.
- Fixed an issue when updating a rule that was created by "Undo range splitter" may auto-convert to a range splitter on the next update.
- Adjusted the formatting of the right hand display panel in the Column Finder tool.
October 30th, 2018 - Data masker 6.0.12
New rules which enable and disable indexes have been added. Disabling unneccessary indexes can improve masking performance.
October 8th, 2018 - Data masker 6.0.11
A new rule type called the JSON Masker Rule has now been added. This rule will mask JSON data. The JSON Masker Rule can accept a wild card key name and mask all data (including arrays and objects) below that key or an explicit JPath can be specified.
- The Audit and Log Options drop down on the Misc. Setup Tab now contains an option to turn off the automatic truncation of the Statistics tables for each full run.
Only one Trigger Refresh rule can now be added to a Rule Controller.
The Trigger Refresh Rule no longer leaves Trigger Dis/Ena rules in a PENDING state if those rules are not Active.
The Trigger Refresh Rule no longer leaves Trigger Dis/Ena rules in a PENDING state if those rules are not queued for execution.
The Trigger Refresh Rule will update Trigger Managers that are in front of it according to Rule Blocks or Dependencies but will not mark them PENDING for execution.
September 5th, 2018 - Data masker 6.0.10
A new rule type called the Trigger Refresh Rule has now been added. This rule will, when run, dynamically refresh the triggers known the masking set and also refresh the Trigger Managers.
- #1080: Data Masker now installs into the 'Red Gate' start menu folder
July 12th, 2018 - Data masker 6.0.9
A new tool which can discover rules with non-existent tables and columns has been added to the Tools Tab.
- #1345: Fixed an issue which caused the scripts generated by the 'Check for Un-Indexed Table-To-Table Rule Targets' tool to only create a single index per table
July 10th, 2018 - Data masker 6.0.8
There is now a Masking Plan Report Button on the Tables in Set tab which can produce a report of currently set plan information on the tables and columns.
- The state of the SingleStatmentModeActive flag is now present in the Table-To-Table rule Rule Report Options line.
- #999: A bug which prevented the Connection Timeout value on the Rule Controller from being saved with the set has now been fixed.
- #1301: Fix an issue where options were not being correctly set on loading a masking set.
June 25th, 2018 - Data masker 6.0.7
The diagnostic display for each rule type has now been customized for that rule type.
A Clear All Plan Information button has been added to the Rule Controllers Tools Tab.
Export and Import Masking Plan Information to CSV file button has been added to the Rule Controllers Tools Tab.
#976: The target column name for row-internal rules is now included in the rule structure report.
#986: Schema names have been added to the Tables in Set tab.
#1180: The 'No Primary or Unique Key on Table' dialog text has been updated to fix some syntax errors in the suggested SQL.
May 30th, 2018 - Data masker 6.0.5
- The range splitter manager has been added. Increase worker utilisation by breaking a single rule into multiple rules that each act on a different range of rows in the same table.
- The Rule Structure Report now correctly sorts by Rule ID
The Rule Statistics Report now also sorts the rules on Rule Subscript.
- Fixed a bug in the XMLMasker rule which caused an error when operating on XML type columns with the Not Null or Empty Where Clause setting.
- Fixed bug caused by a race condition in the licensing code
May 23rd, 2018 - Data masker 6.0.4
- Fixed a bug in which an error message in Table-to-Table rules complained about a missing index on the target table when it really meant source table.
- Fixed an issue causing Substitution rule fails for columns with a slash in the name.
May 8th, 2018 - Data masker 6.0.3
- The help buttons on all forms now link to online versions on the Redgate website.
- Fixed an issue causing the version in the about dialog to appear as 06.00.00.
- Fixed some UI issues occurring on high-DPI displays.
- Fixed an issue which could cause the ordering of rule controllers to not be taken into account.
March 22nd, 2018 - Data masker 6.0.2
Added Cross-DB Table-to-Table rule.
- Enhancements to User Defined Datasets
- Maximum number of lines in a set is increased to 10 million
- Correlated User Defined Datasets have been enhanced to support 8 values.
- User Defined datasets and Correlated User Defined datasets now support Unicode files.
- TgtInRule count
An optional TgtInRule column is now available in the Tables-In-Set tab. This enables the number of rules a particular table or column is involved with to be determined.
The Masking Plan Match field on the Tables-In-Set tab is now associated with the TgtInRule count. Previously it was derived from the RowOperations column.
Fixed a bug which caused errors when masking multiple columns with the Not Null or Empty option and one column was a Varchar(Max).
March 12th, 2018 - Data masker 6.0.1
A Bulk Rule Generator tool has now been added which can use a template RowInternal rule to generate rules targeting other tables with the same column name.
A Columns In Rule column has been added to the Rules In Set and Rule Statistics and other displays.
Added the female_firstnames_shortlist_fr dataset.
Added several french name datasets:
Added the nameslastfirstfemale dataset.
Added the nameslastfirstmale dataset.
Added the nameslastfirstmalefemale dataset.
Fixed a bug in the Substitution rule which caused it to error in certain circumstances when using the NULL values dataset.
Fixed a bug which prevented the column and index displays from working in rule builder forms after a refresh in the Controller.
The Table Refresh Form no longer downloads duplicates of excluded tables when refreshing.
The value 19000101 is now treated as Empty for Where Clause purposes in the RowInternal and Substitution rules when masking dates. There is an option on the Misc. Setup tab for this purpose.
Febuary 27th, 2018 - Data masker 6.0.0
This is a major release of Data Masker featuring significant changes, including better integration with SQL Clone and a wide assortment of UI improvements
- Can be integrated with SQL Clone. See this guide for more information.
- New styling
- Increased the prominence of the 'New Rule' button
- Improved configuration of columns on the core display tabs via the options button ('O')
- Improved expanding and collapsing of schema via the 'S' 'T' 'C buttons
- Added the ability to quickly copy a rule with the 'Clone Rule' button
- Command line
- Runs without displaying the UI
- Now takes a single parameter file
- Doesn't require the presence of Dummy login details
- Synchronization Manager
- Synchronization Manager rules now show a read only copy of the rule elements on the Rules in Set and Rule Statistic tabs
- Synchronization Manager rules can have a command rule added to them
- Reporting options
- New Mask Reports option tab
- Audit table now replaced with the Rule Stats and Table Stats table
- Ability to customise which database holds the Rule Stats and Table Stats table
- Added the ablity to generate a report after running a rule interactively.
- Added the ability to quickly test the connection of all rule controllers
Some features have not yet been implemented in this version of Data masker. If you have any questions or concerns about the lack of these features, please get in touch with us
- Masking Plan Report has yet to be implemented in the Tables in Set tab.