分享【Cognos第三方认证custom java provider配置方法】

本资料无预览

如感兴趣请 1 金币购买后下载

立即下载

资料简介:


当把用户引入到cognos后,顺便贴一下针对COGNOS目录访问权限的设定文档:

用户访问的SQL SERVER 2000的库,在CONGOS8.4和COGNOS 10.1上都调试通过,可以登录进去。这2天断断续续就这事了,其实CONGOS提供的SDK说的很明白,在调试过程中走了点小弯路,不是驱动没弄对,就是JAR文件没弄对,最后总算可以了,把详细过程记录下来,跟大家分析,少走弯路。
SDK中的原始文件

Cognos的SDK中包括了第三方认证custom java provider的源代码实例,可以直接那过来调试和改造,不过是针对SQL SERVER数据库的,SDK中的路径地址如下:

bisdk_mp_win32_10.1.1_ml.tar.gz.zipfileswin32camaaasdk-win32-app-10.1.6235.602-inst.tar.gzsdkjavaAuthenticationProvider

解压后目录内容如下图:

eql_rac4.JPG


成JAVA认证JAR包

参见readme.txt的说明进行操作

进入文件目录

AuthenticationProviderJDBCSample

在CMD命令提示符下设定JDK的路径

为了保证JAR包的生成,需要根据自己机器上JDK的安装路径,设定JAVA的环境变量,执行如下:

G:AuthenticationProviderJDBCSample>set path=%path%;C:Program FilesJavajdk1.5.0_04bin

运行build.bat批出来,生成需要的JAR包

执行完命令目录会多了一下.class文件及一个CAM_AAA_JDBCSample.jar文件,生成结果如下:


编写配置文件JDBC_Config_Sample1.properties

用文本编辑器打开该文件,主要编辑下面2行:

server=localhost:1433

databaseName=JDBCSample

说明如下:

Server为要连接的SQL SERVER服务器的地址及端口;

databaseName为要连接的数据库

文件的名字中【Sample1】,跟后面在Cognos的Configuration中的配置的写法要一致。

准备数据库访问驱动

因为要访问的是SQL server 的数据库,驱动如下:sqljdbc.jar;

相关文件COPY到COGNOS目录数据库驱动文件

把sqljdbc.jar 复制到c10BiServer安装目录webappsp2pdWEB-INFlib下;

第三方认证JAR包文件

把在上一步生产的JAR文件(CAM_AAA_JDBCSample.jar)复制到c10BiServer安装目录webappsp2pdWEB-INFlib下;

数据库配置文件

把JDBC_Config_Sample1.properties复制到c10BiServer安装目录configuration下;

配置COGNOS禁止匿名访问

进入COGNOS 的Configuration,把运行匿名方式访问禁止,如下图:


新建名称空间

在【身份验证】节点右键新建【命名空间:dbAuth】,选择【自定义JAVA 提供程序】如下图:


rac_003.JPG

配置【名称空间】

如下图:


注意:

名称空间ID【Sample1】跟前面提到的JDBC_Config_Sample1.properties文件是一致的。

测试、保存、启动COGNOS

设定完后,测试没问题就可以启动Cognos了。

访问COGNOS的WEB SERVER进行验证Cognos 8.4出现的登录界面

如下图:

rac_005.JPG


Cognos 10.1出现的登录界面

如下图:

rac_002.JPG


输入用户名和密码登录

这个SDK的包里,直接使用的SQL SERVER的系统用户进行验证的,可以直接输入sa用户及密码,安装前面的配置没问题就直接看到COGNOS的首页面;

用户的访问

可以看到,展示的都是SQL SERVER的系统角色,如下图:


整个过程配置完成,COGNOS可以使用第三方的JAVA程序进行用户层面的登录

扩展应用

上面的应用只是实现的最基本的登录验证模式,在实际使用中肯定不这样使用,就需要改造代码,让用户的登录验证使用应用系统自带的用户和密码,代码的改造也很简单。

其他数据库的访问方式

要改造上面的代码,配置相应数据库的驱动和配置信息,在调整一下代码就可以。

再次更新针对DB2数据的修改,程序包如下:

程序包的改动如下:

1、针对DB库自己应用的用户的表的改动。(如果要集成到自己的代码中,就需要修改一个SQL就可以,改成自己表的验证逻辑);

2、数据源的访问写在配置文件中【JDBC_Config_Sample.properties】,配置文件中同时配置了一个admin的超级管理员,不走数据库的验证逻辑;

3、解压后直接运行srcbuild.bat就可以,直接编译成CAM_AAA_JDBCSample.jar包,如果jdk的安装路径跟build.bat中指定的有区别,只需要稍微改一下;

4、【JDBC_Config_Sample.properties】文件要放到BI SERVER安装目录下的configuration/下;

5、【CAM_AAA_JDBCSample.jar】文件要放到BI SERVER安装目录下的/webapps/p2pd/WEB-INF/lib/下;

6、非windows环境下,要给【CAM_AAA_JDBCSample.jar】文件赋予可执行权限,命令如下:chmod +x CAM_AAA_JDBCSample.jar;

7、在更新调试第三方认证是,更新【CAM_AAA_JDBCSample.jar】和、【JDBC_Config_Sample.properties】文件,一定要停掉cognos BI server并且把configuration窗口退出,而且要删除原来目录下的【CAM_AAA_JDBCSample.jar】和、【JDBC_Config_Sample.properties】文件,再重新copy,在调试过程中发现这2个文件会锁定,COPY覆盖是没提示,但却是没更新,只有在删除时给出提示被占用,所以一定要先删除在copy;

这下面是最近一个项目的,连接DB2的数据库,访问自己的用户表,在系统管理中也能载入出来用户的源代码,大家可以参考一下:

Selection_005.png

其实很简单,就2个步骤:

1、修改一段SQL语句,让访问自己库中的用户表;

2、登录验证成功后,把用户列表取出来,往cognos塞入一下,就OK;

2013-04-24
浏览27041
下载351

已下载用户的评价7.97分

您还未下载该资料,不能发表评价;
查看我的 待评价资源
li_jintaoli_jintao交互工程师yf2017-03-22
有用
谢谢分享!
liangjianliangjian软件开发工程师IBM2016-11-23
有用
十分感谢,有用
jjylysjjylys软件开发工程师xc2016-09-13
没用
这个有oracle的例子吗??
yunfeiyunfei软件开发工程师tdd2016-07-22
有用
有用,正打算配置第三方权限
mengxdmengxd商业智能工程师中科软2016-07-20
有用
十分感谢,有用
yqjr2014yqjr2014软件开发工程师yqjr2016-05-19
没用
真是一枚好贴
supermwangsupermwang软件开发工程师112016-05-17
没用
要是连oracle数据库 MS_JDBCDriver.java这个类要怎么进行修改?
zegzegzeg222zegzegzeg222软件开发工程师122016-04-22
没用
牛人啊。学习xia
一叶风吹过一叶风吹过商业智能工程师中电普华2016-03-21
没用
访问自己库里面的表需要修改的SQL在什么地方?
曹进曹进软件开发工程师某软件公司2016-03-10
没用
不错,感谢楼主分享

贡献者

sealink技术总监,sealink.com
X社区推广