Hi all,
i have a requirement where i have to implement dynamic data level security. i will explain the scenario below.
we have a table as below
proj_id proj_name empl_id proj_mgr_name
12005 A 1230 Jack
12005.001 D 117 Ralph
12006 A 1230 Jack
12006.001 D 117 Ralph
12006.002 D 117 Ralph
12006.003 A 1230 Jack
12006.ZZ3 A 1230 Jack
12014 B 889 Jones
12014.001 B 889 Jones
i would be making a Project Status Report in cognos report studio. What i need to do is, when the manager logs in to cognos connection and runs the Project Status Report, then the manager will only be able to see the data for his repective projects i.e. when "Jones" logs in to the connection and runs the report then he is only able to see data for project "B"
Right now i have done this by applying data level security on groups/roles.
The question arises, if a new project is created with a new project manager, i will have to manually update the manager name in the group on which security is applied.
is there a way by which i can do this dynamically ? so that even if there is a new entry in the system i dont have to manually update the data level security and the user will only be able to see the data related to his respective projects.
Kindly guide me with the same.
Regards
Please find the attached file for excel.
Store the security information in a table and use that table in a query item parameter map.
Quote from: bus_pass_man on 07 Aug 2014 07:32:57 PM
Store the security information in a table and use that table in a query item parameter map.
the security information will be stored in the Active Directory which i have mapped in the cognos configuration. what i want is when the user logs in into the cognos connection and runs the Project Status Report, he is only able to see the projects against which his employee id exists in the database.
Regards
Quote from: Raghuvir on 08 Aug 2014 02:09:17 AM
the security information will be stored in the Active Directory which i have mapped in the cognos configuration. what i want is when the user logs in into the cognos connection and runs the Project Status Report, he is only able to see the projects against which his employee id exists in the database.
Regards
How about adding an embedded filter to the query subject:
[proj_mgr_name] = #sq($account.defaultName)#
As long as the user's login matches the value in the proj_mgr_name column, this ought to give you what you need without defining any security filters.
Cheers!
MF.
Quote from: MFGF on 08 Aug 2014 04:56:00 AM
How about adding an embedded filter to the query subject:
[proj_mgr_name] = #sq($account.defaultName)#
As long as the user's login matches the value in the proj_mgr_name column, this ought to give you what you need without defining any security filters.
Cheers!
MF.
Hi MFGF,
I did create a embedded filter on the [proj_mgr_name] query item and wrote the expression you gave me. its working.
Really appreciate your help.
Regards