BusinessObjects Board

List of Usergroups and their Universe/ Universe Folders

Hello,

Can anyone please help me to extract the list of usergroups and their respective universe folders in a particular environment.

My requirement is to extract Users and their respective Universe folders. I had divided the requirement into two parts. Users -> Usergroups and Usergroups -> Universe Folders.

I found and successfully completed by the first part. Please help me for the second part. Macro will be more helpful.

Please note that, I am using BI 4.1 SP5.

Thanks in Advance.
Soniya Mahaboob.


msoniyam (BOB member since 2018-04-13)

Welcome to B:bob:B!

I’ll move this to the SDK forum for you. Good Luck 8)


Nick Daniels :uk: (BOB member since 2002-08-15)

Thanks Nick.

Can someone help me here? Thanks.

Soniya Mahaboob.


msoniyam (BOB member since 2018-04-13)

Do some research on the Rest Web API, you can get all this kind of information using that.


ABILtd :uk: (BOB member since 2006-02-08)

There is no inherit relationship between usergroups and universe folders.

You may be adding multiple usergroups to the ‘User Security’ list for each universe folder - so that is the way you would need to tackle it i.e. for each folder, list the members of the ‘User Security’ list.

The other way (probably easier as you seem to already be able to list the members of a usergroup) is to create a usergroup for each universe folder.

Example: you have universe folders, UnvFolderA & UnvFolderB

Create two usergroups, UnvFolderA_Users & UnvFolderB_Users

Then

  • add UnvFolderA_Users into the ‘User Security’ list for UnvFolderA and assign security
  • add UnvFolderB_Users into the ‘User Security’ list for UnvFolderB and assign security

You then add users/usergroups as members of usergroups, UnvFolderA_Users & UnvFolderB_Users.

Then you can just list out the members of UnvFolderA_users when you need to know who has access to UnvFolderA.


Hayden_Gill :australia: (BOB member since 2002-08-15)

Thanks. I will try and get back, if i got stuck somewhere.


msoniyam (BOB member since 2018-04-13)

Hi,

I cant add the security to the user and usergroups at this stage as the whole environment is already set.

Can you please tell me the other way such that, i need list of all the universes in the environment and the users have access to the universe respectively?

Thanks,
Soniya Mahaboob.


msoniyam (BOB member since 2018-04-13)

No sorry, I have no idea how you have it setup… Lots of things complicate the issue, inheritance, people in multiple groups etc.

You’d be better off looking at some of the third party products that do this sort of thing…


Hayden_Gill :australia: (BOB member since 2002-08-15)

Soniya, here’s how to get this using the Java SDK:

  1. Start from the universe folders - I usually get the SI_ID of the root universe folder and then query SELECT * FROM CI_SYSTEMOBJECTS AND SI_PARENTID = 563 AND SI_KIND = ‘Folder’ - this will get you all of the folders that are directly under the root (at the top level). If you have subfolders, you’ll need to use recursion to walk down the folder tree to get the information.

  2. For each folder, call .getSecurityInfo2() to get an ISecurityInfo2.

  3. For the ISecurityInfo2, call .getExplicitPrincipals() to get the list of groups that have access to the folder. If there are any users explicitly assigned to the folder, they’ll be in that list too.

  4. If you just want the list of user groups that are explicitly assigned to the folder, you’re done. If you want the list of groups that have inherited access to the folder, you’ll need to repeat step 3 with .getEffectivePrincipals(). If you want to know what access they have, you’ll need to use .getRoles() on the individual IExplicitPrincipal and/or IEffectivePrincipal object to get the SI_ID of the access level that has been used to assign access.

-Dell


hilfy :us: (BOB member since 2007-04-16)