历史版本25 :限制IP访问工程 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

护网行动中,部分工程为提升安全性,希望限制 IP 访问工程。

本文列举三种场景下的解决方案。

  • 方案一:限制白名单外的IP无法通过任何方式访问工程,包括但不限于:远程设计连接工程、登录平台查看模板、单点登录查看模板等。

  • 方案二:限制白名单外的IP无法通过远程设计(channel接口)连接工程

  • 方案三:限制任何用户均无法通过远程设计(channel接口)连接工程

2. 场景一:限制访问工程的IP编辑

使用前提

如需使用本节方案:

  • FineReport11.0/FineBI6.0/FineBI5.1.19及以上版本,请确保工程 JAR 包在 2022-03-10 及以上。

  • FineReport10.0/FineBI5.1.18.x系列/FineBI5.1.17及以下版本,请确保工程 JAR 包在 2022-01-01 及以上。

如不满足版本要求,请联系帆软技术支持协助。技术支持联系方式:服务平台>在线支持。

场景说明

本方案通过插件设置白名单,仅白名单中的 IP/IP 段,支持访问工程。

白名单外的IP,无法通过任何方式访问工程,包括但不限于:远程设计连接工程、登录平台查看模板、单点登录查看模板等。

解决方案

1)安装插件

点击下载插件,服务器安装插件方法参照 服务器插件管理

产品版本
JAR包限制下载插件

FineReport11.0

FineBI6.0

FineBI5.1.19及以上版本

请确保工程JAR包在

2022-03-10 及以上

fine-plugin-com.fr.plugin.web.application.firewall.v11-1.0.zip

FineReport10.0

FineBI5.1.18.x系列

FineBI5.1.17及以下版本

请确保工程JAR包在

2020-01-01 及以上

fine-plugin-com.fr.plugin.web.application.firewall.v10-1.1.zip

2)安装配置文件

  • 点击下载并解压,获取配置文件 wip.properties :wip.zip

  • 使用文本编辑器打开文件,设置IP白名单:支持 IP 和 IP 段,使用 * 号可配置 IP 段,如下图所示:

  • 保存文件。

  • 将修改后的配置文件 wip.properties 上传到工程 /webapps/webroot/WEB-INF/config/security 目录下。

3)生效配置

  • FineReport11.0/FineBI6.0/FineBI5.1.19及以上版本:配置好文件后,无需重启工程。但管理员需要登录数据决策系统,在「管理系统>插件管理」中先禁用插件,再启用插件,配置方可生效。

  • FineReport10.0/FineBI5.1.18.x系列/FineBI5.1.17及以下版本:配置完成后,请参考「关闭或重启FineReport工程」文档,重启工程,配置方可生效。

插件生效后,仅白名单中的IP/IP段,支持访问工程。

验证生效

使用白名单以外的IP地址的设备访问工程,提示「访问xxx的请求遭到拒绝,您未获授权,无法查看此网页」。如下图所示:

注:若成功访问了工程,说明配置未生效,请检查操作步骤。

3. 场景二:限制远程设计(channel接口)的IP编辑

使用前提

如需使用本节方案,请确保工程为FineReport11.0、FineBI6.0、FineBI5.1.19及以上版本。

如不满足版本要求,请联系帆软技术支持协助。技术支持联系方式:服务平台>在线支持。

场景说明

本方案通过设置finedb的fine_conf_entity表字段,配置远程设计白名单。仅白名单中的IP/IP段,支持远程设计连接工程。

白名单外的IP,无法远程设计(channel接口)连接工程,但不影响用户登录平台查看模板等操作。

解决方案

1)配置fine_conf_entity表字段

需通过修改finedb配置库中fine_conf_entity表字段的方式进行设置。操作方法请参考:填报修改fine_conf_entity 。

查询并修改 fine_conf_entity 表中的以下配置项,如不存在以下配置项,新增记录,输入参数和相应参数值即可。

参数名
参数作用建议参数值
RemoteConnectionConfig.enableWhitelistVerify

作用:针对 channel 接口反序列化漏洞对远程设计可能的影响,可通过配置限制访问 IP 来防止恶意输入行为

true:对远程设计连接接口进行 IP 白名单校验。

注意:开启后,白名单以外的 IP 无法进行远程设计连接。

true
RemoteConnectionConfig.ipWhiteList前提:开启上一个白名单校验。

作用:用于配置白名单内容,白名单内的 IP 和 IP 段连接成功,相应功能不受影响。

值为 IP 段,且为数组形式

格式:

["item1",”item2”]

示例:

["119.0.0.1", "127.0.*.*", "119.0.0.1/24"]

2)重启工程

请参考「关闭或重启FineReport工程」文档,重启工程。

重启成功后,配置生效,限制远程设计访问IP,白名单外的IP无法通过远程设计(channel接口)连接工程。

验证生效

使用白名单以外的IP地址的设备打开设计器,远程设计连接该工程。弹窗提示「远程设计连接发生未知错误」,堆栈显示「com.fr.workspace.engine.exception.RemoteDesigenUnknownException:java.lang.reflect.UndeclaredThrowableException」,即代表配置成功。

注:若成功访问了工程,说明配置未生效,请检查操作步骤。

4. 场景三:限制启用远程设计(channel接口)编辑

使用前提

如需使用本节方案:

  • FineReport11.0/FineBI6.0/FineBI5.1.19及以上版本,请确保工程 JAR 包在 2022-03-10 及以上。

  • FineReport10.0/FineBI5.1.18.x系列/FineBI5.1.17及以下版本,请确保工程 JAR 包在 2022-01-01 及以上。

如不满足版本要求,请联系帆软技术支持协助。技术支持联系方式:服务平台>在线支持。

场景说明

本方案通过插件设置,直接禁用远程设计工程。

方案生效后,任何用户均无法通过远程设计(channel接口)连接工程,但不影响用户登录平台查看模板等操作。

解决方案

1)安装插件

点击下载插件,服务器安装插件方法参照 服务器插件管理

产品版本
JAR包限制下载插件

FineReport11.0

FineBI6.0

FineBI5.1.19及以上版本

请确保工程JAR包在

2022-03-10 及以上

fine-plugin-com.fr.plugin.web.application.firewall.v11-1.0.zip

FineReport10.0

FineBI5.1.18.x系列

FineBI5.1.17及以下版本

请确保工程JAR包在

2020-01-01 及以上

fine-plugin-com.fr.plugin.web.application.firewall.v10-1.1.zip

2)安装配置文件

  • 点击下载并解压,获取配置文件 url.properties:url.zip

  • 将配置文件 url.properties 上传到工程 /webapps/webroot/WEB-INF/config/security 目录下。

3)生效配置

  • FineReport11.0/FineBI6.0/FineBI5.1.19及以上版本:配置好文件后,无需重启工程。但管理员需要登录数据决策系统,在「管理系统>插件管理」中先禁用插件,再启用插件,配置方可生效。

  • FineReport10.0/FineBI5.1.18.x系列/FineBI5.1.17及以下版本:配置完成后,请参考「关闭或重启FineReport工程」文档,重启工程,配置方可生效。

插件生效,关闭远程设计 channel 接口,任何用户均无法远程设计连接工程。

验证生效

访问http://ip:ports/webroot/decision/remote/design/channel(请自行更换为你自己工程的ip和端口号)。

若配置生效,则提示「访问xxx的请求遭到拒绝,您未获授权,无法查看此网页」。如下图所示:

注:若出现提示「非常抱歉,您无法查看该页面,Request method GET' not supported」,说明配置未生效,请检查操作步骤。