在一个BI系统中,一般都有多个用户同时使用。在进行分析时,每个用户只需看到他自己的数据即可。在BIEE中,实现方法如下:
一、 创建一张外部表,用于存放帐号信息。表名为user_info。字段分别为:ID,密码,显示名称,所属用户组。
二、 打开Admin Tool。把user_info这张表导进去(这张表也是放在数据仓库中)。
三、 在Admin Tool中,依次点击菜单栏上的 Manage-Security 。
四、 在Security Manager中,依次点击 Action-New-Group。在Name处输入“西城区”(这是张三所在的组),然后点击 Permissions。
五、 在打开的对话框中点击 Filters ,再点击 Add ,添加一个删选条件。然后依次点击“确定”推出。
六、 在 Adimin Tool 中依次点击 Manage - Variables 。在打开的窗口中,点击 Initialization Blocks ,然后在右边的面板中点击右键,选择 New Initialization Blocks 。输入名字为 AUTH 。
七、 点击“ Edit Data Source ”,在 Connection Pool 处选择对应的连接池。在空白处输入如下 SQL 语句:
select user_id, user_pas, user_group, user_name from user_info
where user_id = ':USER' and user_pas = ':PASSWORD'
注 : USER 和 PASSWORD 是两个系统参数,用于接收 Answers 登录界面的用户名和密码。
八、 点击“ Edit Data Target ” , 对应之前的 SQL 语句,新建 4 个参数,分别用接收取到的数据。
九、 保存资料库。为了使改动生效,重新启动“ Oracle BI Server ”这个服务。