...
当客户系统有统一登录认证协议,但并未使用标准行业规范(例如:OAuth2/CAS/LDAP等协议),而是使用自建协议。产品提供了灵活易用的可视化配置界面,方便客户快速实现统一登录平台单点登录到Smartbi应用
前置条件:
- 统一登录平台需单点登录到Smartbi,未使用行业标准协议,但提供了自建协议接口:
- 必须提供至少一个接口(RESTful API)
- 接口返回值是JSON格式字符串
- 建议统一登录平台跟Smartbi用户一致;可参考xx做用户同步
- 如果用户不一致时,支持使用Smartbi固定账号登录,但一般不建议这么使用。
- 部署自建协议单点登录扩展包,参考xxx
...
入口:运维设置/单点登录设置,需要操作权限:"运维设置/模块配置与管理"(操作权限参考xx)
使用流程及配置信息说明
...
1、参考Smartbi"单点登录设置"中的"Smartbi单点登录地址",在"统一登录平台"中添加Smartbi的访问连接。
- 其中"单点登录应用范围",可以选择应用单点登录的页面,如果不应用,则打开该页面会继续使用Smartbi的账号密码进行登录验证。
- 访问连接可基于实际情况选择使用"Smartbi单点登录地址"或者是应用范围中的页面。
- 当应用范围中未包含需要单点登录处理的页面时,可通过"自定义"添加,添加到"自定义"中的页面,未登录时,也会正常跳转到"统一登录平台"的登录页面。
...
2、基于"统一登录平台"的单点登录接口配置文档,在Smartbi中依次配置单点登录接口信息。
依次配置 前置授权请求(可选),统一登录接口(必须)、独立获取用户信息接口(可选)、统一注销接口(可选),如有疑问,可参考后续"自建协议场景配置示例"。
...
2.1、前置授权请求(可选),主要解决类似OAuth2协议,请求Smartbi连接后需要重定向到"统一登录平台"获取授权码(code)的场景,开启"前置授权请求"设置项后可配置使用。
...
2.2、大部分自建协议会提供2个接口,一个接口获取token,一个接口基于token获取用户信息,产品默认支持该场景,直接配置即可。
...
2.3、部分情况下,自建协议只有一个接口,统一登录平台在打开Smartbi的连接中直接携带token,Smartbi通过自建协议接口验证token合法性,并在该接口直接获取登录用户信息
...
2.4、可选择配置统一注销地址:当点击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时使用。
- 可配置静态值、动态时间戳、或者是上个接口的返回值等
- 可选择配置登录用户处理规则:
- 当Smartbi的用户未实时跟统一登录的用户同步时,会出现登录用户在Smartbi中不存在的情况。
- 当遇到不存在的用户时,产品默认会提示:当前用户在Smartbi中不存在,请联系管理员添加。
- 客户可选择自动创建用户,并分配到某个默认组,默认角色,以便用户登录后直接访问有权限的资源。
- 当前只支持分配到固定的用户组或角色,不支持同步动态用户组。
...