Data Masking with Expressions

© 2009 Informatica Corporation

................................................ Generates a company ID and policy number that is repeatable each time the same company ID or policy number occurs in the source data.............................................................................................. 5 Lookup Transformation ......... 3 Data Masking Transformation....................................................................... DM_Mask_Company_ Policy_Names Data Masking Performs the following types of masking: LKUP_Company_Names 2 Lookup • Random..... The mapping includes a Data Masking transformation to mask the company fields................................................................................................... 4 Configuring Expression Masking ....................... Calculates an end date to maintain the same policy length as the original policy length.............................. Performs a flat file lookup on Company_Names............................................................................. 2 Source File........... Generates a new start and end date within three months of the original dates. • Expression........ but you need to maintain security................. .................................................................................................................................................................................... You can create a mapping to mask each column of the company data and write the test data to another file........................................ A company insurance policy file contains sensitive data that you want to use in a test scenario............... • Key.............. 3 Source Qualifier Transformation .................................dic to retrieve a substitute company name. It also includes a Lookup transformation that retrieves a substitute company name from a dictionary file....................................................Table of Contents Overview .................................................................. 3 Configuring Mapping Parameters................................................................................................................................................................................................................. Generates a random number to use in a Lookup transformation.... 6 Overview The following example shows how to configure expression masking in the Data Masking transformation........................................ 6 Target File............................................... The following figure shows the mapping: The mapping has the following transformations: Transformation Type Description SQ_Company_Policy Source Qualifier Passes company data to the Data Masking transformation.............

3 . Start_Date Date/time Data Masking Replace with a date that is within three months of the original date. Company_Name String Lookup Replace with a random company name from the Company_Names dictionary file.dic file. Random number generator for lookups on the Company_Names. Policy_Number Integer Data Masking Replace with a random number that is repeatable each time the same policy number occurs in the source data.Source File The following table describes each source column and the masking requirements: Column Datatype Mask Transformation Mask Objectives Company_ID Integer Data Masking Replace with a random number that is repeatable each time the same company ID occurs in the source data. It passes the Company_ID column to the following ports in the Data Masking transformation: y Company_ID. Source Qualifier Transformation The Source Qualifier passes company data to the Data Masking transformation. Data Masking Transformation Configure the masking properties for input ports on the Masking Properties tab. End_Date Date/time Data Masking Replace with a date so that the time difference between the original Start_Date and End_Date is maintained after masking. y Randid1. Company number.

You can select a year.dic file has 500 records in this example. The mapping has a mapping parameter. The mapping has a mapping parameter. Verify that the parameter datatype is valid for a seed number. Randid1 represents a random serial number in the Company_Names. day. month. You must create the Data Masking transformation in the Mapping Designer if you plan to use a mapping parameter. If you plan to use a mapping parameter for a seed value. The difference between the original start date and end date is maintained after masking. 4 . For this example. Key masking. y Policy_Number. No masking. Random masking within a variance of the source date. Key masking. $$CompanyNumber. The unit is a part of the date to apply the variance to. you can apply a mapping parameter or variable for the seed value. y Randid1. The Data Masking transformation returns a date that is within three months of the original date. create the mapping parameter before you configure the Data Masking transformation. that contains a seed value. Expression masking. that contains a seed value. Random masking. Configure blurring to mask the date as a variance of the source date. $$CustomerPolicyNum. so the policy length is the same between the original dates and the masked dates. Randid1 must be an integer from 1 to 500 because Company_Names. y End_Date. y Start_Date. The Data Masking transformation returns a Start_Date that is within three months of the source date.The following figure shows how each port in the Data Masking transformation is masked: The Data Masking transformation modifies the following source columns: y Company_ID. y Company_Name. When you use a mapping parameter you can apply the same parameter when you mask primary-key and foreign-key values for parent and child tables. or year. the variance is three months. Configuring Mapping Parameters When you configure key masking.dic file.

xml Configuring Expression Masking You can configure an expression to modify data in a port. select a port and choose key masking. select a port and choose Expression Masking. you can use functions. It adds the result to the masked start date to determine the new end date. The Designer displays the port name as the default expression. an error message appears. On the Masking Properties tab. 'DD')) To calculate a new end date that maintains the same policy length. 2. 3. DATE_DIFF(End_Date. If the mapping parameter value is invalid. The defaultValue file is an XML file in the following location: <PowerCenter Installation Directory>\infa_shared\SrcFiles\defaultValue. On the Masking Properties tab. Click Configure Expression. 2. If you have not configured a mapping parameter or variable.To configure a mapping parameter for a seed value: 1. 3. To configure expression masking in the Data Masking transformation: 1. When you configure the expression. Select a mapping parameter or variable from the list. The Expression Editor appears. ports. the expression calculates the number of days between the original start and end dates. 'DD'. 5 . Add the following expression in the Expression Editor for End_Date: ADD_TO_DATE(out_Start_Date. the Integration Service uses a default seed value from the defaultValue file. Select the Mapping Parameter option. and variables.out_Start_Date. You can reference masked data in an expression.

6 . The Expression Editor validates the expression when you click OK.ADELPHIA COMMUNICATIONS 5.You can select the functions and port names to use in the expression. The Lookup transformation returns the record that contains the serial number equal to the random number.ADC TELECOMMUNICATIONS 4. The lookup source is a sample company names file that has 500 records.ABBOTT LABORATORIES 3. Policy_Number. The expression appears on the Masking Properties tab.7-ELEVEN 2. The mapping substitutes company names from the production data with company names from the dictionary file.ADOBE SYSTEMS 6. Each company record contains a serial number and company name. The Lookup transformation receives a random number between 1 and 500 from the Data Masking transformation.COMPANY_NAME 1.ADVANCED MICRO DEVICES The following figure shows the ports in the LKP_Company_Names Lookup transformation: The lookup condition compares the value of the random number with the serial number in the Company_Names. None of the original data can be derived from the substitute data. The Condition tab contains the following lookup condition: SNO = out_Randid1 Target File The Company_Policy target definition receives the new company data from the following mapping components: Transformation Column Name Data Masking Company_ID. End_Date Lkp_Company_Names Company_Name The Target_Company_Policy file contains realistic data that you can use in a test environment.dic file. The Company_Names file contains records similar to the following: SNO. Lookup Transformation The mapping contains a Lookup transformation to retrieve random company names from a lookup file. Beg_Date. You can also click Validate to verify the expression syntax.

Author Ellen Chandler Principal Technical Writer 7 .