使用Saiku角色权限控制Schema行级权限操作

article/2025/10/3 12:19:00

描述:saiku加载schema模型,选择维度或度量,动态组合要展示数据进行分析操作的工具。

话不多说,直接操作

1、用admin登陆saiku,点击A按钮,添加用户sa 如图:

2、设置用户名,密码,添加一个ROLE_SA

系统自带的角色信息:  ROLE_ADMIN ROLE_USER 新增ROLE_SA

3、数据源设置,如图
 

注意:这块配置总共有两种实现方式,a. security.enabled=true和security.type=one2one

b. security.type=lookup和security.mapping=ROLE_ADMIN=ROLE_SA通过自己系统的账号角色映射到ROLE_ADMIN即可,这块就不演示了。如果是多个角色映射使用逗号即可,如下:

 

 

这块添加方式也有两种,第一种就是上面描述的,第二种,如图:

4、schema数据模型通过mdx语句控制即可

5、重启saiku服务器,并清除浏览器缓存,使用sa用户登陆即可

表数据:

整的schema模型:

<Schema metamodelVersion='4.0' name='t_tests' quoteSql='false'><PhysicalSchema><Table name='t_tests'/></PhysicalSchema><Cube caption='t_tests' name='t_tests'><Dimensions><Dimension caption='t_tests' key='id' name='t_tests' table='t_tests'><Attributes><Attribute caption='area' datatype='String' hasHierarchy='false' keyColumn='area' name='area' table='t_tests' visible='true'/><Attribute caption='country' datatype='String' hasHierarchy='false' keyColumn='country' name='country' table='t_tests' visible='true'/><Attribute caption='province' datatype='String' hasHierarchy='false' keyColumn='province' name='province' table='t_tests' visible='true'/><Attribute caption='city' datatype='String' hasHierarchy='false' keyColumn='city' name='city' table='t_tests' visible='true'/><Attribute caption='street' datatype='String' hasHierarchy='false' keyColumn='street' name='street' table='t_tests' visible='true'/><Attribute caption='name' datatype='String' hasHierarchy='true' keyColumn='name' name='name' table='t_tests' visible='true'/><Attribute caption='id' datatype='String' hasHierarchy='true' keyColumn='id' name='id' table='t_tests' visible='false'/></Attributes><Hierarchies><Hierarchy name='ts' allMemberName='All t_test'><Level attribute='country'/><Level attribute='province'/><Level attribute='city'/><Level attribute='street'/></Hierarchy></Hierarchies></Dimension></Dimensions><MeasureGroups><MeasureGroup name='t_tests' table='t_tests'><DimensionLinks><FactLink dimension='t_tests'/></DimensionLinks><Measures><Measure aggregator='sum' caption='age' column='age' datatype='Integer' formatString='#,###.00' name='age' table='t_tests'/></Measures></MeasureGroup></MeasureGroups></Cube><Role name='ROLE_SA'><SchemaGrant access='none'><CubeGrant cube='t_tests' access='all'><HierarchyGrant hierarchy='[t_tests].[ts]' access='custom' topLevel='[t_tests].[ts].[country]'><MemberGrant member='[t_tests].[ts].[中国].[陕西省]' access='all'/><MemberGrant member='[t_tests].[ts].[中国].[广东省].[广州市]' access='all'/></HierarchyGrant><!--<HierarchyGrant hierarchy="[Measures]" access="custom"><MemberGrant member="[Measures].[age]" access="none"/></HierarchyGrant>--></CubeGrant></SchemaGrant></Role></Schema>

<MemberGrant member='[t_tests].[ts].[中国].[陕西省]' access='all'/>//控制该用户只能访问陕西省的数据
 <MemberGrant member='[t_tests].[ts].[中国].[广东省].[广州市]' access='all'/>//控制该用户只能访问广州市的数据

saiku官方api下载网址:https://download.csdn.net/download/joe192/11609529


http://chatgpt.dhexx.cn/article/qghDgpNd.shtml

相关文章

saiku java_saiku 3.8 二次开发代码整理步骤(20160727更新)

创建新项目saiku3 在创建的项目中&#xff0c;分别创建resource目录&#xff1a;“src/main/saiku-web”&#xff0c;“src/main/saiku-service”&#xff0c;“src/main/saiku-olap-util”&#xff0c;并将saiku-core下的相应代码(java目录下和resources目录下的文件)分别copy…

saiku连mysql 使用_saiku应用的调试

ubuntu下解压saiku包后使用&#xff1a; 运行.sh命令(.bat是windows命令)。运行时注意权限。可以先chmod ax *.sh 提示&#xff0c;catali&#xff1f;.sh出错。 这是tomcat的一个文件&#xff0c;服务器不行&#xff0c;先查权限&#xff0c;当前用户。 一般是java配置的不对。…

saiku java_saiku3.8二次开发项目搭建(非maven)

参考文章&#xff1a;http://blog.csdn.net/gsying1474/article/details/51603535 本文大部分参考了上面的博文&#xff0c;这里只是做一个记录&#xff0c;由于本人maven能力有限&#xff0c;尝试失败后这里搭建的是普通web项目。 saiku3.8项目搭建步骤&#xff1a; 1.下载sai…

saiku 连接 MySQL_saiku迁移至mysql步骤

saiku数据库的表和用户默认创建是在启动项目的时候&#xff0c;通过初始化 saiku-beans.xml 中的 h2database 这个bean执行org.saiku.service.Database类的init方法来初始化数据表和默认用户的。 默认用户迁移mysql步骤&#xff1a; 1.修改web.xml文件&#xff0c;修改名为db.u…

saiku 使用笔记

OlapException :Unable to find a member with name …… 报表可以查看&#xff0c;但是不能使用过滤器&#xff08;比如&#xff1a;keep only&#xff09; 点击后出现错误 备注&#xff1a;saiku 3.15 数据库为mysql 5.5 解决方法&#xff1a;将mysql5.5 服务关闭&am…

saiku java_Saiku的下载与安装(一)

Saiku- 数据可视化的工具&#xff0c;连接数据源展示数据&#xff0c;并且可方便导出xls/csv/pdf等文件的工具 一、Saiku下载 二、 Saiku安装 (将下载好的Saiku包放在任意盘目录&#xff0c;不需要配置关于Saiku的环境变量&#xff0c;前提 安装好JDK&#xff0c;配置好JAVA_HO…

saiku安装

saiku安装使用 经过一天的查询资料摸索&#xff0c;记录一下笔记&#xff0c;方便以后使用。 1、http://community.meteorite.bi/ 下载&#xff1b; 2、解压运行对应系统脚本文件。 3、访问8080可以进入登录页面。 4、https://licensing.meteorite.bi/login 注册账号登录。…

Saiku

参考 http://kylin.apache.org/blog/2019/05/23/saiku-kylin-molap/ https://mondrian.pentaho.com/documentation/schema.php 简介 Saiku 是一个用于 OLAP 分析的套件。用户可在浏览器中通过拖拽的方式进行分析。降低了使用者的学习成本。它能够连接多种数据源&#xff0c;…

saiku操作手册(第一课)

1. 准备资料 1. 管理员账号&#xff08;可以加qq群703185254、703185254咨询&#xff09; 2. schema文件&#xff08;备注中有准备&#xff0c;也可自己准备&#xff09; 3. 数据源。需要提前准备好foodmart的mysql数据库脚本。可以点击[下载]获得。 2 操作步骤 2.1 使用管…

saiku的简单配置及使用

一saiku的配置及使用 1 saiku主要页面介绍2 saiku配置步骤3 数据查询的简单使用示例4 saiku相关博客资料推荐 一、saiku的配置及使用 Saiku提供了一个多维分析的用户操作界面&#xff0c;可以通过简单拖拉拽的方式迅速生成报表。Saiku的主要工作是根据事先配置好的schema&a…

安装mysql提示3306端口已经被占用解决方案

今天遇到的问题是这样的&#xff0c;之前已经安装过mysql了&#xff0c;一直用的好好的&#xff0c;但是今天开启服务时报异常&#xff0c;无法启动。为了省事&#xff0c;于是想到卸载重装&#xff0c;在安装的过程中发现3306已经被占用&#xff0c;这也是一开始服务无法启动的…

centos如何对外开放80,3306端口号或者其他端口号

由于centos版本不同&#xff0c;开启端口号方式也不一样&#xff0c;centos6是iptables&#xff0c;centos7是firewall。 查看防火墙对外开放了哪些端口 iptables -L -n centos6.0防火墙操作&#xff1a; 配置文件&#xff1a;/etc/sysconfig/iptables 开启某个端口号有两种…

MySql安装出现3306端口!解决方法亲测成功

#MySql安装出现3306端口&#xff01; 分析原因1&#xff1a;其他程序占用了此端口 分析原因2&#xff1a;之前装了MySql没卸载&#xff0c;或没卸载干净&#xff0c;导致占用端口 亲测解决方法1&#xff1a; 第一步先打开任务管理器看有没有MySql的进程运行 右键选择打开文件…

mysql 的 3306、33060 端口区别

Port 3306 is the default port for the MySQL Protocol, which is used by the mysql client, MySQL Connectors, and utilities such as mysqldump and mysqlpump. Port 33060 is the default port for the MySQL Database Extended Interface (the MySQL X Protocol). 出处&…

MySQL的端口不止3306,还有33060、33061、33062等等

前提&#xff1a;你的Linux服务器上运行的是MySQL 5.7或MySQL 8.0 当使用netstat 命令查看网络状态时&#xff0c;你会发现mysqld占用了两个端口&#xff0c;分别是3306和33060。 netstat -tnulp | grep mysqld实际上&#xff0c;MySQL还使用了更多端口&#xff0c;更多权威信…

【踩坑】在linux服务器上配置mysql并开放3306端口

在做大作业&#xff0c;数据库零基础&#xff0c;折腾了一天才搞成功&#xff0c;特此记录一下踩过的坑。希望能帮到其他同学吧…… 有不对欢迎指出&#xff0c;谢谢啦&#xff01; 安装mysql 首先 sudo apt update sudo apt install mysql-server -y嗯&#xff0c;安装完了…

MySQL报错端口3306解决方法

安装MySQL时候回报错一些错误&#xff0c;比如文件中文名&#xff0c;但是比较最常见的就是端口号3306的占用。 在之前的MySQL安装&#xff1a;https://blog.csdn.net/qq_41879385/article/details/82215828&#xff0c;我就有遇到过这个问题。接下来看下面。 我们在安装的时…

mysql 的 3306、33060 端口区别,33060、33061、33062的区别,如何查看以及验证

当连接sql主机时&#xff0c;端口号3306、33060 端口有不同 如何验证 MySQL 服务器上的这些端口的值&#xff0c;以及这些端口的区别 MySQL使用不同的端口&#xff0c;在于使用的组件&#xff0c;启用的功能和应用程序的连接方式以及环境各方面因素 客户端 - 服务器连接端口…

如何实现 请在微信客户端打开链接

那就是判断useragent if (navigator.userAgent.match(/MicroMessenger/i) ! MicroMessenger){window.location.hrefwxerror.jsp;}

模拟微信接口时,提示“请在微信客户端打开链接”

背景描述 相信有模拟微信页面请求的测试都有看到过这个页面,简单点说就是爬虫爬微信页面,进行回放的时候会出现这个页面。大概在1年前,专门安排了一个人去解决这个技术问题,遗憾的是当时没有找到解决方案,接下来所有微信端的接口测试和性能测试都无法进行,今天和大家分…