Author Topic: Report on Users / Roles / Groups and Permissions  (Read 35221 times)

Offline swordfish

  • Full Member
  • ***
  • Join Date: Feb 2007
  • Posts: 42
  • Forum Citizenship: +0/-0
Report on Users / Roles / Groups and Permissions
« on: 22 Oct 2007 01:13:00 pm »
Hey

Is it possible to generate a report on the users, their roles and permissions from cognos? We may have hundreds of users and maintaining this info manually would be highly time consuming and may also be error prone.

Content Store may have the information but is it possible to query on the content store for user security using SDK?

Does cognos provide (even sell) any proprietary programs for this task? I am using Cognso 8.2

Any inputs on this would be greatly appreciated!!!

SF

Offline COGNOiSe administrator

  • Statesman
  • ******
  • Posts: 675
  • Forum Citizenship: +32/-8
    • BrightStar Partners, Inc
Re: Report on Users / Roles / Groups and Permissions
« Reply #1 on: 22 Oct 2007 07:18:50 pm »
Yes, it is possible with the SDK. And also a commercial application we've wrote delivers that information in PDF, TXT, CSV, HTML, among other things. Look us up on Cognos site under Powered By Cognos Solutions or drop me an email. Otherwise the adds on this site should guide you there too ...  ;D

Dear community, please take my appologies for going a tad commercial here, but we, myself and my employees, are being asked these very same questions alot.

Offline rocket

  • Senior Member
  • ****
  • Join Date: Aug 2005
  • Posts: 57
  • Forum Citizenship: +3/-0
Re: Report on Users / Roles / Groups and Permissions
« Reply #2 on: 22 Oct 2007 09:06:31 pm »
You can also see more information on the Powered by Cognos solutions on COGNOiSe.com at http://www.cognoise.com/community/index.php?board=92.0

Offline megatrack67

  • Sr. DBA/ Project Manager/Sr. Cognos Admin.
  • Full Member
  • ***
  • Join Date: Mar 2008
  • Posts: 13
  • Forum Citizenship: +2/-0
Re: Report on Users / Roles / Groups and Permissions
« Reply #3 on: 18 Mar 2008 02:28:09 pm »
If you are using Oracle as content store DB

here are some homemade select that could give you some information

list of users

SELECT cmobjprops1.cmid, cmobjprops1.busphone, cmobjprops1.email,
          cmobjprops1.faxphone, cmobjprops1.givenname, cmobjprops1.homephone,
          cmobjprops1.mobilephone, cmobjprops1.pagerphone,
          cmobjprops1.paddress, cmobjprops1.surname, cmobjprops1.TIMEZONE,
          cmobjprops1.clocaleid, cmobjprops1.prodlocale, cmobjprops1.objid,
          cmobjprops1.useaccessibility, cmobjprops33.cmid AS cmid1,
          UPPER (cmobjprops33.NAME)
     FROM cmobjprops1, cmobjprops33
    WHERE cmobjprops1.cmid = cmobjprops33.cmid

List of Groups (List of English groups)

SELECT cmobjnames_base.cmid, cmobjects.pcmid, UPPER (cmobjnames_base.NAME),
          cmobjects.created, cmobjects.modified, cmobjects.disabled,
          cmobjnames_base.isdefault
     FROM cmobjects, cmobjnames_base
    WHERE cmobjects.classid IN (26, 54)
      AND cmobjnames_base.mapdlocaleid = 24
      AND cmobjects.cmid = cmobjnames_base.cmid

List of users by group

SELECT   v_group_user.user_id, v_user.ldap_id,
            LTRIM (RTRIM (UPPER (v_user.ldap_id))), v_group.cmid,
            v_group.name_en name_en, v_group.name_fr name_fr, v_group.created,
            v_group.modified, v_group.disabled, v_user.last_name,
            v_user.first_name, v_user.email
       FROM dba_group_info v_group,
            (SELECT cmid GROUP_ID, refcmid user_id
               FROM ops$cgs.cmreford1) v_group_user,
            (SELECT c33.cmid user_id, UPPER (c33.NAME) ldap_id,
                    c1.surname last_name, c1.givenname first_name,
                    c1.email email
               FROM cmobjprops1 c1, cmobjprops33 c33
              WHERE c33.cmid = c1.cmid(+)
             UNION
             SELECT cmid user_id, UPPER (name_en) ldap_id, name_en last_name,
                    '' first_name, '' email
               FROM dba_group_info) v_user
      WHERE v_group.cmid = v_group_user.GROUP_ID
            AND v_group_user.user_id = v_user.user_id(+)
   ORDER BY 1, 3

I hope this will help you
PC
Sr. DBA/ Project Manager/Sr. Cognos Admin.

Offline swordfish

  • Full Member
  • ***
  • Join Date: Feb 2007
  • Posts: 42
  • Forum Citizenship: +0/-0
Re: Report on Users / Roles / Groups and Permissions
« Reply #4 on: 08 May 2008 01:36:33 pm »
Thanks a million. Looks like lot of effort went into it!

We have decided to use SDK to get this info...Also our requirement evolved to become more complex.

Can someone tell me, what cognos' stand is on querying content store ?

Swordfish

Offline josepherwin

  • Community Leader
  • *****
  • Join Date: Jul 2008
  • Posts: 95
  • Forum Citizenship: +2/-0
Re: Report on Users / Roles / Groups and Permissions
« Reply #5 on: 04 Jul 2008 01:27:57 am »
Modified the query a little bit to make it work if the Content Store is in SQL Server  :D

SELECT v_user.first_name, v_user.last_name, v_group.name, v_group_user.cmid as GROUP_ID,
   v_group_user.refcmid user_id FROM cmreford1 as v_group_user
LEFT OUTER JOIN (SELECT c33.cmid user_id, UPPER (c33.NAME) ldap_id,c1.surname last_name, c1.givenname first_name,c1.email email
      FROM cmobjprops1 c1 left outer join  cmobjprops33 c33             
      on c33.cmid = c1.cmid
      UNION
      SELECT cmobjprops1.cmid user_id, UPPER (cmobjprops33.NAME) ldap_id, cmobjprops1.surname last_name, cmobjprops1.givenname first_name, cmobjprops1.email
      FROM cmobjprops1, cmobjprops33
      WHERE cmobjprops1.cmid = cmobjprops33.cmid) v_user
ON v_group_user.refcmid = v_user.user_id
LEFT OUTER JOIN (SELECT cmobjnames.cmid cmid, UPPER (cmobjnames.NAME) name,
             cmobjects.created created, cmobjects.modified modified, cmobjects.disabled disabled
           FROM cmobjects, cmobjnames
          WHERE cmobjects.classid IN (26, 54)
            AND cmobjnames.mapdlocaleid = 24
            AND cmobjects.cmid = cmobjnames.cmid) v_group
ON v_group.cmid = v_group_user.cmid
WHERE v_user.first_name = INSERT FIRST NAME HERE
OR v_user.last_name = INSERT LAST NAME HERE
OR v_group.name = ENTER GROUP NAME HERE
DataStage, Informatica 7, Informatica 8.3, Cognos 7.4, Cognos 8.1, Cognos 8.3, Cognos 8.4, Oracle 9i, Oracle 10g, Sybase IQ

Offline Redrichmond

  • Full Member
  • ***
  • Join Date: Jun 2008
  • Posts: 28
  • Forum Citizenship: +1/-0
Re: Report on Users / Roles / Groups and Permissions
« Reply #6 on: 11 Aug 2008 11:10:49 am »
This is great.....Mine works too...I did asked Cognos support which tables the data came from and they couldnt help.

Do you know how I can produce a report of the scheduled reports and which failed...What table in the content store holds the scheduler information.

We are using SQL Server DB.

John

Offline josepherwin

  • Community Leader
  • *****
  • Join Date: Jul 2008
  • Posts: 95
  • Forum Citizenship: +2/-0
Re: Report on Users / Roles / Groups and Permissions
« Reply #7 on: 11 Aug 2008 11:24:43 pm »
It's just a pain in the a** if you ask Cognos about Content Store, they protect it as if it was their biggest secret...

From my experience, all table with prefix NC_ relates to scheduling.

I cant tell you how each table relates to another though. You'll have to give it a go yourself.

just a thought, wouldnt the new Administration in 8.3 provide you with a better insights on scheduled jobs/what's running?
DataStage, Informatica 7, Informatica 8.3, Cognos 7.4, Cognos 8.1, Cognos 8.3, Cognos 8.4, Oracle 9i, Oracle 10g, Sybase IQ

Offline Redrichmond

  • Full Member
  • ***
  • Join Date: Jun 2008
  • Posts: 28
  • Forum Citizenship: +1/-0
Re: Report on Users / Roles / Groups and Permissions
« Reply #8 on: 12 Aug 2008 04:37:27 am »
Hi I know what you mean about IBMs secret Content store...

We cant run 8.3 as we found a bug which cognos are fixing for our windows version.

Strange though. I ran your SQL and got the list of users...

but I had a rogue user who was deleted from the access manager and is not in the group when you look in there in cognos 8??




Offline josepherwin

  • Community Leader
  • *****
  • Join Date: Jul 2008
  • Posts: 95
  • Forum Citizenship: +2/-0
Re: Report on Users / Roles / Groups and Permissions
« Reply #9 on: 13 Aug 2008 10:09:08 pm »
The query that you ran only go through the Content Store thus, you'll only be able to find users who are on Cognos 8 (AD).

If you delete anything from Access Manager (which is series 7) as long as this guy still have a role in Cognos 8, it will appear in the query.
DataStage, Informatica 7, Informatica 8.3, Cognos 7.4, Cognos 8.1, Cognos 8.3, Cognos 8.4, Oracle 9i, Oracle 10g, Sybase IQ

Offline Rocks

  • Full Member
  • ***
  • Join Date: Jun 2007
  • Posts: 11
  • Forum Citizenship: +2/-0
Re: Report on Users / Roles / Groups and Permissions
« Reply #10 on: 26 Aug 2008 10:03:17 am »
Whats the bug that you found in 8.3?

Offline biejorrun

  • Senior Member
  • ****
  • Join Date: Apr 2007
  • Posts: 60
  • Forum Citizenship: +1/-0
Re: Report on Users / Roles / Groups and Permissions
« Reply #11 on: 28 Aug 2008 04:54:14 am »
I ran into this page on ittoolbox, maybe it could help:
http://it.toolbox.com/wiki/index.php/Cognos_Content_Store

--
Björn

Offline josepherwin

  • Community Leader
  • *****
  • Join Date: Jul 2008
  • Posts: 95
  • Forum Citizenship: +2/-0
Re: Report on Users / Roles / Groups and Permissions
« Reply #12 on: 28 Aug 2008 07:55:46 pm »
Bjorn, I wouldnt rely on the explanation on that website.

One thing that you have to remember is that Cognos always do some changes in their Content Store in every upgrade.

Let say they usually store user information in Cogobject 1, in the next version they might decide on storing it in Cogobject 33.
DataStage, Informatica 7, Informatica 8.3, Cognos 7.4, Cognos 8.1, Cognos 8.3, Cognos 8.4, Oracle 9i, Oracle 10g, Sybase IQ

Offline biejorrun

  • Senior Member
  • ****
  • Join Date: Apr 2007
  • Posts: 60
  • Forum Citizenship: +1/-0
Re: Report on Users / Roles / Groups and Permissions
« Reply #13 on: 29 Aug 2008 06:17:22 am »
Bjorn, I wouldnt rely on the explanation on that website.

One thing that you have to remember is that Cognos always do some changes in their Content Store in every upgrade.

Let say they usually store user information in Cogobject 1, in the next version they might decide on storing it in Cogobject 33.

Of course, you're right. I won't rely on it either, but it helped me understanding the database. I can't say I'm a Content Store-professional, but these kind of lists could point someone in a certain direction.

Kind regards,

Björn

Offline Ingmar

  • Full Member
  • ***
  • Join Date: Jun 2008
  • Posts: 7
  • Forum Citizenship: +0/-0
Re: Report on Users / Roles / Groups and Permissions
« Reply #14 on: 08 Sep 2008 09:39:45 am »
If you are using Oracle as content store DB

here are some homemade select that could give you some information
List of users by group

SELECT   v_group_user.user_id, v_user.ldap_id,
            LTRIM (RTRIM (UPPER (v_user.ldap_id))), v_group.cmid,
            v_group.name_en name_en, v_group.name_fr name_fr, v_group.created,
            v_group.modified, v_group.disabled, v_user.last_name,
            v_user.first_name, v_user.email
       FROM dba_group_info v_group,
            (SELECT cmid GROUP_ID, refcmid user_id
               FROM ops$cgs.cmreford1) v_group_user,
            (SELECT c33.cmid user_id, UPPER (c33.NAME) ldap_id,
                    c1.surname last_name, c1.givenname first_name,
                    c1.email email
               FROM cmobjprops1 c1, cmobjprops33 c33
              WHERE c33.cmid = c1.cmid(+)
             UNION
             SELECT cmid user_id, UPPER (name_en) ldap_id, name_en last_name,
                    '' first_name, '' email
               FROM dba_group_info) v_user
      WHERE v_group.cmid = v_group_user.GROUP_ID
            AND v_group_user.user_id = v_user.user_id(+)
   ORDER BY 1, 3

I hope this will help you
I'm trying to run the above query, but I can't find the "dba_group_info" table. Neither in the cognos-schema, nor in any other schema on the database (including sys and system). A search with google didn't give me any clues either. Could you please tell me where I can find this table (of how I should create it)?

 


       
Twittear