SAP Test Data Migration Server (TDMS): Data Scrambling
Many of us are aware of SAP TDMS i.e. Test Data Migration server. It is very vast and could be treated as a small world in SAP universe. I would like to share a little overview about DATA Scrambling in SAP TDMS in my very first blog in SCN forum.
What is TDMS?
SAP Test Data Migration Server is a high speed data extraction tool using which one can transfer relevant business data from sender (production) to nonproductive system.
Data Scrambling in TDMS
What is Data Scrambling?
Data scrambling is a security measure designed to protect confidential and sensitive data from both internal and external threats by masking sensitive data to prevent the risk of exposing it to unauthorized users.
In general term we can say, the data is encoded to prevent unauthorized access and which can be decoded by authorized personnel only.
There are two scenarios to perform Data Scrambling:
- Stand-Alone Scrambling: In this scenario the data is scrambled in the system but not transfer in any another system.
- Scrambling During Data Transfer: In this scenario SAP TDMS transfer the selected data from the source system to data cluster in source system and scramble the data, once the data get scrambled SAP TDMS transfer it to the receiver system.
Scrambling Objects
SAP provides a GUI to design & develop objects to scramble data. This platform is used across all the applications running SAP TDMS and can be accessed through TDMS work center using transaction code TDMS.
Customizing scrambling needs the following scrambling object to be created:
- Solution Category
- Super Group
- Scrambling Rule
- Global Mapping
TDMS Work Center
Solution Category:
Solution categories are used to differentiate scrambling objects. As we have single scrambling platform (TDMS work center), the solution categories identify the scrambling objects to be used in particular TDMS packages. For example, any object created with the solution category for HCM (SAP_HCM) can only be used by HCM packages.
Solution Category available with SAP TDMS
Manually new solution category could be also defined.
Scrambling Supergroup and Groups: Scrambling supergroups and groups facilitate the grouping of related rules for easy execution of actions such as activating or deactivating a group of rules together. Supergroups are the root (top) elements of the tree and can contain both groups and rules. A multi-level nesting of groups is possible, where groups can contain groups that in turn contain further groups.
Entering Supergroup Parameters
Scrambling Rules: All technical information required to scramble the data is contained in Scrambling Rules.
The Scrambling Rule contains following Basic and Expert technical information:-
Basic Technical Information:-
- Scrambling Type
- Table Name/Field Name
- Primary Table Field
- Key sets
- Domain
Expert Technical Information:-
- Routine Names
- Include Names
- Condition sets
- Technical Identifier
- Scrambling Function Modules
The Scrambling platform makes available various scrambling types that can be used to scramble data.
- Delete Value:
- Fixed Value:
- Manual 1:1 Mapping:
- No mapping:
- Number Conversion:
- Random Selection Table with 1 Column:
- Value Range Table:
- Random Table for Time Periods:
Global Mapping: – One can assign a global mapping to several scrambling rules. Global mapping is typically used for the scrambling of a random selection table with multiple columns, where multiple rules can use the same mapping to scramble data consistently.
Use this scrambling type to assign random, meaningful values to more than one related field.
You could have a random table with any number of columns columns. You can choose any of them based on the number of columns you want to maintain in the lookup table.
The Lookup Table:
The term lookup table refers to the table where you enter the mapping values for a scrambling type.
The lookup table appears for the following scrambling types:
- Random Table with N Columns
- Manual 1 To 1 Mapping
- Random Table for Time Periods
- Value Range Table
Hi Ankit,
Is there a way to scramble first name & last name in but000 with 1 scrambling rule?
Lets say : Fname and Lname to be scrambled keeping the partner id the same, as its the primary key.
I have uploaded a file in which i have two columns, first name and last name with different values : example suresh raina where suresh is the first name and raina is the last name.
Now, i want to bring this first name to the fname field and last name to the lname field in SAP ( all these are in BUT000)
Somehow, when i do the scrambling, i see only the first name being scrambled from the sheet uploaded and not the lname..
Any clue?
Thanks in advance,
Hi Vicky,
You can achieve this consistency by following below steps,
1.First create a global mapping ( in Global Mapping tab) with two columns and upload
first names and last names in first and second column respectively.
2. Now you have to create two rules one each for Fname and Lname.
3. While creating the rule, for the first rule (for Fname) assign the newly created global mapping as scrambling type with column number as 1 , and for the second rule ( for Lname) assign the same global mapping but with column no as 2.
4. Now activate both the rules in the package.
This will ensure for consistency between the field.
Unfortunately , we cannot achieve this in one rule.
You can also refer to the new people centric guide in the help portal for more detail on using global mapping.
Please see the How to guide ( How to Scramble Data ) in the below link,
SAP Test Data Migration Server 4.0 – SAP Help Portal Page
Regards,
Jerrin
So, we cannot do scrambling in multiple columns in the same table like BUT000, where we need to scramle fname & lname with single rule? not even with the latest service patches? like SP07/SP08?
Also, is there a way to restrict the amount of rows to be scrambled? i.e., from 1-10 etc..?
Thanks,
Hello Vicky,
To answer your question, yes we can do both the fields with the same rule, provided you perform the following manual activities:
1. Upload the file contents in a Ztable in your execution system, along with the partner number
2. Write code in your subroutine, where you read the ztable to convert data, based on the partner number
3. Use 'No Mapping' for your mapping type.
The above mentioned way is ONLY suggested since you specifically wanted to do it in one rule. But this might lead to inconsistency , where your child table do not have partner data, and you need to code differently for different tables.
To avoid all these I would suggest to go with two rule approach, where the scrambling workbench takes care of all these manual activities for you.
For restricting the amount of rows, we have a functionality called 'Condition Sets' ,where you can give condition on which rows needs to be scrambled. You can give Partner number for example as a condition set.
Hope this clarifies your query.
Best Regards,
Uma Tharmarajan
Hi Ankit,
i would like to more some more step about global mapping ? how can we set multiple set up rules with mapping to scramble data in SAP TDMS ?
Thanks
Asish
Hello Asish,
To set up multiple rules, to scramble a set of fields together as a group, please follow the below steps,( we will be creating one rule per field of the group of fields )
For more details on creation of scrambling objects please go through the following link,
http://scn.sap.com/docs/DOC-52263
You can also refer to the new people centric guide in the help portal for more detail on using global mapping.
Please see the How to guide ( How to Scramble Data ) in the below link,
SAP Test Data Migration Server 4.0 – SAP Help Portal Page
Hope this clarifies your query.
Regards,
Jerrin
Hello Jerrin,
Above mentioned link and link was very useful and working fine .
Thanks
Asish