Cognos 权限管理1.1.编写目的 (2)1.2.开发工具 (2)2.报表权限设置 (2)2.1.第三方目录管理器 (2)2.1.1.NTML (3)2.1.2.Sun ONE LDAP (5)2.1.3.IBM Cognos Service (13)2.1.4.Java Project (24)2.2.报表服务器权限管理 (25)2.2.1.cognos用户权限控制 (25)2.2.2.设置文件夹访问权限 (28)2.2.3.设置报表访问权限 (30)2.2.4.设置报表服务器功能权限 (31)2.2.5.cognos中增加新的分组 (32)2.2.6.cognos中增加新的联系人 (33)2.3.FrameWork权限管理 (34)2.3.1.FM控制报表发布包权限 (34)2.3.2.FM控制报表数据展示权限 (36)2.3.1.手动安全数据控制 (37)2.3.2.FM中查询项权限控制 (38)引言1.1.编写目的本文档是结合以往的开发经验,从实际报表开发出发,详细介绍了ReportNet报表设计流程、开发技巧,报表性能调优、FM建模规范及技巧讲解。
总结的文档希望对大家在日后的开发中带来帮助。
1.2.开发工具●FrameWork Manager10.1.0模型●Business Intelligence Server 32-bit 10.1.0 Windows Multilingual)报表服务器。
2.报表权限设置2.1.第三方目录管理器众所周知,cognos自身并不带用户管理模块,需要嵌入第三方的用户管理,可以使用sunone 的ldap服务器作为用户管理模块的较为常见,采用第三方管理报表服务器权限,首先要先将报表服务器的匿名访问设置为false,之后介绍我所用过的几种第三方软件。
2.1.1.NTMLNTML在众多方法中最简单,也最实用。
使用操作系统的用户账户来管理Cognos报表服务器的权限设置,即登录Cognos服务器的用户,也就是登录计算系统的用户。
创建步骤如下:1)名称空间选择NTML2)在Properties窗口中,对于NameSpaceID属性,指定唯一的标志符,如这块输入’NTLM’3)创建完成后,测试NTLM名称空间是否测试成功。
4)配置完成后将使用简单文件共享的勾去掉,保存配置,然后启动Cognos服务器。
5)登录报表服务器,选择NTLM名称空间,通过登录window的系统的用户名密码就能登录Cognos服务器了。
2.1.2.Sun ONE LDAP快速安装Sun ONE服务器,然后在Sun One中配置用户和分组。
SUN ONE的安装时,需注意以下两点:1.一定要装在英文目录下。
否则JAVA安装的时候,会到中文路径下去寻找安装文件,而JAVA本身并不支持在中文下搜索程序的能力,因此会一直在搜索,所以安装的时候会提示整个界面一直卡住,而JAVA又报ng错误,提示超出最大长度。
实际上,不是由于超出长度,而是由于中文不被识别。
会报如下的错误信息:2.设置计算机名,并增加后缀,如下:准备好Sun One安装软件,下面介绍Sun One的具体安装。
Cognos 8.3 + SunONE LDAP 集成方案.d3.下面是我在安装时的一些截图这块默认设的密码为admin1234,下面这块配置需要一定的时间,请耐心等待。
登录成功后,选择”User and Group”,创建用户和分组具体创建方法如下:选择Create Use->Base DN(top level of The Users and Group Tree)创建分组,并指定用户所在的分组,选择Create Group-> Base DN(top level of The Users and Group Tree)输入组名添加成员这块创建组并增加成员,包下面的错误,不知是啥原因,我的解决方法,就是先将group建好,通过编辑的方式再增加用户信息。
打开Cognos Configuration,配置SunOne Ladp,下面是配置截图登录报表服务器,选择LDAP名称空间,输入Sun One中配置好的用户名就能登录Cognos服务器了。
才能正常登录cognos connection门户,否则会报下面的登录错误如果手工停止了directory server,如下图此时如果当你退出Server Console,就会出现问题:重新登录报错报错信息如下:如果选择YES,将出现以下输入框,要去输入注:这个信息如果不会填写,就无法直接进入了。
但是有个方法可以解决这个问题:在“开始-运行”中执行services.msc进入“服务”清单,找到你所停掉的对应端口的directory server,这里我停的是389端口的directory server,将之重启即可。
此时,再次登录Server Console,即可。
2.1.3.IBM Cognos Service1.安装IBM Cognos Service软件双击Setup.exe 选择红色所指选项点击next点击next选择I accept 点击next选择I accept 点击next选择安装路径(与report net同路径)点击next 进入安装正在安装点击next完成安装2.安装Access Manager Tool,安装步骤如下:获取安装软件,选择custom -->如下图:下一步-->最后点击完成。
选择Default,点击Next选择 Locales for other languages,点击Next安装完成后配置信息密码:admin1234 lgt是计算机名这块设置需要一些时间,弹出下面界面表示配置成功3.在Cognos Service中配置用户和角色打开Configuration Manager, 点击编译和运行连个按钮,成功编译后,会在tools中自动配置一个administrator的用户信息,安装完后先点击创建新的连接配置,再点Cognos(local) 才出现编译和运行按钮,这块时间比较慢,耐心等待如下图tools中access manager的配置信息,密码刚开始时默认为null,直接登录就可以4.增加用户和角色信息打开cognos-tool》》AccessManagerAdminstration 新建用户:新建名称空间新建用户名和密码设置权限5.打开Cognos Configuration,配置 IBM Cognos Service名称空间,配置截图6.安装配置完成,输入用户名和密码即可访问报表服务器。
2.1.4.Java Project假如要把cognos和自己开发的门户集成的话,使用第三方的ldap服务器始终有所不便,比如增加一个用户的话要在门户的数据库中和sunone中同时增加一条记录,还要考虑数据同步的问题;再比如用户验证除了用户名密码外要增加一个验证码或者集成动态密码之类的,就显得非常复杂,因此企业在实施cognos的时候,自己开发一套用户管理程序,然后和cognos集成,这样做是很有必要的,下面我就简单说下这个自定义的用户管理库和cognos集成的插件的开发过程。
●开发代码请参考E:\workspace\CAMPS程序●程序开发完成后,通过eclipse导出一个名为LGTCAM.jar包文件,将此jar文件放到ibm\cognos\c10\webapps\p2pd\WEB-INF\lib目录下●打开Cognos Configuration配置,在身份认证那块新建一个名称空间选择”自定义java提供程序”,配置内容如下:●配置成功后点击test,测试新配置的PS程序是否测试通过。
●●如果要通过鉴权认证登录Cognos服务器,还需要将允许Cognos匿名登录改为false。
●●配置完成后保存,重启Cognos服务器,这时再去访问报表服务器,就会提示输入用户名和密码了。
2.2.报表服务器权限管理使用Sun One Ldap作为第三方进行Cognos的用户管理。
用SunOne中配置好的用户登录报表服务器2.2.1.cognos用户权限控制1)进入到Cognos Administrator管理界面2)选择安全->用户、组合角色->Cognos3)点击Cognos进入到Cognos自带的各种角色信息界面,找到”系统管理员”,进行权限设置。
4)点击”成员”,添加”gtaoli”为”系统管理员”的成员将显示列表中的用户前面打上勾,给系统管理员添加新的成员5)将系统管理员中的’任何人’成员删除。
注:不做此操作,则任何人都是服务器管理员,可以任意添加,删除和修改报表。
6)通过上面的设置,除了’gtaoli’之外,所有的用户不再具有cognos的所有权限了。
下面以其他用户的用户登录报表服务区,这时他不再具有”系统管理员的权限了”7)上面主要是给一个用户指定一个超级管理员的权限。
除了这些,也可给特定的组、用户赋权限,如下图给特定的组赋权限8)在这里可以增加新的成员,并父项中获取访问权限并设置权限2.2.2.设置文件夹访问权限对于设置文件夹权限的设置和用户角色权限设置类似,登录之后,选择要设置的文件夹权限。
用”系统管理员用户登录”设置步骤如下:1)点击文件夹属性图标,进入到权限设置界面2)将改写从父条目获取的访问权限前打上勾,删除里面的Cognos自带的角色信息3)添加可以访问此文件夹的用户4)设置该用户的访问权限5)设置完成后,除了”gtaoli”用户外,其他用户登录服务器后将看不到被设置的文件夹权限。
6)文件夹还可进行如下的设置.✓勾上“改写从父系条目获取的访问权限”。
✓勾选权限列表中的查询用户。
✓将查询用户的“写”和“设置策略”权限设置为“拒绝”。
(非常重要)✓点击“应用”完成修改。
✓“确定”以保存设置。
2.2.3.设置报表访问权限具体报表的权限设置和上面的文件夹权限设置类似,设置一张报表权限,只允许指定的”group”组查看报表具体设置步骤如下:1) 用系统管理员登录系统,点击属性,设置报表权限,删除所有的角色信息,并添加新的角色2)添加新的角色,即Sun One中增加的group3) 设置分组所拥有的权限4) 设置完成后,只有该分组下的用户才能访问该报表了,其他用户无此报表的操作权限。
2.2.4.设置报表服务器功能权限除了上面设置报表及文件夹权限操作外,还可设置报表的功能权限,如设置ReportNet Studio 功能菜单,只允许特定的用户才可能看到RS,设置步骤如下1)进入Cognos Administration->安全->功能->Report Studio->属性2)点击权限将要禁用的用户组添加进去,进行如下设置3)用其他用户登录不再具有RS功能权限4)除了设置RS的功能权限外,还可设置QS、错误详情等,可将”任何人”加入到进来,将其所拥有的权限设置成”拒绝”,那么这时除了系统管理员,其他用户均看不到错误详情。