...
- 统一登录平台需单点登录到Smartbi,未使用行业标准协议,但提供了自建协议接口:
- 必须提供至少一个接口(RESTful API)
- 接口返回值是JSON格式字符串
- 建议统一登录平台跟Smartbi用户一致;可参考xx做用户同步建议统一登录平台跟Smartbi用户一致;可参考 用户同步 做用户同步
- 如果用户不一致时,支持使用Smartbi固定账号登录,但一般不建议这么使用。
- 部署自建协议单点登录扩展包,下载扩展包:Smartbi_Special_APISSO,参考 部署扩展包 部署
适用场景:
- 统一登录平台通过连接单点登录到Smartbi首页。
- 统一登录平台通过连接单点登录打开Smartbi集成页面,包括打开资源、创建资源、打开模块等。
- 统一登录平台通过连接单点登录打开Smartbi移动端首页
- 未登录时,浏览器输入Smartbi连接自动跳转到统一登录平台的登录页面。
- 通过Smartbi前端注销则注销整个统一登录平台。
...
- 统一登录平台:统一登录平台是企业或组织用于集中管理用户身份认证与权限控制的系统,用户通过一次登录即可访问所有授权的内部或外部应用,无需重复输入账号密码。
- token:访问用户资源的令牌,一般有较短的有效期。
...
单点登录流程
单点登录使用限制及主要能力
- 只支持PC端及集成页面单点登录,不支持插件端(电子表格、分析报告)及移动端APP;移动端可通过集成页面实现单点登录。
- 可通过界面配置登录流程中涉及的接口地址及接口参数等。
- 支持自定义灵活配置接口
- 包括:前置授权请求(可选)、统一登录接口(必须)、独立获取用户接口(可选)、统一注销地址(可选)。
- 前置授权请求,主要解决类似OAuth2协议,请求Smartbi连接后需要重定向到"统一登录平台"获取授权码(code)的场景。
- 支持灵活配置接口入参、并可通过扩展方式支持入参的特殊处理(比如入参特殊加密,加前缀等)
- 可配置参数名称、参数设置方式(request/header、cookie等)、参数来源等
- 包括:前置授权请求(可选)、统一登录接口(必须)、独立获取用户接口(可选)、统一注销地址(可选)。
- 支持登录用户处理:用户不存在时的处理逻辑可配置,包括新建用户/不允许登录等
- 支持逃生通道设置:允许部分或全部用户使用逃生通道(Smartbi原始登录页面),或者直接禁用逃生通道
- 支持多套统一登录系统单点登录同一套Smartbi应用(多套系统的接口地址及入参不同,可单独配置)
- 支持自定义灵活配置接口
...
2.5、产品提供了灵活的配置设置,可基于实际接口文档自由选择,如有疑问可参考后续实际配置示例章节
- 随意增减参数个数
- 自定义参数名称,基于接口实际参数名称填写
- 选择入参设置方式:可设置到header,request(body)、cookie、session
- 入参设置方式说明:
- request/query:查询参数(Query Parameters),附加在URL的?后面,键值对形式,比如。
- request/body:请求体参数(Body Parameters):在请求体中传递,常见于POST、PUT等方法,默认是JSON格式。
- 默认会在请求头中添加:Content-Type:application/json
- 如果需要键值对格式,需要主动增加请求头参数:Content-Type:application/x-www-form-urlencoded
- 暂不支持XML格式。
- request/header:请求头参数(Headers):在HTTP头部中传递,如Content-Type用于设置请求体参数格式。
- cookie:Cookie参数:通过Cookie头传递,键值对拼接,如 。
- session:session参数,通过session传递,键值对拼接。
- 入参设置方式说明:
- 选择参数来源及参数值:
- 可配置静态值、动态时间戳、或者是上个接口的返回值等
- "上个接口返回"用来获取上一个接口的返回值,并传递到当前接口中,第一个接口获取token。
- "Smartbi单点地址"用来获取单点登录Smartbi时使用的Smartbi连接地址,一般在前置请求需要回调url时使用。
- 可配置静态值、动态时间戳、或者是上个接口的返回值等
3、可选择配置登录用户处理规则:
- 当Smartbi的用户未实时跟统一登录的用户同步时,会出现登录用户在Smartbi中不存在的情况。
- 当遇到不存在的用户时,产品默认会提示:当前用户在Smartbi中不存在,请联系管理员添加。
- 客户可选择自动创建用户,并分配到某个默认组,默认角色,以便用户登录后直接访问有权限的资源。
- 当前只支持分配到固定的用户组或角色,不支持同步动态用户组。
...
场景1:统一登录平台携带token参数跳转到Smartbi,Smartbi回调统一登录平台接口校验并直接获取合法用户信息
原始需求描述:
在统一登录平台中,用户点击BI平台菜单时,前端会携带该 session 跳转到BI平台的 web 端。跳转url格式是端。跳转url格式是:http:{ip}:{port}/bi/index.html?token=sessionId}&tenantId=3849234893
BI平台获取到token后,可以携带这个 sessionId 来调用一体化平台的接口。当 sessionId 有效时,便可以正常获取用户的唯一标识和用户名称。
接口说明:
...
Smartbi单点登录配置信息:
场景2:金蝶云之家单点登录到Smartbi
适用类似场景:统一登录平台不携带token,需要先通过统一登录接口获取token,再基于token获取合法用户信息
原始需求描述
基于云之家开放平台,添加Smartbi为云之家的轻应用,并实现单点登录。
由于云之家轻应用有不同的授权级别,授权级别不同,获取接口的输入参数也是不同的,本示例以授权级别为app为例
...
配置流程:
1、统一登录获取token接口说明及Smartbi配置
接口定义 :获取accessToken
...
smartbi配置:
...
2、统一登录获取用户接口说明及Smartbi配置
接口定义:基于token获取用户信息
...
smartbi配置:配置获取用户信息接口及入参等,重点注意几个参数的入参设置方式
场景3:需要使用重定向获取授权码,再基于授权码获取token,最后使用token获取用户信息。
原始需求描述
配置流程:
...
1、Smartbi单点登录配置:启用前置授权请求
...
2、统一登录(基于原始需求,后面简称4A)用户授权接口说明及Smartbi配置
接口定义:
...
smartbi配置:配置前置请求接口及入参相关信息
...
3、4A获取token接口说明及Smartbi配置
接口定义:
...
smartbi配置:配置获取token接口及入参、接口返回相关信息
...
5、4A获取用户信息接口说明及Smartbi配置
接口定义:
...
smartbi配置:配置获取用户接口及入参、接口返回/登录用户相关信息
...