前后端分离部署架构图_完全版
对比精简版,主要是多了协议代理客户端及服务端。
...
proxy.serverUrl配置EncryptProxy的server端的地址。
配置黑白名单(可选)
黑白名单规则,主要是为了解决项目在外网访问内网资源时的安全问题。
根据部署架构图,手机app等移动端设备在外网访问smartbi。内网环境用pc电脑端访问smartbi。
具体操作步骤:
下载 下载示例配置文件 defenderConfig.json ,上传到客户端节点,跟application.properties 在同一层目录,文件名称不能修改。
注意:该示例文件主要移动端浏览报表相关的请求配置,用户可以根据实际需求修改调整。
注意 | ||
---|---|---|
| ||
1、黑白名单defenderConfig.json文件,由于json文件中配置了checkHeaderName参数,需要在nginx的动态请求中,配置proxy_set_header customizeName smartbi_header; 保证动态请求能被nginx正确转发。 2、checkHeaderName默认值是customizeName,项目上可以可以自行定义。 |
下图是defenderConfig.json文件的配置,checkHeaderName的值可以自行定义。
下图是nginx的配置示例。如果配置了黑白名单规则,需要在nginx的动态请求中增加 proxy_set_header customizeName smartbi_header; 参数
注意 | ||
---|---|---|
| ||
黑白名单规则,只对移动端生效。pc端建议只能在内网直接访问动态服务器节点。 只有在defenderConfig1、只有在defenderConfig.json 白名单列表中的请求,并且该请求不在黑名单列表中时,才能通过client客户端转发到内网的server服务端。 在defenderConfig2、在defenderConfig.json 黑名单中的请求都无法被转发到内网的server服务端。 不在defenderConfig3、不在defenderConfig.json 白名单中的请求,都不会被转发到内网的server服务端。 当前的白名单请求只配置了电子表格的移动端的请求。其他请求研发正在梳理中。 由于版本更新,请求可能新增或删减,需要项目上根据情况自行配置黑白名单。 修改黑白名单规则后,需要重启客户端才能生效。 4、附件的白名单请求(defenderConfig.json)只配置了电子表格的移动端的请求。其他请求研发正在梳理中。 5、由于版本更新,请求可能新增或删减,需要项目上根据情况自行配置黑白名单。 6、修改黑白名单规则后,需要重启客户端才能生效。 |
注意 | ||
---|---|---|
| ||
1、defenderConfig.json文件,配置了checkHeaderName 参数,checkHeaderName的值可以自行定义,但是需要在nginx的动态请求端,配置proxy_set_header customizeName smartbi_header; |
启动客户端
nohup $JAVA_HOME/bin/java -jar EncryptProxy-10.5.jar >>EncryptProxy-client.log 2
>
&1 &
...
proxy.smartbiUrl 配置EncryptProxy的server端的地址。
启动服务端
nohup $JAVA_HOME/bin/java -jar EncryptProxy-10.5.jar >>EncryptProxy-server.log 2
>
&1 &
服务端日志,保存在EncryptProxy-server.log 中。
注意:直接访问协议代理服务端,将无法访问smartbi。如果需要验证后端服务是否部署正常,只能通过协议代理客户端访问smartbi
停止服务端
ps -ef|grep EncryptProxy
...
1、外部请求是先经过nginx,然后才经过smartbi。如果nginx有限制文件大小,smartbi 系统选项里面的【允许上传的文件大小】参数,可能会不生效】参数,可能会不生效。