Saiku权限控制(四)
Saiku的权限控制主要包含两方面的权限: 数据源(Cube)权限控制 和 保存好的文件以及目录权限控制
一、新增Saiku用户信息与角色信息
Saiku默认的用户就是admin,这也是权限最高的一个用户,admin用户的角色是 ROLE_ADMIN
admin用户可以查看到其他用户的文件目录信息,能新增用户,新增角色,也只有admin能操作管理控制平台.
1.1 Saiku新增用户
1> 登录saiku后,点击 A 进入管理控制台
2> 进入用户管理栏位 User Management
3> 添加用户信息 Add User
4> 依次填写右侧的 用户名 邮件地址 密码信息 (这里创建report用户)
1.2 Saiku 新增角色
5> 添加角色信息 Add new role (Saiku默认有两个角色 ROLE_ADMIN / ROLE_USER ,如果你在创建用户的时候不指定角色 系统会默认为你指定 ROLE_USER角色)
6> 添加自定义角色信息 如果你不想使用系统角色也可以自己直接新建角色信息,在 Add new role 栏位输入新的角色信息(名字自定) ROLE_READ 然后点击 Add Role,该角色就会出现在Existing role框框中
7> 移除角色信息 如果添加了不需要的角色信息 可以在Existing role框中点击那个角色,然后点击下方的 Remove Selected one 按钮,就可以把角色信息移除了
8> 保存用户信息 用户基本信息都填写好后 点击 save user ,保存用户信息。
二、文件以及目录权限控制
以管理员的身份 admin用户登录系统,进入文件目录
1> 打开Reporitory(存储文件信息的仓库)
2> 进入datasources目录 (用于保存配置好的报表数据的文件目录)
3> 点击右侧的 人物标识图标 ,点击后弹出右侧框框 【如果不选择具体的文件则是对datasources目录做权限控制,如果选中了具体文件再点击右侧 人物标识图标 则是对具体文件做权限控制】
4> 添加角色信息 输入角色名称 ROLE_READ (这里的角色信息需在UserManager已经添加或者系统已经存在的角色信息)
5> 选定角色权限 读、写、同意, 读(意思是指定角色能读取此目录的信息,能写数据进入当前目录或者修改数据,能修改目录的权限信息)
6> 点击添加按钮,就会在角色框看到刚刚添加的角色信息
7> 再点击下方的 OK 按钮,则添加成功。
8> 可退出系统,重新启动saiku服务器,登录拥有指定权限角色的用户信息,然后就能进行验证。 report用户登录,就会发现report用户登录后只能看到datasources目录,但是无法做修改或新增数据信息。
注意: Admin用户能看到所有用户的目录信息
三、 MDX数据源权限控制
系统自带的角色信息: ROLE_ADMIN ROLE_USER,自己新增的角色: ROLE_READ
在XML文件中新增角色配置信息,记得在xml文件的最下方添加哦 [<Schame>标签以内,所以<Cube>标签的下方]。
本例中在 配置datasources数据源信息时引用的xml文件为report.xml ,故在report.xml文件中添加如下配置
ps: 修改report.xml文件后记得在saiku上替换report.xml文件,然后退出 saiku 重新登录,记得清除浏览器的缓存信息!!!
最后请记得配置:
1》 如果不是Advance里面进行配置数据源的话就在配置datasources最后 security 处选择: One To One Mapping
security.type=one2one
<!--配置权限-->
<Role name="ROLE_READ"><!-- ROLE_READ访问Cube:测试数据量1w, NB,NB2 -->
<SchemaGrant access='none'>
<CubeGrant cube='测试数据量1w' access='all' />
<CubeGrant cube='NB' access='all' />
<CubeGrant cube='NB2' access='all' />
<CubeGrant cube='Summary' access='all' />
</SchemaGrant>
</Role> <Role name="ROLE_USER"><!--ROLE_USER不能访问 -->
<SchemaGrant access='none' />
</Role> <Role name="ROLE_ADMIN"><!--ROLE_ADMIN访问所有 -->
<SchemaGrant access='all' />
</Role>
admin用户登录的效果图:(能看到所有的数据源信息) 角色:ROLE_ADMIN
report用户登录的效果图: 只能看到指定的cube数据源信息 角色:ROLE_READ
Saiku权限控制(四)的更多相关文章
- Laravel 5.1 ACL权限控制 四 之middleware
1.创建Middleware php artisan make:middleware MustBeAnAdmin 2.实现 MustBeAnAdmin.php中的handle方法,判断登录的用户是否为 ...
- shiro权限控制入门
一:权限控制两种主要方式 粗粒度 URL 级别权限控制和细粒度方法级别权限控制 1.粗粒度 URL 级别权限控制 可以基于 Filter 实现在数据库中存放 用户.权限.访问 URL 对应关系, 当前 ...
- Java基础之访问权限控制
Java基础之访问权限控制 四种访问权限 Java中类与成员的访问权限共有四种,其中三种有访问权限修饰词:public,protected,private. Public:权限最大,允许所有类访问,但 ...
- 认证鉴权与API权限控制在微服务架构中的设计与实现(四)
引言: 本文系<认证鉴权与API权限控制在微服务架构中的设计与实现>系列的完结篇,前面三篇已经将认证鉴权与API权限控制的流程和主要细节讲解完.本文比较长,对这个系列进行收尾,主要内容包括 ...
- webapi框架搭建-安全机制(四)-可配置的基于角色的权限控制
webapi框架搭建系列博客 在上一篇的webapi框架搭建-安全机制(三)-简单的基于角色的权限控制,某个角色拥有哪些接口的权限是用硬编码的方式写在接口上的,如RBAuthorize(Roles = ...
- 项目一:第十二天 1、常见权限控制方式 2、基于shiro提供url拦截方式验证权限 3、在realm中授权 5、总结验证权限方式(四种) 6、用户注销7、基于treegrid实现菜单展示
1 课程计划 1. 常见权限控制方式 2. 基于shiro提供url拦截方式验证权限 3. 在realm中授权 4. 基于shiro提供注解方式验证权限 5. 总结验证权限方式(四种) 6. 用户注销 ...
- Spring Boot + Spring Cloud 实现权限管理系统 后端篇(二十四):权限控制(Shiro 注解)
在线演示 演示地址:http://139.196.87.48:9002/kitty 用户名:admin 密码:admin 技术背景 当前,我们基于导航菜单的显示和操作按钮的禁用状态,实现了页面可见性和 ...
- (二十四)权限控制(粗粒度)-通过filter
扩展:权限控制(粗粒度)-通过filter 过滤器编写步骤: 1.编写一个类 实现filter接口 重写方法 2.编写配置文件 <filter> <filter-mapping> ...
- MongoDB 安全和访问权限控制
MongoDB的访问控制能够有效保证数据库的安全,访问控制是指绑定Application监听的IP地址,设置监听端口,使用账户和密码登录 一,访问控制的参数 1,绑定IP地址 mongod 参数:-- ...
随机推荐
- MySQL学习(十四)
utf8的bom问题 在xp下,用记事本创建utf8文件的时候,前面多了3个字节,这3个字节不用来显示,是用来辨识编码用的,EF BB BF告诉记事本,这是utf8编码. 存储引擎和事务简单介绍 引擎 ...
- (转)Lua的table库函数insert、remove、concat、sort详细介绍
原帖链接:http://www.jb51.net/article/64711.htm#comments 有增注标识的地方为额外注释,非原帖内容. 函数列表:(增注:只能用于数组!) table.ins ...
- Python -- jpype JVM的第三方库使用
Python -- jpype 安装 jpype 如图:直接执行 命令:pip install jpype 可见失败,提示没有版本信息 可以使用 pip search jpype 查看相关版本信息 ...
- Python全栈开发-有趣的小程序
进度条的打印 import sys,time for i in range(20): sys.stdout.write('$') #stdout是标准输出的意思,在一般电脑上,stdout的 ...
- legend2---开发日志5(如何解决插件的延迟问题,比如vue)
legend2---开发日志5(如何解决插件的延迟问题,比如vue) 一.总结 一句话总结:元素可以先设置为隐藏,这样就不会让用户看到延迟的问题,然后等加载完再显示, 元素先设置为隐藏 加载完再显示 ...
- boke练习: @PreAuthorize authentication.name.equals的数据绑定与验证
boke练习: @PreAuthorize authentication.name.equals的数据绑定与验证 先看2个简单的例子: 一 @PostMapping("/{username} ...
- 4步win7下简单FTP服务器搭建(试验成功)
本文介绍通过win7自带的IIS来搭建一个只能实现基本功能的FTP服务器,第一次装好WIN7后我愣是没整出来,后来查了一下网上资料经过试验后搭建成功,其实原理和步骤与windows前期的版本差不多,主 ...
- caffe---mnist数据集训练与测试
1.数据.mnist_test_lmdb和mnist_train_lmdb数据 2.路径. (1)修改lenet_train_test.prototxt文件,训练和测试两处 source: " ...
- Confluence 6 如何保持我空间的整洁
如果你有很多用户在同一个空间中编辑和创建内容,你的空间将会很快的变得混乱不堪.你可以使用下面的一些步骤来避免这个的发生. 创建一系列的指南 让你的合作编辑用户知道创建页面的上级页面是什么,这样可以保证 ...
- 架构探险笔记5-使框架具备AOP特性(下)
开发AOP框架 借鉴SpringAOP的风格,写一个基于切面注解的AOP框架.在进行下面的步骤之前,确保已经掌了动态代理技术. 定义切面注解 /** * 切面注解 */ @Target(Element ...