反馈已提交

网络繁忙

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

模板认证下的超级链接继承权限

  • 文档创建者:Leo.Tsai
  • 历史版本:9
  • 最近更新:帆软应用复用-Cat 于 2023-03-07
  • 1. 概述

    1.1 版本

    报表服务器版本

    10.0

    1.2 功能简介

    用户可以在两种场景下打开 FineReport 报表:

    1)登录数据决策系统,在平台目录中访问报表

    2)将报表集成到其他系统中进行访问

    在第一种情况下,可以通过权限管理来对用户的是否拥有查看报表的权限进行管理。也可通过模板认证配置用户是否拥有查看模板的权限。

    在第二种情况下,通常需要通过模板认证来配置用户是否拥有查看模板的权限,详细内容参见:模板认证

    而对于主报表中含有 网络报表 的超级链接,可通超链打开子报表的情况,则需要对主子报表均进行模板认证来保证数据的安全。

    本文主要介绍,在开启模板认证的情况下,报表中含有网络报表类型的超级链接的继承权限问题。

    注1:由于 URL 中超链跳转会带上 hyperlinktoken,因而在半小时有效期内,拥有该 token 就能查看其他所有模板的数据,这会导致越权访问。故2019-12-05及之后版本的 JAR 包加上了用户登录限制。

    注2:FineReport 无分享功能,所谓的分享就是拷贝当前报表的 URL 给其他人。

    1.3 注意事项

    只有超链方式为模板路径时,超链权限才能继承。以下两种方式不支持权限继承:

    1)参数直接写在模板路径后面

    2)网页链接中填写模板预览 URL

    2. 逻辑说明

    2.1 在平台中访问报表

    该场景下只有三种类型的模板访问方式校验模板权限:

    1)使用「添加模板」的方式,将模板做为数据决策系统的首页

    2)使用「添加链接」的方式,将模板做为数据决策系统的首页

    3)使用「添加链接」的方式,将模板挂载到目录

    注:使用「添加模板」的方式挂载模板,不校验模板权限。

    2.1.1 模板设置

    1)超级管理员登录数据决策系统,点击「管理系统>模板认证>认证配置」,开启「模板认证」,选择「角色权限认证」,点击「保存」。如下图所示:

    2)点击「选择」按钮,设置主子报表均需要认证

    2023-03-07_14-06-07.png

    3)对用户 eoco 设置主报表的查看权限,用户 Tom 设置子报表查看权限,用户 Anna 对主子报表均无查看权限,如下图所示:

    2023-03-07_14-08-46.png

    4)将主报表通过「添加链接」的方式,将模板挂载到目录,并为用户eoco设置主报表的查看权限,如下图所示:

    2023-03-07_14-13-48.png

    2.1.2 预览效果

    由于网络报表的超链会继承权限,所以用户 eoco 登录数据决策平台后,通过主报表可以直接查看子报表(如下几种打开方式均可:新窗口/平台内新标签/对话框/当前页/平台内当前标签页打开)。

    用户 eoco 将子报表的预览链接发给用户 Tom 和用户 Anna,将存在如下两种情况:

    1)在登录超时时间内:

    • 用户 Tom 访问链接,可查看子报表。

    • 用户 Anna 访问链接,需要登录数据决策系统,将出现提示:没有访问权限。

    2)在登录超时时间外:

    • 用户 Tom 访问链接,需要登录数据决策系统,可查看子报表且模板数据会按用户 Tom 的权限进行过滤。

    • 用户 Anna 访问链接,需要登录数据决策系统,将出现提示:没有访问权限。

    2.2 集成到其他系统中访问报表

    将报表集成到自己的系统中打开,该场景下用户也需要通过模板认证配置模板权限。

    这个时候超链打开的子报表,也需要继承主报表权限。这个也很常见,因为在报表很多的情况下,管理员通常只会设置主报表的权限,超链的子报表可能会很多,这个时候如果逐个设置权限会很麻烦。

    同样为了便于理解,给出详细的用户操作场景示例说明:

    1)角色权限认证

    操作场景认证&权限预览效果
    用户A>打开主报表>超链打开子报表
    • 主报表和子报表均设置角色权限认证

    • 用户A有主报表的查看权限,无子报表的查看权限

    • 在登录超时时间内,用户A可直接查看子报表

    • 在登录超时时间外,提示登录,用户A登录不可查看子报表,需要重新用主报表的超链打开,且主报表也需要重新登录

    用户A>打开主报表>超链到子报表>拷贝子报表的 URL 到新的浏览器
    • 主报表和子报表均设置角色权限认证

    • 用户A有主报表的查看权限,无子报表的查看权限

    • 用户B仅有子报表的查看权限

      访问链接将出现登录页面

      • 在登录超时时间内,用户A登录后可查看报表2,用户B登录后,可正常查看报表2中的有权限数据

      • 在登录超时时间外,用户A登录不可查看子报表,需要重新用主报表的超链打开,用户B登录后,可正常查看报表2中的有权限数据


      用户A>打开主报表>超链到子报表>拷贝子报表的 URL 到同一浏览器的新标签页
      • 子报表需要认证

      • 用户A有主报表的查看权限,无子报表的查看权限

      • 在登录超时时间内,用户A无需登录可查看子报表

      • 在登录超时时间外,提示登录,用户A登录后不可查看子报表,需要重新用主报表的超链打开

      2)仅认证用户密码

      操作场景认证&权限预览效果
      用户A>打开主报表>超链到子报表主报表和子报表均需要认证
      • 在登录超时时间内,无需登录任意用户均可查看子报表

      • 在登录超时时间外,提示登录,任意用户登录可正常查看子报表内容

      用户A>打开主报表>超链到子报表>拷贝子报表的 URL 到新的浏览器

      主报表和子报表均需要认证

      访问链接将出现登录页面

      • 在登录超时时间内,用户A登录后可查看子报表,用户B登录后,可查看子报表中有权限的数据

      • 在登录超时时间外,需要重新登录,用户A登录后正常查看子报表,用户B登录后,可正常查看

      用户A>打开主报表>超链到子报表>拷贝子报表的 URL 到同一浏览器的新标签页子报表需要认证
      • 在登录超时时间内,用户A无需登录即可查看报表2

      • 在登录超时时间外,用户A需重新登录可正常

      3)数字签名

      操作场景认证&权限预览效果
      用户A>打开主报表>超链到子报表主报表和子报表都需要认证
      • 在登录超时时间内,用户A可查看子报表

      • 在登录超时时间外,子报表可查看,需要重新用主报表的超链打开,但要确保主报表的数字签名未超时,否则无效

      用户A>打开主报表>超链到子报表>拷贝子报表的 URL 到新的浏览器
      用户A>打开主报表>超链到报表2>拷贝子报表的 URL 到同一浏览器的新标签页

      4)不开启认证

      操作场景预览效果
      打开主报表>超链到子报表不需要登录,可一直查看主报表和子报表内容
      打开主报表>超链到子报表>拷贝子报表的 URL 到新的浏览器不需要登录,可一直查看报主报表和子报表内容
      打开主报表>超链到报表2>拷贝子报表的 URL 到同一浏览器的新标签页不需要登录,可一直查看主报表和子报表内容


      附件列表


      主题: 数据决策系统
      已经是第一篇
      已经是最后一篇
      • 有帮助
      • 没帮助
      • 只是浏览

      售前咨询电话

      400-811-8890转1

      在线技术支持

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

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

      总裁办24H投诉

      热线电话:173-1278-1526