Biee 11g权限详解
前言:BIEE11g的权限较之前10g版本有了较大的变化,最明显的地方就是构架上的变化,其与 Oracle Fusion Middleware Security 紧密的集成在了一起。
在开始之前先让我们来了解一些基本概念:
1、认证(Authentication):所谓认证,就是校验用户名和密码是否正确,正确就通过认证,反之则不通过
2、授权(Authorization):授权就是给用户赋予相应的权限,比如userA是否可以查看报表B。
用户登录BIEE的过程,就包含这两个过程;首先用户提供用户名和密码交由BIEE校验,如果正确才会进行授权,否则直接提示用户名密码错误。要记住,认证和授权是分离的!
在10g的时候,默认情况下(不考虑LDAP和外部表),用户和组的信息是存在RPD里的。而11g则存放到了与之关联的Weblogic域内置LDAP服务器里了。同时,在10g的时候存在用户和组(Group)的概念,11g则新引入了角色的概念(Role),并将BIEE内部权限的授予对象变成了现在的用户和角色(Role)。
简单来说,你可以把11g中的角色(Role)等于同10g的组(Group),那么11g的组(Group)呢?他又是干什么的呢?其实这个组是位于内置LDAP服务器里的组,其对BIEE来说不可见。组和角色的分离有什么好处呢?
这是安装完毕之后默认的权限配置情况,可以看到User1,User2,User3属于BIConsumers这个组,BIConsumers这个组属于BIConsumer这个角色,依此类推。另外还要注意到角色之间是有继承关系的,而组之间是没有继承关系的。
组是存放在Weblogic的内置LDAP服务器里的(为了方便,通常我们可能会说其存在console里的,因为我们是使用console来管理weblogic服务器)
角色是存放在Policy Store里的(默认是基于xml文件的,名叫system-jazn-data.xml),其通过 Oracle Enterprise Manager 来进行管理的(同样的,通常我们也会说其是存放在em里的)。
Note:
console的访问方式 http://xxxx:7001/console
em的访问方式 http://xxxx:7001/em
Stores的东西我们还没提到,它是干什么的呢?顾名思义,其就是用来存放一些凭据(比如密码)的,大家都知道11g的RPD是有密码的,这个密码是我们自定义的,那我们把这个RPD上传到服务器之后,服务器怎么能打开这个RPD呢?它也得需要密码啊,既然需要,那么就得有一个地方来存储这个密码吧?
下面我们来串一下整个登录过程,回答一下前面的问题,结束今天的内容。
默认的用户、组及角色如下图所示:
点击左下角的“new”按扭,就可以新建用户了;同理,切换到“组(Groups)”标签,就可以新建组了,具体过程大家可以按提示操作即可。
点击我们想要分配组的用户名,进入用户属性设置界面,可以看到有4个标签
为什么?
因为角色(用户)在报表上的权限是直接写到对应报表同名的atr文件中的,如果有100个用户需要访问某一张报表,按照用户授权的方式我们就需要对该报表操作一100次,以完成对100个用户的授权;而采用角色的方式,我们可能只需要创建一个角色,然后在报表上对该角色授一次权,最后把100个用户挂到这个角色上就可以了。
看到这里,也许有朋友会问了,虽然后者你只授一次权,但是你需要把100用户添加到这个角色里,你得添加100次啊。没错,不过把用户添加到角色里就相对来说要容易得多了。
因为虽然默认情况下BIEE是使用的Weblogic内置的LDAP作为认证源,且只能通过console来管理用户(console用户的管理功能太薄弱),但是实际上在真正的企业应用环境中,我们都会将BIEE与企业已有的认证源(企业已有的LDAP服务器或者存放了用户信息的关系数据库)进行集成,而这些认证源中通常都会有组的概念,且可以支持批量添加用户到组的操作,我们只需简单把组和角色做一个映射就可以完成用户到角色的关联。
Biee 11g权限详解的更多相关文章
- 【Linux学习】Linux下用户组、文件权限详解
原文地址:http://www.cnblogs.com/123-/p/4189072.html Linux下用户组.文件权限详解 用户组 在linux中的每个用户必须属于一个组,不能独立于组外.在li ...
- Linux "ls -l"文件列表权限详解
ls Linux "ls -l"文件列表权限详解 1.使用 ls -l 命令 执行结果如下(/var/log) : drwxr-x--- root adm -- : apache2 ...
- MySQL权限详解
MySQL权限级别介绍 MySQL权限级别 全局性的管理权限,作用于整个MySQL实例级别 数据库级别的权限,作用于某个指定的数据库上或者所有的数据库上 数据库对象级别的权限,作用于指定的数据库对象上 ...
- Linux 用户及权限详解
Linux 用户及权限详解 用户 , 组 ,权限 安全上下文(secure context): 权限: r,w,x 文件: r : 可读,可以使用类似cat 等命令查看文件内容. w : 可写,可以编 ...
- Linux之权限详解
如何知道你有什么权限 我能干什么?这是我最关心的问题! 切换到普通用户 [root@luffy-01 ~]# su - pizza [pizza@luffy-01 ~]$ ls /root ls: c ...
- Linux学习之文件特殊权限详解(SetUID、SetGID、Sticky BIT)(十一)
Linux学习之文件特殊权限详解(SetUID.SetGID.Sticky BIT) 目录 SetUID SetGID Sticky BIT SetUID SetUID简介 只有可以执行的二进制程序和 ...
- Linux学习之ACL权限详解(十)
Linux系统ACL权限详解 目录 ACL权限简介与开启 查看与设定ACL权限 最大有效权限与删除ACL权限 默认ACL权限和递归ACL权限 ACL权限简介与开启权限 ACL权限简介 用户权限管理始终 ...
- Linux权限详解 命令之 chmod:修改权限
权限简介 Linux系统上对文件的权限有着严格的控制,用于如果相对某个文件执行某种操作,必须具有对应的权限方可执行成功. Linux下文件的权限类型一般包括读,写,执行.对应字母为 r.w.x. Li ...
- linux shell 脚本攻略学习12--文件权限详解,chmod命令详解,chown命令详解,chattr命令详解
文件权限详解 一.chmod命令详解 文件权限和所有权是Unix/Linux文件系统最显著的特征之一.linux中的每一个文件都与多种权限类型相关联,在这些权限中主要分类为3种: 用户(User)是文 ...
随机推荐
- 炉石传说 C# 开发笔记(6月底小结)
炉石传说的开发,已经有30个工作日了. 关于法术的定义方法,有过一次重大的变更:法术效果是整个炉石的核心,正是因为丰富的法术效果,才造就了炉石的可玩性. 原来构思的时候,对于法术效果没有充分的理解,所 ...
- MVC5+EF6 入门完整教程13 -- 动态生成多级菜单
稍微有一定复杂性的系统,多级菜单都是一个必备组件. 本篇专题讲述如何生成动态多级菜单的通用做法. 我们不用任何第三方的组件,完全自己构建灵活通用的多级菜单. 需要达成的效果:容易复用,可以根据mode ...
- onblur鼠标失去焦点事件
- Can't install mysql-python version 1.2.5 in Windows
Can't install mysql-python version 1.2.5 in Windows http://stackoverflow.com/questions/37092125/cant ...
- 第 13 章 CSS 选择器[上]
学习要点: 1.选择器总汇 2.基本选择器 3.复合选择器 4.伪元素选择器 主讲教师:李炎恢 本章主要探讨 HTML5 中 CSS 选择器,通过选择器定位到想要设置样式的元素.目前 CSS 选择器的 ...
- 【局部特征】ASIFT
由于相机正面白摄物体时,相机的光轴方向可能发生变化,带来扭曲.而SIFT算法虽具有完全的尺度不变性,但不具有完全的仿射不变性,对拍摄角度发生大角度空间变化的图像特征提取有一定的局限性.ASift通过模 ...
- 改写百度云推送SDK,PHP PEAR 包:Services_Baidu_Push
iPhone使用apple push很方便,而Android很多厂商删除了google push,而且google在大陆连不上,所以要用别的办法. Android常见的推送服务商有:极光推送(http ...
- [读码]HTML5像素文字爆炸重组
[边读码,边学习,技术也好,思路也罢] [一款基于HTML5技术的文字像素爆炸重组动画特效,我们可以在输入框中指定任意文字,点击确定按钮后,就会将原先的文字爆炸散去,新的文字以像素点的形式组合起来,看 ...
- document.querySelector和querySelectorAll方法
querySelector和querySelectorAll是W3C提供的新的查询接口,其主要特点如下: 1.querySelector只返回匹配的第一个元素,如果没有匹配项,返回null. 2.q ...
- javascript 对象初探(二)--- 返回对象的函数
除了使用new操作符调用构造函数以外,我们也可以抛开new操作符,只用一般函数来创建对象,这样就能执行某些预备工作,并已对象为返回值的函数.. function her(){ return { nam ...