1. 概述
1.1 版本
FineBI服务器版本 |
---|
5.1.28 |
1.2 应用场景
工程部署在docker容器中,工程无法绑定机器码/MAC地址,因此无法使用本地机器信息认证/私有云认证。
FineBI工程无法连接外网,因此无法使用公有云认证。
本地容器认证要求所有服务器都启动完整的注册功能,部分用户环境不支持。
1.3 功能简介
FineBI提供「容器私有云认证」方案,主要适用于容器化部署的工程。
1)授权服务器:docker容器化环境中,用于上传启动私有云镜像文件。
2)工程服务器:FineBI工程所在服务器。
1.4 注意事项
1)工程服务器即需注册的FineBI工程所在服务器,需要跟授权服务器网络互通。
2)授权服务器不可关闭超过 24 小时。
若关闭时长超过 24 小时,重启后需要重新认证。无需重新上传镜像文件,只需重新扫描二维码填写验证码。
若关闭时长小于 24 小时,FineBI服务器显示注册失败,在 2 小时内将自动重新连接上授权服务器,注册不失效。
2. 注册步骤
2.1 获取授权文件
请使用合同中指定的邮箱发送注册信息给 FineBI 商务business@fanruan.com,邮件格式如下:
商务收到邮件,核实无误后会为用户生成认证服务器的镜像文件fanruan_license_server.tar,以邮件方式发送给用户。
注:若有任何特殊情况,请在邮件中注明。
清单 | 要求 | 注意事项 | |
---|---|---|---|
优先联系 | 请提前联系帆软销售,确认相关事项并签署合同 | - | |
发件人 | 请使用合同中指定的邮箱 | 如发送注册信息的邮箱,非合同中指定的邮箱,则不予注册 | |
收件人 | business@fanruan.com | - | |
标题 | XXX 公司注册 FineBI 正式授权文件 | 如发送注册信息时,未注明公司名称,则不予注册 | |
正文 | 基础信息 | 公司名称:XXX 公司 项目名称:XXX 项目 合同签定日期:XXXX年XX月XX日 | - |
注册方式 | 容器私有云认证 | - | |
最大可注册量 | 集群工程节点个数 | 若不提供该选项,则默认为1 单机情况下无需提供该项 |
2.2 启动授权服务器
1)加载镜像文件fanruan_license_server.tar
docker load < fanruan_license_server.tar
2)查看导入的镜像文件
默认会有arm64和amd64两种文件包,用户可选择适合自己的。下文以amd64包作为演示
docker images
3)通过docker镜像生成容器,并进行目录映射
例如将/app/config映射到D:\William\lic\config
docker run -v /D/William/lic/config:/app/config -P -d fanruan_license_server_amd64:1.0.0
注1:映射目录名不要包含空格、中文、特殊字符等,否则可能会导致报错。
注2:启动镜像时,默认使用容器自带的https证书,仅支持localhost/127.0.0.1两个地址。
如需支持其他IP和域名,可以启动映射证书所在目录,使用自己的证书文件。
注3:当使用-P时,Docker会随机从49153 和65535之间查找一个未被占用的端口绑定到容器,即为下文宿主机的49155端口。
如需指定宿主机端口,启动命令中-P可调整为-p 宿主机端口:容器端口
注4:容器目录说明如下表所示,如需映射多个目录,需要在各个目录间拼接-v
例如将/app/config映射到D:\William\lic\config、将/app/log映射到D:\William\lic\log
命令为:docker run -v /D/William/lic/config:/app/config -v /D/William/lic/log:/app/log -P -d fanruan_license_server_amd64:1.0.0
目录 | 说明 | 是否需要映射 |
---|---|---|
/app/config | 生成privataConfig文件目录 | 必须映射 为防止二次启动容器报错必须映射 |
/app/log | 日志目录 | 可自行选择是否映射 映射目录可方便获取日志 |
/app/tls | 容器默认的内置https证书 | 可自行选择是否映射 如需映射,必须自行在该目录下放置证书文件,否则会导致认证服务器启动失败 |
/app/web | 二维码前端文件 | 不可映射 映射后会导致无法访问扫码页面 |
4)列出在运行的容器信息
docker ps
2.3 提交认证
从上节可知道,docker容器的80811端口映射到宿主机的49155端口。
访问https://172.16.63.131:49155/license/qrcode即可进行扫码认证。(IP和端口需要按照自己实际情况调整)
使用手机浏览器/微信扫描生成的二维码,会返回一个 6 位的验证码,将该验证码填写到系统中,点击「提交认证」。如下图所示:
注1:二维码有效时间为 5 分钟,请于规定时间内完成注册流程。超过5分钟后,二维码会提示需要手动刷新。
注2:手机扫码返回验证码之后,工程最好立刻注册,未注册成功前不要重启工程。
注3:为了防止验证码暴力破解和接口高频访问,验证码输入错误次数若超过5次,则锁定 15 分钟。
2.4 FineBI服务器验证授权
管理员登录FineBI系统,点击「管理系统>注册管理>立即注册」,如下图所示:
认证方式选择「私有云认证」,服务器地址填写上面授权服务器显示的 IP 和监听端口,例如https://172.16.63.131:49155,点击「提交认证」,如下图所示:
注:请确保FineBI服务器可以访问授权服务器。
认证成功后,如下图所示:
注1:这里的最大连接数表示同时能有几个工程向授权服务器申请授权注册。
注2:若认证失败,检查防火墙设置,开放对应端口或者关闭防火墙。
3. 注册失败
3.1 现象描述
若注册失败,页面将出现提示弹窗,如下图所示:
3.2 失败原因
点击详细信息即可查看注册失败的原因,根据具体失败原因进行排查。
错误码 | 错误名 | 含义 |
---|---|---|
10000 | JSON_PARSER_ERROR | 数据格式不正确 |
10001 | PARAM_INPUT_ERROR | 您输入的参数有误 |
20000 | DO_NOT_NEED_DEACTIVATE | 该机器未授权无需解除绑定 |
30000 | LICENSE_EXPIRED | 证书已过期 |
30001 | REPORT_VERSION_ERROR | 版本不匹配 |
30002 | ACCOUNT_STATUS_ERROR | 账户状态不正常(解除绑定的时候出现该提示,说明这台机器因未授权无需解除绑定) |
30003 | LICENSE_IP_ERROR | IP 不在允许的范围之内 |
30004 | LICENSE_DOMAIN_ERROR | 域名不在允许的范围之内 |
30005 | LICENSE_APPNAME_ERROR | 应用名不在允许的范围之内 |
30007 | REGISTER_OUT_OF_LIMIT | 已达可授权数量上限 |
4. 认证迁移
进行了容器私有云认证的工程,如需迁移授权服务器,请按照以下步骤进行。
4.1 销毁原工程授权
请使用合同中指定的邮箱发送邮件给 FineReport 商务business@fanruan.com。
请在邮箱正文描述清楚待迁移的授权服务器地址,例如2.4节填写的https://172.16.63.131:49155
商务收到邮件,核实无误后会为用户销毁对应授权,并以邮件方式通知用户。
注:在得到商务明确答复前,请勿重启待迁移的授权服务器。
4.2 拷贝privateConfig文件
1)关闭待迁移的授权服务器。
2)在容器的/app/config路径下获取自动生成的privateConfig文件。
4.3 获取新授权文件
请使用合同中指定的邮箱发送邮件给 FineReport 商务business@fanruan.com。
邮件格式请参考本文2.1节,额外附上上一步获取的 privateConfig 文件。
商务收到邮件,核实无误后会为用户生成认证服务器的镜像文件fanruan_license_server.tar,以邮件方式发送给用户。
用户再按照第二章的步骤启动新授权服务器进行注册即可。