Tuesday, July 30, 2013

Class level security in Universe

Question:
Is it possible to set security at the class level within a universe?
Like one user group will see the data without any condition and other user group will see the same class where the xyz column of ABC table is equal to "Y"?

Answer:
It is possible to set a restriction on a class but with a twist. You need to create the copy of same class and save it to different name.
I am recreating the scenario.

Group A1 will see "Corporate" class data without any condition.
Group A2 will see "Corporate (A2) " class data with this condition ABC.XYZ="Y"

Steps:
  1. Copy the Corporte classs and paste under same hierarchy.
  2. Rename it as Corporate (A2).
  3. Create a condition object and set the properties like below.



  1. Then go to Tools>Manage Security>Manage Access Restriction.
  2. Create two new restriction (e.g Corporate Restriction, Corporate (A2) Restriction)
  3.  Go to “Object” tab in both restriction and add like below
    1. In Corporate Restriction add “Corporate (A2)
    2. In Corporate (A2) Restriction add “Corporate
  4. Map to A1 and A2 group
  5. Save and Export the Universe
  6. Check by login as A1 group and A2 Group user

Now A1 Group can see only Corporate class and A2 Group will see Corporate A2 class.
When they pull the object inside it the data is restricted according to the condition.