zoukankan      html  css  js  c++  java
  • Saiku免登录嵌入其他系统使用(十一)

    Saiku免登录嵌入其他系统使用

    Saiku可通过iframe嵌入其他系统使用,但是正常情况下都需要先登录系统,然后还需要登录saiku,最后才能访问saiku中的数据

    下面来讲解一下如何使Saiku不需要二次登录直接嵌入系统便可访问saiku配置好的数据。(本来想尝试做单点登录的,后来由于懒惰 技术不纯熟 就换了个简单的方式...)

    思路:    saiku中的用户信息要与当前系统的用户信息一一对应,比如 当前系统有个用户名为zhangsan的用户,saiku里面也要建立一个zhangsan的用户,

        当前系统的用户密码可不用获取,默认设置saiku中用户的密码为123即可[在saiku中新建用户,用户名和系统中需要访问saiku数据的用户名保持一致,密码自己定,我这里设置为123]。

        根据当前系统登录的用户,获取当前系统登录的用户的登录名(userid)zhangsan,然后将用户名信息作为参数放到访问saiku的url中即可。

     

    Saiku新建用户:(admin登录Saiku系统)

     

    web项目新建 index.jsp, 页面内容:

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    
    <title>Saiku嵌入</title>
    
    </head>
    <body>
    <h3>saiku 本地 带 用户名和密码</h3>
     <iframe id="testEmbed" src="" width="100%" height="850" frameborder="0" > </iframe>  <!-- 这里src先设置为null,再通过jquery方法加载数据 -->
    </html>
    
    <script type="text/javascript" src="./jquery.js"></script> <!-- 这里是引用jquery,我这里是引用自己下载的,命名也是手工的,可根据自己的jquery路径名字进行更改哦-->
    <script  type="text/javascript">
    
    
    $(function() {// 初始化内容
    	var userid = "zhangsan"
    	alert(userid)
    	userid = userid.toUpperCase();  /*这是为了防止系统中登录不区分大小写,然saiku中的用户名都取大写,默认saiku用户的密码为123*/
    	alert(userid)
    	document.getElementById("testEmbed").src="http://10.22.33.44:8080/?username="+userid+"&password=123&plugin=false&mode=view#query/open//datasources/test.saiku"; 
    });  
    </script>
    </html>
    

      

    重点解析:

      http://10.22.33.44:8080/?username="+userid+"&password=123&plugin=false&mode=view#query/open//datasources/test.saiku

    其中:

      userid    :   是当前系统登录的用户名,同时也要保证在saiku中有相同用户名,并且用户访问test.saiku数据信息的权限(ps: test.saiku对应的cube访问权限也需要开放

      /datasources/test.saiku  :   是saiku中数据保存的路径  

      10.22.33.44:8080  ; 是访问saiku的url 

      userid  :  是一个变量,指代saiku的用户名信息,这里赋值为 ZHANGSAN (前提需要现在先在saiku中新建用户 ZHANGSAN,且密码为 123,角色信息可以默认为ROLE_USER)

    ps:关于saiku嵌入其他系统访问权限相关问题可参考以往的博客 saiku权限控制: https://www.cnblogs.com/DFX339/p/10318098.html

    简要概括:  根据当前系统登录的用户,在saiku中建立对应用户,通过saiku角色来控制访问saiku的文件以及cube信息的权限

     

  • 相关阅读:
    FLEX,图标操作,xml, 通信,实例
    FLEX 合并两个XML的属性
    在内核中如何获得系统的日期和时间
    delphi中生成空格的函数
    Delphi中使用@取函数地址的问题
    vc中产生随机数
    delphi里label显示多行文本的两种方法
    360,傲游,诺顿最新版,网页溢出防护原理
    VC使用Zlib对内存流进行压缩与解压缩
    【TXPManifest控件】Delphi使用XP样式的按钮等控件
  • 原文地址:https://www.cnblogs.com/DFX339/p/10488997.html
Copyright © 2011-2022 走看看