BusinessObjects Board

List of groups assigned to each webi report

Hi,

We got a request from management as below

  1. list of groups who have access to each webi report
  2. list of users who are part of groups

Thanks

Hi SJK,

Do your manager ask for an Audit Report ? Can you explain the issue you are faceing while create a Audit Report ?

The Best, Onur

Hi Onur,

Not Audit report. We are looking for something as below

folder name Report Name group name User name
AAAAA AB 1 aa
bb
cc
2 dd
ee
ff

Thanks
SJK

1 Like
  1. list of users who are part of groups (this can be obtained by cms query. you can user Admintools, but is needed to perform the query for each group)

  2. this is more complicated. you can perform a security query in the CMC but depends of how content you have in the platform. there are some customs extractors in Excel you can find in this forum or web that accomplished what you are trying to do.

Hi DINAMIK,

Thanks for details

  1. we have 200+ groups in BO, so it is hard to do them from the query builder. So only looking for a script to pull all users-groups at a time
  2. can you give me more lead on customs extractors to get requirements to fulfill

Thanks

biclever – Tools for Business Intelligence

you can find cms query builder, is an utility to export in excel CMS information, only works in 4.2

let me search if I find something for security

Hi,

As per my knowledge, we cant achieve a report and associated groups from BIclever. correct me if I am wrong

You might be able to use the CMS universe to do this. However, the best way I know of to get both sets of information is to write a Java program using the BI Platform SDK and export the data to .csv file. I have code that does this that I can’t completely share because it belongs to my employer, but here’s the basic logic.

  1. Create an IEnterpriseSession and log in to your system.
  2. Create and IInfoStore that’s connected to the session so that you can query the database.
  3. Get the list of user groups.
  4. For each user group, put the user group into a GroupInfo object that you define - I generally define it as the SI_ID and SI_NAME values for the group with a list of users and a list of subgroups. I store it in a Map that has the SI_ID of the group as the key so that I can find it when I’m working with object security info.
  5. Since it sounds like you probably have a lot of reports (since you have so many groups), your best bet is going to be to walk the folder-tree using recursion. You’ll also want to walk the folders because, if you’ve followed best practices, your security will be assigned primarily at the folder level rather than at the report level. What I do is:
    a. Query for the top level folder.
    b. Based on the SI_ID of that folder, query for the folders where the SI_ID is the SI_PARENTID of the folder.
    c. Working one folder at a time, get the security info and then the sub-folders until you get to the inner-most folder.
    d. Get the list of reports in the folder and any explicit security that might have been applied to them. ’
    e. For each report, save the report metadata (including path) and security metadata to a ReportInfo object that you define.
    f. When you finish going through all the reports in the folder, pop up to the previous folder in the hierarchy and go to the next subfolder of that folder, if any.
    g. Repeat steps c through f as you walk through the entire folder tree.
    h. I found that in larger systems, I had to output the report info when I had walked back out to the top level subfolder in the tree (under “Public Folders”) or I would end up running out of memory. You can use the security information from the folders and the reports to output to a .csv file in the format you’re looking for. Note that you have to be careful when looking at the security information so that you take into account where “No Access” has been assigned at inner levels.

I have attached a .pdf file that shows the basic structure of the classes that I use for this.

-Dell

Classes for folder & report security.pdf (11.5 KB)