Oracle BIEE 12c用户权限系统操作文档(下)
本文涉及用户、用户组和应用程序角色系统的操作和对oracle 11g数据库、hive、Impala三种数据源的分用户项目视图权限细粒度权限管理操作。
以下操作均为个人研究成果,研究整理不易,这里分享出来是希望能和大家共同探讨,不足之处还望指出。
四、安装windows端的Oracle BIEE
因OBIEE的BI 管理工具只在Windows版本的BIEE存在(官网和博客多次确认),需在windows端下载对应版本BIEE安装,安装同时会自动在Windows端安装相应ODBC驱动,安装过程可参考Linux版本BIEE安装过程(无需配置环境变量,文件夹路径相似,Linux的.sh操作在Windows对应.cmd操作)
五、配置Windows端ODBC
1.Windows自带搜索程序和文件中搜索”“ODBC”,并打开
2.点击“系统DSN”,选择“添加”
3.列表中选择“Oracle BI Server”,“完成”
4.填入“名称”和“服务器IP”,“下一步”
5.浏览器登陆融合中间件控制界面:http://ip:9500/em,点击“biinstance”
6.点击“可用性”,打开“BI Server”,查看对应的端口(这里是9515)
7.回到ODBC配置界面,将第6步得到的端口号填入,点击“下一步”,“完成”
六、连接Linux端BI Server
1.启动BI 管理工具
在Windows下的BIEE安装目录$Oracle_ Home/user_projects\domains\bi\bitools\bin下找到“admintool.cmd”,双击打开。
2.点击第三个文件夹图标“联机打开”选项
3.此方法不推荐,为第2条备选方案,这里仅作了解:
选择脱机打开RPD文件进行编辑,需要使用BIEE自带工具命令提取RPD:/opt/oraBI/Middleware/Oracle_Home/user_projects/domains/bi/bitools/bin./datamodel.sh downloadrpd -O obiee.rpd -SI ssi -U adminusername -P adminpassword
将RPD文件传到Windows系统的BI管理工具打开、编辑、保存,再反传回Linux系统中,使用BIEE自带工具命令上传RPD:
/opt/oraBI/Middleware/Oracle_Home/user_projects/domains/bi/bitools/bin/datamodel.sh uploadrpd -I obiee_new.rpd -SI ssi -U adminusername -P adminpassword
重启BIEE。
4.选择之前创建的ODBC驱动,输入BIEE的管理员“用户”和“口令”并“打开”
5.如图这里会显示BIEE数据的三层结构,优秀的习惯是学好数据建模,下面先介绍Impala数据源的简单导入方式
七、导入数据源元数据
- Impala数据源
1.修改Linux系统BIEE的obis.properties文件:
vi /opt/oraBI/Middleware/Oracle_Home//user_projects/domains/bi/config/fmwconfig/bienv/OBIS/obis.properties
配置如下内容(HADOOP_DLL是为连接hive数据源配置的,只用Impala可省略):
LD_LIBRARY_PATH=/opt/oraBI/Middleware/Oracle_Home/bi/modules/oracle.bi.datadirect.odbc/7.1.4/lib,
/opt/oraBI/Middleware/Oracle_Home/bi/bifoundation/server/bin,
/opt/oraBI/Middleware/Oracle_Home/bi/bifoundation/web/bin,
/opt/oraBI/Middleware/Oracle_Home/bi/clients/Essbase/EssbaseRTC/bin,
/opt/oraBI/Middleware/Oracle_Home/bi/modules/oracle.bi.datadirect.odbc/8.0.2/lib,
$ORACLE_INSTANCE,
/usr/lib64,
/opt/oraBI/Middleware/Oracle_Home/lib
HADOOP_DLL=/opt/oraBI/Middleware/Oracle_Home/bi/modules/oracle.bi.datadirect.odbc/8.0.2/lib/ARhive28.so
2.修改Linux系统BIEE的odbc.ini文件:
vi /opt/oraBI/Middleware/Oracle_Home/user_projects/domains/bi/config/fmwconfig/bienv/core/odbc.ini
添加如下内容;
[Impala]
Driver=/opt/oraBI/Middleware/Oracle_Home/bi/modules/oracle.bi.datadirect.odbc/7.1.4/lib/ARimpala27.so
Description=Oracle 7.1 Impala Wire Protocol
ArraySize=16384
Database=default
DefaultLongDataBuffLen=1024
DefaultOrderByLimit=-1
EnableDescribeParam=0
HostName=xxx.xxx.x.xxx
LoginTimeout=30
MaxVarcharSize=2000
PortNumber=21050
RemoveColumnQualifiers=0
StringDescribeType=12
TransactionMode=0
UseCurrentSchema=0
WireProtocolVersion=2
3.重启BIEE的obis服务
cd /opt/oraBI/Middleware/Oracle_Home/user_projects/domains/bi/bitools/bin
./stop.sh -i obis1
./start.sh -i obis1
4.打开Windows系统的ODBC配置界面,选择“系统DSN”,点击“添加”,在列表中找到“Oracle 7.1 Impala Wire Protocol”,点击“完成”
5.添入ODBC名称(Impala),添加Impala的主机的ip、端口号(21050)和数据库名称(default)
6.点击下方的“Test Connect”,输入登陆Impala的Linux系统账户名称和密码,点击“ok”
7.出现该提示表示成功,即可保存退出ODBC编辑
8.打开BI 管理工具,依次选择左上方的“文件”、“导入元数据”
9.连接类型选择“ODBC 3.5”,列表中选择“Impala”,填入Linux系统登陆Impala的用户名、密码,点击“下一步”,再次“下一步”,
10.选择要导入的库(default),添加进右侧“资料档案视图”,点击“完成”,等待元数据导入完毕自动退出
11.在“物理层”中可见刚刚导入的数据库“Impala”,右键点击“Impala”库中的表,选则“属性”,点击“检出”
12.点击“外键”和“+”
13.添加与之关联外键的另一张表(BIEE硬性规定添加的表需要外键关联,可随意关联一表来使检查通过)
14.选择一张表,点击“选择”,在两张表中随意选择类型相同的两个列的名称进行关联,点击“确定”
15.右键点击“Impala”,选择“属性”,会提示“数据库具有只读属性。是否要检出它?”,点击“是”
16.点击“功能”,点击“重置为默认值”,点击“确定”(OBIEE 12C有微小的改动,需要重置下默认功能,否则接下来会错误提示)
17.按住物理层的“Impala”,将其拖动至“业务模型和映射层”,再拖动至“表示层”,在这两层中可为数据库(Impaladb)和列名进行自定义名称显示
18.点击BI管理工具左上角“检入更改”,待同步检测无误后点击保存图标进行保存
19.表示层的数据集会以主题区域的形式出现在http://ip:9502/dv/ui中,默认所有用户可见(有时需等待数分钟,并重新登录后可见)
- Oracle数据库数据源
1.打开BI管理工具,依次点击“文件”,“导入元数据”,连接类型选择“OCI 10g/11g”填入数据库连接信息,点击“下一步”,“下一步”,选择要添加的表,添加,“完成”
2.余下步骤和导入Impala表类似,参照Impala数据源第12-19条操作即可
(三)hive数据源
1.修改Linux系统BIEE的obis.properties文件:
vi /opt/oraBI/Middleware/Oracle_Home//user_projects/domains/bi/config/fmwconfig/bienv/OBIS/obis.properties
配置如下内容(若配置过Impala,此步可省):
LD_LIBRARY_PATH=/opt/oraBI/Middleware/Oracle_Home/bi/modules/oracle.bi.datadirect.odbc/7.1.4/lib,
/opt/oraBI/Middleware/Oracle_Home/bi/bifoundation/server/bin,
/opt/oraBI/Middleware/Oracle_Home/bi/bifoundation/web/bin,
/opt/oraBI/Middleware/Oracle_Home/bi/clients/Essbase/EssbaseRTC/bin,
/opt/oraBI/Middleware/Oracle_Home/bi/modules/oracle.bi.datadirect.odbc/8.0.2/lib,
$ORACLE_INSTANCE,
/usr/lib64,
/opt/oraBI/Middleware/Oracle_Home/lib
HADOOP_DLL=/opt/oraBI/Middleware/Oracle_Home/bi/modules/oracle.bi.datadirect.odbc/8.0.2/lib/ARhive28.so
2.修改Linux系统BIEE的odbc.ini文件:
vi /opt/oraBI/Middleware/Oracle_Home/user_projects/domains/bi/config/fmwconfig/bienv/core/odbc.ini
添加如下内容;
[Hive]
Driver=/opt/oraBI/Middleware/Oracle_Home/bi/modules/oracle.bi.datadirect.odbc/8.0.2/lib/ARhive28.so
Description=Oracle 8.0 Apache Hive Wire Protocol
ArraySize=16384
Database=default
DefaultLongDataBuffLen=1024
EnableDescribeParam=0
HostName=xxx.xxx.x.xxx
LoginTimeout=30
MaxVarcharSize=20000
PortNumber=10000
RemoveColumnQualifiers=0
StringDescribeType=12
TransactionMode=0
UseCurrentSchema=0
3.重启BIEE的obis服务
cd /opt/oraBI/Middleware/Oracle_Home/user_projects/domains/bi/bitools/bin
./stop.sh -i obis1
./start.sh -i obis1
4.打开Windows系统的ODBC配置界面,选择“系统DSN”,点击“添加”,在列表中找到“Oracle 8.0 Apache Hive Wire Protocol”(使用最新版本驱动),点击“完成”
5.添入ODBC名称(Impala),添加hive的主机的ip(xxx.xxx.x.xxx)、端口号(10000)和数据库名称(default)
6.余下步骤和impala类似,参照Impala数据源6-19操作即可
八、为用户组设置资源访问权限
1.打开BI管理工具,点击“管理”,列表中选择“身份”
2.点击“操作”,“同步应用程序角色”,待同步完成后点击“应用程序角色”,可见到之前新建的角色“testrole”
3.双击该角色,在弹出的框中点击“检出”,点击“权限”
4.其中“对象权限”可设置表和库的可见性,这里通过“数据过滤器”实现角色对表的细粒度控制,点击“数据过滤器”
5.单击“名称”下方空白区域添加一个要控制的表(以book为例),点击“选择”
6.点击“数据过滤器”下空白区域,然后点击“编辑表达式”
7.选中“book”表,“id”列,添加到右侧编辑区域,添加过滤条件(这里点击“=”,输入1,如图"Impaladb"."book"."id" = 1),依次点击“确定”退出编辑
8.回到BI管理工具点击“检入更改”并“保存”
九、创建共享项目
1.由管理员账户登录http://ip:9502/dv/ui,点击“创建”,“项目”,添加数据集中的“Impaladb”主题区域,选中“book”表,数据展示效果如下:
2.将项目“另存为”到“共享文件夹”下,可使所有用户可见
3.使用前面新建用户“jeery”登录http://ip:9502/dv/ui ,在共享文件夹中找到之前新建的项目,数据展示效果如下(只显示数据过滤器过滤后的数据):
4.默认其他用户对该项目只有查看权限,没有修改和删除权限,至此权限管理功能全面实现。