反馈已提交

网络繁忙

当前为10.0版本文档,只有最新版本的文档支持在线编辑修改,如果想创建/编辑文档,请移步至 最新版帮助文档

后台单点登录插件

  • 文档创建者:Carly
  • 历史版本:16
  • 最近更新:Suki陈 于 2023-01-04
  • 1. 概述

    1.1 版本

    报表服务器版本JAR 包
    后台单点登录插件
    功能变动
    10.02020-04-26V1.0.0
    -
    V1.1.0
    • 新增 ssoToken 超时设置功能,开启后,ssoToken 将在达到「系统管理>登录>登录超时时间」后过期

    • 通过选择「用户名加密」按钮和「示例接口」按钮,切换用户名加密和不加密这两种方式

    1.2 功能简介

    安装「后台单点登录插件」后,即可实现后台单点,无需复杂代码,操作简单。

    插件提供两种后台单点登录方案:

    方案一:用户名不加密,可访问 http://ip:端口号/工程名/decision?fine_username=用户名实现单点登录。

    方案二:用户名加密,可访问http://ip:port/工程名/decision?ssoToken=xxx(对用户名加密并转码后得到的结果)实现单点登录。并提供 ssoToken 超时设置功能,开启后,sso Token 将在达到「系统管理>登录>登录超时时间」后过期

    2. 插件介绍

    2.1 插件下载

    后台单点登录插件下载请点击:后台单点登录插件

    设计器插件安装方法请参见:设计器插件管理 

    服务器安装插件方法请参见:服务器插件管理 

    2.2 页面介绍

    插件安装后,超管进入平台,点击「管理系统>系统管理」,出现集成后台单点登录页面。如下图所示:

    注:只有超管可见配置页面。

    3.png

    3. 方案一:用户名不加密

    3.1 设置用户名不加密

    1)插件安装成功后,选择示例接口>保存」。如下图所示:

    注:插件 V1.0.0 版本,忽略该步骤。

    4.png

    3.2 效果查看

    2)访问http://ip:端口号/工程名/decision?fine_username=用户名,「用户名」为任意平台已存在且可用的用户名。如下图所示:

    6.png

    4. 方案二:用户名加密

    注:该方案不再支持访问http://ip:端口号/工程名/decision?fine_username=用户名实现后台单点登录,支持的访问路径请参见本文 4.5 节。

    「后台单点登录插件」支持使用 RSA Key 对用户名加密来提高安全性。

    4.1 生成 RSA Key

    插件 V1.1.0 版本安装后,Public Key 自动生成。如下图所示:

    注:插件 V1.0.0 版本,需要点击「生成RSA Key」按钮。

    2.png

    需注意以下几点:

    • 只支持生成默认的 key ,不支持自定义。

    • 生成 Public Key 后,点击「生成 RSA Key」,可重新生成且覆盖之前的 Key 。

    • 生成的 key 只支持 aes 传输加密,安装 base64 插件无效,也不支持国密。

    4.2 用户名加密

    将生成的 RSA KEY 和用户名放到用户自己的加密代码中,对用户名进行加密。

    1)此处用 加密网站 进行加密,实际用户建议使用自己加密代码进行加密。

    2)加密步骤如下图所示:

    28.png

    4.3 用户名解密

    将加密后的用户名,输入到「解密测试」中,若能成功解密出用户名,代表加解密的流程是正确的。如下图所示:

    9.png

    4.4 用户名转码

    加密后的用户名需要转码才能嵌入 URL 中,用户可使用encodeURIComponent对加密用户名进行转码。

    本文示例使用 转码网站 进行转码,如下图所示:

    29.png

    4.5 效果查看

    访问链接:http://ip:port/工程名/decision?ssoToken=xxx(编码后的结果),实现用户名加密的后台单点登录。如下图所示:

    12.png

    4.6 ssoToken 超时设置

    V1.1.0 版本新增该功能,默认不开启。开启后,ssoToken 将在达到「系统管理>登录>登录超时时间」后过期。

    V1.0.0 版本对用户名进行 rsa 加密,V1.1.0 版本对下面这个 JSON 字符串进行 rsa 加密,其中 username 为用户名,issueTime 为当前毫秒时间戳。

    {
      "username": "1",
      "issueTime": 1638434945973
    }

    若用户使用 后台单点登录RSA示例代码 实现的单点登录,开启「ssoToken 超时设置」功能后,需要修改代码接口,如果不修改,ssoToken 无法成功单点登录(进入平台登录页的效果)。代码接口请参见:后台单点登录RSA示例代码 的 2.2.2 节内容。

    如果使用的 ssoToken 超时,将报错:登录超时,请重新登录。如下图所示:

    1641351818664688.png

    5. 注意事项

    5.1 Decryption error

    问题描述:

    在新计算引擎情况下拼接 ssoToken ,通过访问链接http://ip:port/工程名/decision/view/report?viewlet=WorkBook.cptx&ssoToken=xxx在单点登录后跳转至 cptx 模板,解密失败,出现报错:ERROR [standard] Decrypt failed:Decryption error

    原因分析:

    FineReport 10.0 版本中的新计算引擎请求无法适配 ssoToken 。

    解决方案 1:将 cptx 格式的模板嵌入到 frm 格式的决策报表中,后台单点登录时对 frm 模板进行校验登录。

    解决方案 2:开启 cptx 格式模板的模板认证,通过 cpt 格式模板的加载结束事件跳转至 cptx 模板,后台单点登录时对 cpt 模板进行校验登录。

    附件列表


    主题: 部署集成
    已经是第一篇
    已经是最后一篇
    • 有帮助
    • 没帮助
    • 只是浏览

    售前咨询电话

    400-811-8890转1

    在线技术支持

    请前往「服务平台」,选择「在线支持」

    热线电话:400-811-8890转2

    总裁办24H投诉

    热线电话:173-1278-1526