OBIEE 12c中的部分访问权限

问题描述

我正在尝试在OBIEE 12c中实现节访问。我引用了一个Blog,并按照实现“节访问”的步骤进行操作。但是最终结果与预期不符。

博客链接:http://bisimplified.blogspot.com/2014/06/obiee-11g-datarow-level-security.html

首先,我创建了“ User_1”,并将该用户分配给“ BI Consumer”应用程序角色。

我只想向“ User_1”显示某些数据。

创建的初始化块。 这是我用来定义初始化块(数据源)的SQL语句:

select pc.category_name from dim_category ft,product_categories pc where ft.category_id=pc.category_id and lower(ft.username) = lower(':USER') .

enter image description here

(创建了初始化块的屏幕截图)

我将“默认”(字符串)分配给默认初始化程序,并检查“行明智的初始化”和“使用缓存”(初始化块(我们正在研究的块)->编辑变量目标->新建(变量) )。

enter image description here

(创建会话变量的屏幕截图)

否则,如果将Default Initializer保留为空,则在将Section变量分配给Application Role / User时提示错误。

enter image description here

(如果默认初始化程序为空,并尝试将Section变量分配给应用程序角色/用户,则显示错误消息的屏幕截图。)

会话变量可以做什么?

此后,我将此会话变量分配给“ BI Consumer”应用程序角色。

enter image description here

(将会话变量分配给“ BI使用者”应用程序角色的屏幕截图)

我要求对OBIEE 12c中的“实现节访问”提出建议,或者如果您要在上述步骤中添加任何内容,请纠正我。

解决方法

关于一般知识的综合答案:“部分访问权”用词不当。目的是“行级安全性”。

上面查询中提到的问题主要源于':USER'的使用,它很可能是“ weblogic”,并且谁拥有/没有该查询的数据。 必须使用实际带回数据的用户帐户来验证查询。

第二,由于查询设置为按行初始化,因此它必须带回代表变量名和​​实际值的值对。 Section_Variable | A类 Section_Variable | B类 等等

因此SQL必须拉出

选择 'Section_Variable', ft.category_name 从 .....

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...