IC4NOTICE: developerWorks Community will be offline May 29-30, 2015 while we upgrade to the latest version of IBM Connections. For more information, read our upgrade FAQ.
3 replies Latest Post - ‏2012-09-16T20:29:34Z by sdkguy
217 Posts

Pinned topic Sample Cognos Java Security Provider (CJSP/CJAP) source code

‏2012-05-07T16:16:40Z |

Here's a pile of source code that isn't getting fresher over time. What it includes is:

1) Custom Java Security/Authenticaion Provider (CJAP): multi-tenant configurable and way more robust than current Cognos samples that ship with the product

2) Utility classes: including Connection, Tasks, and ConnectionPool that may be useful for common tasks or for use in servlets (note that a CJAP provider cannot directly make calls to the Cognos SDK if the SDK call requires invoking the CJAP (yes, there are work-arounds)).

What it does not include is:

1) Documentation. I don't have time to document and support this. There are no "quick starts" or videos. If you cannot figure out what to with the code, how to link SDK libraries, setup the property file, write SQL queries for your database, etc. -- don't bother with this and do call a consultant.

2) Guarantees. Nothing here is guaranteed or waranteed by me or IBM or anyone to work.

3) Freedom from open source code. There may be stuff here that is copied and paste from open source projects whose licenses I do not track. The OFBIZ stuff is ok for commercial use but check it out and replace what you think may be suspect if you are concerned about this.

My hope in releasing this pile of code is to build more SDK expertise out here on the forums. Also, together we can help make this code more robust. If someone wants to start a proper open source repository... be my guest.

Most but not all of this code is available as snippets in various places. However, the CJAP samples out there today are inadequate. This should help until Cognos releases better samples.

Let me warn you that implementing the full CJAP spec (including property filters, for instance) -- which most implementations do not need -- is very hard. Motio (formerly Focus Technologies) has done a great job and charge accordingly. Locus, LPA, Bright Star and other partners can also help if you want perfection. Look in places like this to find partners with SDK expertise.

Anyway.... have at it comrades.


(This message was is cross-posted in the general BI forum.
Updated on 2012-09-16T20:29:34Z at 2012-09-16T20:29:34Z by sdkguy
  • SystemAdmin
    217 Posts

    Re: Sample Cognos Java Security Provider (CJSP/CJAP) source code

    ‏2012-05-09T14:24:38Z  in response to SystemAdmin
    This code would definitely be a great help for anybody trying to implement an in house version of Custom Authentication Provider.

    Great job!!!!!
    • sdkguy
      2 Posts

      Re: Sample Cognos Java Security Provider (CJSP/CJAP) source code

      ‏2012-09-16T20:28:35Z  in response to SystemAdmin
      There was an error in the ConnectorVisa class which affected trusted credential usage (scheduled reports). This is corrected here, classes have been renamed, and implementation files have been provided for use with the Sugar CRM Enterprise/Pro database schema.

      You should expect to see a toolkit using this implementation in the Sugar component/connector gallery some time soon. It will be provided open-source.

      The attached file does not include libs, but it does include a little JUNIT test bat file. There is a property file with SQL statements configured for Sugar Pro/Enterprise which support team security. You can easily write your own to adapt this to any DB schema you are currently using. You can also plugin your own encryption modules ... or since you have source code, extend and improve this any way you want.

      Apparently, the new 10.2 SDK includes a full sample including a sample database. I've not looked closely at it but perhaps it provides a better starting point.

      Several customers implementing this code successfully but there are relatively few post-backs yet of questions or updates. Hopefully others will participate on this thread as a new role may prevent me from contributing for a while.

      The files attached also include some Cognos utility libraries for repository functions as well as FM model manipulation using SDK. It does not implement chunking which may be required for processing huge FM models.

      I included this license file in the RAR noting clearly that this code has no official support whatsoever from IBM, nor restrictions on its use.

      This Custom Java Security Provider is the work of many people, mainly Anthony Krinsky, during 2008-2011. This version was tested using the Sugar CRM 6.5.x database schema.
      Updating the SQL statements in will allow using many schemas.
      The codebase has not been vetted or approved by IBM and the author(s) make no guarantees whatsoever about functionality or performance. Source code from the OfBiz project has been used in this project, and it is to our knowledge, free of commercial restrictions. Although no other open-source code was examined, no guarantees are made that the code-base is absolutely free of commercially restricted open source code.
      v. 1.0 Anthony Krinsky, 9-16-2012

      Several utility functions in this code-base have been copied from the OFBIZ project, which is now an Apache project covered by the Apache 2.0 license.
      The bits of OfBiz source code used here were sampled in 2005 and owes a great debt of support to David E. Jones, a generous and brilliant man, ahead of his time.