Monday, October 24, 2011

OPTIM - FAQ's -- III

Optim to convert critical information such as Social Security number (TRANS SSN), credit card number (TRANS CCN), and e-mail IDs (TRANS EML). There are several other functions available in Optim in the data privacy area that provide various masking functions. For example, some of the functions include:
LOOKUP, a function that uses a lookup table to determine the destination column value

HASH_LOOKUP, a function that determines the destination column value from a lookup table according to a value derived from a source column

RAND_LOOKUP, a random lookup function that selects a value for the destination column from a lookup table based on a random number as the subscript in the lookup table

TRANS SSN flags and their descriptions
Flags   Description
n          Generates a random area number and an appropriate group number and serial number.
r          Generates a random area number corresponding to the state of the source SSN and an appropriate group number and serial number.
v          Validates the source group number to ensure the SSN has used it.
-           Generates an SSN with dashes separating the fields (for example, 123-45-6789). Requires a character-type destination column at least 11 characters long.

The TRANS CCN function is used to generate valid and unique credit card numbers (CCNs). A CCN usually consists of a six-digit issuer identifier followed by a variable-length account number and a single-check digit as the final number. By default, TRANS CCN algorithmically generates a consistently altered CCN, but it can also generate a random value for CCN.

The execution steps followed in this section (used to mask credit card numbers) are similar to the steps followed during the execution of the SSN scenarios. All three scenarios described in this section differ from each other with respect to the source file, control file, destination file, and flags used in TRANS CCN function.

TRANS CCN flags and their descriptions

Flags   Description
n          Generates a random CCN, not based on a source value, that includes a valid issuer
identifier associated with American Express, MasterCard, VISA, or Discover.
r          Generates a random CCN that includes the first four digits of the source issuer identifier.
6          Generates a random CCN that includes the first six digits of the source issuer identifier.

TRANS EML

The TRANS EML function is used to generate an e-mail address. An e-mail address has two parts—the user name and the domain name, separated by the at sign (@).

The TRANS EML function generates e-mail addresses based on either the destination data or a literal concatenated with a sequential number. The domain name can be formed using either the source data or randomly chosen from a long list of e-mail service providers. E-mail addresses can also be converted to upper or lower case.

The execution steps followed in this section (where the scenarios will work on e-mail accounts) are similar to the steps followed during the execution of SSN scenarios. Hence, usage of only one is given here, and the rest can be executed in the same way with only the change of the flag values.

TRANS EML flags and their descriptions
Flags   Description
n          Ignores the source value and generates an e-mail address with a random domain name from a list of large e-mail service providers.
.           Separates the name1col and name2col values with a period (.).
-           Separates the name1col and name2col values with an underscore (_).
i           Uses only the first character of the name1col value.
l           Converts the e-mail address to lower case.
u          Converts the e-mail address to upper case.

Note: Some of the articles are grab from various Websites / Blogs.

Saturday, October 22, 2011

OPTIM - FAQ's -- II

SQL Server DB Alias, with a user that even has database owner privileges. Packages were created without any problem, but when in optim we are trying to define Access definition and want to choose a table to work on, it displays: "no data available". Like it doesn't see any table.

Ans: Can you load/drop sample tables from Optim configuration module ?

Step 1 : Launch Optim configuration
Step 2 : Task --> Load/Drop Sample tables
Step 3 : Choose the respective Optim Directory and Dbalias using correct credentials
Step 4 : In Load/Drop Sample tables windows , make sure you correctly specifying schema name and tablespace info ( as applicable).
Step 5 : Press " Proceed " Button and load the sample tables and close Configuration module
Step 6 : Now launch Optim Tool and try to create an Extract or Access definition and check the default qualifier works or not.

Ans2: it might be that the metadata is not registering in Optim.

Remember to disconnect/reconnect to the Optim Directory after DB Alias creation or alternatively restart the Optim Workstation program.

Optim refreshes it's metadata when it connects to the Optim Directory. So, if you have Optim open and define a DB Alias in the Optim Configuration program, you need to reconnect to see the tables.

Ans3: Indeed, it seems to be a metadata refreshment problem. Quitting the Optim Configurator after DB Alias creation (to make sure the update is persisted) and starting Optim does the trick.


How to verify -optim version/fixpack/patches/releases on Optim Server side- AIX.

I have not documented the changes we made to Optim( I mean after applying fixpacks)

Now I want to see Prod/Test/Dev environments are running with same Version/Optim-patch-fixpack

Ans: You can check rtbuild.h file under $PSTHOME/bin folder ( HOME folder of Optim installation )on AIX side.
Trace LOG files also give release & Build # information $PSTHOME/temp.

On windows , You can find rtbuild.h file under Optim folder ( e.g. c:\program files\IBM Optim\rt\BIN ). You can check "About Optim" option in HELP menu of Optim tool in windows for release and build information as well.

Ans2: /optim/7.2.1/rt/bin
-->

rtbuild.h

#define RTBUILD_SEQUENCE 3125
#define RTBUILD_SEQUENCE_STR "3125"

RTBUILD_FP01.h

#define RTBUILD_SEQUENCE 3125
#define RTBUILD_SEQUENCE_STR "3125"
#define RTBUILD_FIXPACK "01"

in the above scenario my :Option version is:7.2.1
Build:3125, Fixpack:01

Note: Some of the articles are grab from various Websites / Blogs.

OPTIM - FAQ's -- I

1. Does TRANS SSN function generate unique values?

Ans: Yes, for every unique input value it generates unique output value.


2. If same SSN more than once using TRANS SSN function to mask data, will they replaced by different SSN or same for all?
If same for all, Does TRANS SSN function will create a lookup table?
If it create lookup table, where they will store this lookups.

Ans: For same input value Trans SSN will generate the same masked value, unless Random masking (‘n’) is specified. So if you have same SSN multiple times you will get the same output each time and Trans SSN will not create a Lookup table


3. If 2 different workstations using 2 different DB Alias to connect came Database(mask same table which has SSN). Now if we use TRANS SSN function, both will create same SSN or different SSN’s?
Yes, it will generate different SSN’s., FCFS basis, The first DBAlias which will get to mask and second DBAlias will get the masked data of the first DBAlias.

            Similar to Updating the table by two members at a time.


4. If i got Table1 and Table2 both has SSN, i am masked Table1 first and created a Masked Table. Later after couple of days i have masked Table2. If Table 1 & 2 has matching SSN row, will it create same masked SSN for both Table

Ans: ‘r’ flag means generate Random area number so you will not get unique output for unique input. But this should not skip same SSN in a table.

Answer few questions:
1. Does your destination table column have a unique constraint set on it?
2. Are all the rows containing same SSN skipped or at least one row can be seen in destination table
3. What does the control file says for Rows containing same SSN?

Ans: answers below were based on using TRANS SSN with 'r' flag.

1. No unique indexes / constraints. Both source & destination columns are defined as CHAR(20)
2. All rows with same SSN are skipped - I used Compare Request and did some queried against the database.
3. The control file says something like "No Dest"


Note: Some of the articles are grab from various Websites / Blogs.