如何实现报表集成(二)

Smartbi大数据分析平台

功能覆盖数据分析全流程,一站式平台,产品功能可组合!

申请试用

Smartbi大数据分析平台

功能覆盖数据分析全流程,一站式平台,产品功能可组合! 申请试用

如何实现报表集成(二)

在上一篇,我们对报表集成进行了一个整体的介绍,从报表集成的背景、痛点、需求、集成架构等几个方面进行了阐述。这一篇,我们来聊一下用户同步和单点登录。


  • 用户同步

用户同步是指有多套系统(包括 Smartbi 电子表格软件)都拥有用户信息,想要当以第三方系统作为统一用户管理平台时,需要将第三方系统的用户同步到 Smartbi 电子表格软件中。第三系统要集成 Smartbi 电子表格软件,通常都是要先从第三方系统单点登录电子表格软件之后,才能把首页、报表资源和功能模块集成过去的,否则第三方每次打开集成的URL链接都需要跳转到登录页面重新输入用户名和密码登录,所以在系统集成的时候,客户都要求做一个单点登录(SSO,Single Sign On,通常即为免密登录)。而要做单点登录,则需要第三方系统和电子表格软件系统的用户保持一致,第三方系统单点登录的用户要保证在电子表格软件也存在,才能完成单点登录,否则不可单点。


介绍几种用户同步的几种方法:

用户同步方法

方案简述

特点

通过存储过程或 ETL 同步用户

使用存储过程或 ETL 定时将第三方系统中的用户等信息同步到 Smartbi 用户表中

数据库底层同步用户,速度快

不依赖系统是否启动

支持定时同步

通过API接口同步用户

在第三方系统中使用 Smartbi 用户管理的远程调用接口实现用户等信息的同步

可监听第三方系统的用户变化,做到实时同步

通过Excel导入同步用户

通过Smartbi提供的Excel模板将用户信息导入到Smartbi中

实现难度低,不需要编写任何代码

通过计划任务同步用户

在Smartbi中创建任务计划,定时的将第三方系统的用户同步到Smartbi

不需要额外的程序或者修改第三方系统代码

可实现定时自动同步

任务脚本编写难度低


  • 用户验证

若是实际项目中有多个系统(包括电子表格软件)需要统一登录认证,且将某个第三方系统作为统一登录认证平台,其余系统访问此系统来进行登录认证。此时需要自定义登录验证类替换电子表格软件中登录验证逻辑,但还是需要通过角色来设置操作权限。如下图所示,根据实际情况扩展开发实现接口类,即可使用其他系统用户验证平台。


  • 单点登录

单点登录是指需要在第三方系统中不使用用户名和密码来打开电子表格软件的各种资源时,此时可以采取单点登录的方式,在第三方系统登录的同时登录到电子表格软件系统。


单点登录的机制其实是比较简单的,用一个现实中的例子做比较:
某公园内部有许多独立的景点,游客可以在各个景点门口单独买票。对于需要游玩所有的景点的游客,这种买票方式很不方便,需要在每个景点门口排队买票,钱包拿 进拿出的,容易丢失,很不安全。于是绝大多数游客选择在大门口买一张通票(也叫套票),就可以玩遍所有的景点而不需要重新再买票。


他们只需要在每个景点门 口出示一下刚才买的套票就能够被允许进入每个独立的景点。


单点登录的机制也一样,如下图所示:

1)当用户第一次访问【应用系统1】的时候,因为还没有登录,会被引导到认证系统中进行登录;

2)根据用户提供的登录信息,认证系统进行身份效验,如果通过效验,应该返回给用户一个认证的凭据ticket;

3)用户再访问别的应用系统(【应用系统2】和【应用系统3】)的时候,就会将这个ticket带上,作为自己认证的凭据,应用系统接受到请求之后会把ticket送到【认证系统】进行效验,检查ticket的合法性。


如果通过校验,用户就可以在不用再次登录的情况下访问【应用系统2】和【应用系统3】了。

支持多种单点登录方式:


第三方系统单点登录时的几种方法

可以通过以下五种方法之一,在第三方系统中单点登录到 Smartbi 系统。请根据实际需要,选择其中一种登录方法。



单点登录名称

方案简述

优点

适用系统

浏览器端SDK单点登录

通过JSLoader加载bof.usermanager.UserService的js方法登录。

简单方便

通用性高

安全性要求不高的系统

没有跨域问题的系统

不需要集成的系统

服务器端SDK单点登录

在第三方系统中编写 JSP 页面/Java代码调用   Smartbi的服务器端 SDK获取Cookie进行登录。

不会暴露用户的真实密码,安全性高

安全性要求高的系统

不需要集群部署的系统

只适用于在第三方系统中打开和新建Smartbi资源以及在第三方中打开功能模块进行登录。

LoginToken扩展包单点登录

在第三方系统中编写JSP 页面/Java代码调用Smartbi的服务器端SDK方法进行登录后获取Token再使用Token登录。

token只能使用一次且60秒内有效,不会暴露用户的真实密码,安全性高

支持集群

安全性要求高的系统

集群部署的系统

Form表单单点登录  

在页面中提交form表单传递用户密码参数登录,并传递参数告知smartbi登录成功和失败跳转的地址。

集成方式简单

安全性要求不高的系统

集成部署的系统

CAS单点登录

将Smartbi接入到统一登录认证平台进行登录。

安全性高

多系统集成时登录方便。

用户已有CAS服务器的情况

安全性要求高的系统

集成部署的系统

看,是不是很容易就能实现了?试试吧!更多关于报表系统可点击详情https://www.smartbi.com.cn/spreadsheet


申请试用


试用申请

更聪明的大数据分析软件,快速挖掘企业数据价值!

新一代商业智能BI工具

Copyright© 广州思迈特软件有限公司  粤ICP备11104361号

电话咨询

售前咨询
400-878-3819 转1

售后咨询
400-878-3819 转2
服务时间:工作日9:00-18:00

sales邮箱

商务咨询请联系邮箱

邮箱地址:sales@smartbi.com.cn