页面树结构

版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。

...

当客户系统有统一登录认证协议,但并未使用标准行业规范(例如:OAuth2/CAS/LDAP等协议),而是使用自建协议。产品提供了灵活易用的可视化配置界面,方便客户快速实现统一登录平台单点登录到Smartbi应用
前置条件:

...

1、统一登录平台需单点登录到Smartbi,未使用行业标准协议,但提供了自建协议接口:

...

1.1、必须提供至少一个接口RESTful API

...

1.2、接口返回值是JSON格式字符串

...

2、建议统一登录平台跟Smartbi用户一致;可参考 用户同步 做用户同步

...

3、如果用户不一致时,支持使用Smartbi固定账号登录,但一般不建议这么使用。

...

4、部署自建协议单点登录扩展包,下载扩展包:Smartbi_Special_APISSO,参考 部署扩展包 部署

适用场景:

...

1、统一登录平台通过连接单点登录到Smartbi首页。

...

2、统一登录平台通过连接单点登录打开Smartbi集成页面,包括打开资源、创建资源、打开模块等。

...

3、统一登录平台通过连接单点登录打开Smartbi移动端首页

...

4、未登录时,浏览器输入Smartbi连接自动跳转到统一登录平台的登录页面。

...

5、通过Smartbi前端注销则注销整个统一登录平台。

名词解释

  • 统一登录平台:统一登录平台是企业或组织用于集中管理用户身份认证与权限控制的系统,用户通过一次登录即可访问所有授权的内部或外部应用,无需重复输入账号密码
  • token:访问用户资源的令牌,一般有较短的有效期。

单点登录流程

Image Modified

单点登录使用限制及主要能力

...

1、只支持PC端及集成页面单点登录,不支持插件端(电子表格、分析报告)及移动端APP;移动端可通过集成页面实现单点登录。

...

2、可通过界面配置登录流程中涉及的接口地址及接口参数等,支持自定义灵活配置接口:

...

2.1、接口包括:前置授权请求(可选)、统一登录接口(必须)、独立获取用户接口(可选)、统一注销地址(可选)。

2.2、其中:前置授权请求,主要解决类似OAuth2协议,请求Smartbi连接后需要重定向到"统一登录平台"获取授权码(code)的场景。

...

3、支持灵活配置接口入参、并可通过扩展方式支持入参的特殊处理(比如入参特殊加密,加前缀等)

...

3.1、可配置参数名称、参数设置方式(request/header、cookie等)、参数来源等

...

4、支持登录用户处理:用户不存在时的处理逻辑可配置,包括新建用户/不允许登录等

...

5、支持逃生通道设置:允许部分或全部用户使用逃生通道(Smartbi原始登录页面),或者直接禁用逃生通道

...

6、支持多套统一登录系统单点登录同一套Smartbi应用(多套系统的接口地址及入参不同,可单独配置)

单点登录配置

入口

入口:运维设置/单点登录设置,需要操作权限:"运维设置/模块配置与管理"(操作权限参考xx)
Image RemovedImage Added

使用流程及配置信息说明

1、参考Smartbi"单点登录设置"中的"Smartbi单点登录地址",在"统一登录平台"中添加Smartbi的访问连接。

...

1.1、其中"单点登录应用范围",可以选择应用单点登录的页面,如果不应用,则打开该页面会继续使用Smartbi的账号密码进行登录验证。

...

1.2、访问连接可基于实际情况选择使用"Smartbi单点登录地址"或者是应用范围中的页面。

...

1.3、当应用范围中未包含需要单点登录处理的页面时,可通过"自定义"添加,添加到"自定义"中的页面,未登录时,也会正常跳转到"统一登录平台"的登录页面。

Image Removed        Image Added

2、基于"统一登录平台"的单点登录接口配置文档,在Smartbi中依次配置单点登录接口信息。

...

2.1、前置授权请求(可选),主要解决类似OAuth2协议,请求Smartbi连接后需要重定向到"统一登录平台"获取授权码(code)的场景,开启"前置授权请求"设置项后可配置使用。

Image RemovedImage Added

2.2、大部分自建协议会提供2个接口,一个接口获取token,一个接口基于token获取用户信息,产品默认支持该场景,直接配置即可。

Image RemovedImage Added

2.3、部分情况下,自建协议只有一个接口,统一登录平台在打开Smartbi的连接中直接携带token,Smartbi通过自建协议接口验证token合法性,并在该接口直接获取登录用户信息Image Removed

Image Added

2.4、可选择配置统一注销地址:当点击Smartbi注销按钮,需要同步注销统一登录平台时,可选择配置

Image RemovedImage Added

2.5、产品提供了灵活的配置设置,可基于实际接口文档自由选择,如有疑问可参考后续实际配置示例章节

...

  • 当Smartbi的用户未实时跟统一登录的用户同步时,会出现登录用户在Smartbi中不存在的情况。
  • 当遇到不存在的用户时,产品默认会提示:当前用户在Smartbi中不存在,请联系管理员添加。
  • 客户可选择自动创建用户,并分配到某个默认组,默认角色,以便用户登录后直接访问有权限的资源。
  • 当前只支持分配到固定的用户组或角色,不支持同步动态用户组。

Image RemovedImage Added

4、可选择配置逃生通道:

  • 逃生通道允许用户绕开oauth2登录协议,直接使用Smartbi账号密码登录,主要是解决oauth2服务异常、Smartbi单点登录配置错误等导致无法正常登录Smartbi的异常情况。
  • 产品默认开启了逃生通道,用户可基于实际需求灵活配置。
  • 注意:在最后一步单点登录验证成功前,不要禁用逃生通道,否则将无法正常登录Smartbi继续调整配置。

Image RemovedImage Added

5、可选接口入参特殊处理:

  • 当接口参数需要额外处理时使用,比如要特殊加密,或者在上一个接口的返回值+前缀后传给下一个接口等。
  • 该场景需要额外定制开发,基于实际业务场景,通过java扩展接口实现。
  • 产品提供了灵活的扩展接口,通过接口入参的高级配置实现。

Image Removed
Image RemovedImage Added

6、可选择配置多系统登录Smartbi:

  • 当客户的统一登录体系还不完善,有多套统一登录应用需要单点登录同一套Smartbi应用时,可启用该配置。
  • 需要先在Smartbi单点登录配置中注册各个统一登录应用的id及名称,并在统一登录应用访问Smartbi的连接中携带应用id;此时各个统一登录应用有自己独立的单点登录配置,使用方式跟单个统一登录平台的使用完全相同。
  • 为了减少各个统一登录应用的重复配置,提供了一键复制配置到其它应用的功能。

Image RemovedImage Added

7、验证单点登录是否成功:有以下几种方式验证

...

在统一登录平台中,用户点击BI平台菜单时,前端会携带该 session 跳转到BI平台的 web 端。跳转url格式是:http:{ip}:{port}/bi/index.html?token=sessionId}&tenantId=3849234893
BI平台获取到token后,可以携带这个 sessionId 来调用一体化平台的接口。当 sessionId 有效时,便可以正常获取用户的唯一标识和用户名称。

接口说明:

Image Modified

Smartbi单点登录配置信息:

Image RemovedImage Added

场景2:金蝶云之家单点登录到Smartbi

...

接口定义 :获取accessToken

smartbi配置:

Image RemovedImage Added

2、统一登录获取用户接口说明及Smartbi配置

接口定义:基于token获取用户信息

Image Modified

smartbi配置:配置获取用户信息接口及入参等,重点注意几个参数的入参设置方式

Image RemovedImage Added

场景3:需要使用重定向获取授权码,再基于授权码获取token,最后使用token获取用户信息。

原始需求描述

Image Modified

配置流程:

1、Smartbi单点登录配置:启用前置授权请求

Image RemovedImage Added

2、统一登录(基于原始需求,后面简称4A)用户授权接口说明及Smartbi配置

接口定义:

Image Modified

smartbi配置:配置前置请求接口及入参相关信息

Image RemovedImage Added

3、4A获取token接口说明及Smartbi配置

接口定义:

Image Modified

smartbi配置:配置获取token接口及入参、接口返回相关信息

Image RemovedImage Added

5、4A获取用户信息接口说明及Smartbi配置

接口定义:

Image Modified

smartbi配置:配置获取用户接口及入参、接口返回/登录用户相关信息

Image RemovedImage Added