本文将为您介绍如何使用Ticket报表嵌入方案免登嵌入到第三方系统,同时可控制嵌入至第三方系统的Quick BI报表权限,以及如何通过票据管理有效防止链接被恶意分享数据泄露的问题。
背景信息

注意事项
使用Ticket报表嵌入方案,需要关注以下几点:
- 目前仅支持将群空间的仪表板、电子表格的报表嵌入到其他系统。
- 若您需要使用全局参数能力,请联系Quick BI运营负责人。
步骤1:开通需要嵌入的报表
仅当报表是发布状态时,才支持设置报表嵌入功能。
您可以使用以下任意一种方式开通报表嵌入:
-
方式一:从开发者中心模块
- 在Quick BI产品首页,按照下图指引,进入嵌入报表页面。
- 在新增嵌入报表页面,选择目标工作空间和数据对象类型后,在列表中选中数据对象名称后,单击开通嵌入。
若报表太多时,您也可以输入报表名称,帮助您快速搜索到目标报表。
- 在Quick BI产品首页,按照下图指引,进入嵌入报表页面。
-
方式二:从报表编辑页面
支持嵌入报表为仪表板、电子表格和自助取数,下面以仪表板为例介绍。
- 在仪表板编辑页面,按照下图指引,开通嵌入报表。
- 在报表嵌入配置对话框,进行以下配置。
参数名称 描述 嵌入对象 选择嵌入的对象。 - 选择页面整体,则嵌入的对象为当前仪表板。
- 选择某个组件,则嵌入的对象为当前仪表板下的某个组件。
展示型配置 嵌入后,是否携带当前仪表板的标题。 安全认证类型和Ticket链接 选择Ticket认证并生成Ticket链接。 您可以手动输入Ticket链接或者单击快捷生成,生成Ticket。获取嵌入代码 支持生成URL链接和Iframe代码。 - 单击复制。
- 在仪表板编辑页面,按照下图指引,开通嵌入报表。
步骤2:通过API接口生成AccessTicket票据
步骤3:拼接免登URL
拼接流程及示例见下表。
流程 | 仪表板示例 | 电子表格示例 |
---|---|---|
1、获取Quick BI域名 | bi.aliyun.com |
bi.aliyun.com |
2、获取预览报表URL | token3rd/dashboard/view/pc.htm |
token3rd/report/view.htm |
3、获取报表ID | dd0****83f |
42****18ef6 |
4、获取AccessTicket | fd138bcb-****-4fde-b413-81bcee59bdb6 |
fd138bcb-****-4fde-b413-81bcee59bdb6 |
拼接格式及报表URL如下。
- 仪表板的拼接格式为
https://<Quick BI域名>/<预览报表URL>?pageId=<报表ID>&accessTicket=<AccessTicket>
,则生成的URL为:https://bi.aliyun.com/token3rd/dashboard/view/pc.htm?pageId=dd0****83f&accessTicket=fd138bcb-****-4fde-b413-81bcee59bdb6
- 电子表格的拼接格式为
https://<Quick BI域名>/<预览报表URL>?Id=<报表ID>&accessTicket=<AccessTicket>
,则生成的URL为:https://bi.aliyun.com/token3rd/report/view.htm?id=<42****18ef6>&accessTicket=fd138bcb-****-4fde-b413-81bcee59bdb6
附1:配置数据行级权限
若
详情操作请参见行列权限。
UserId
和accountName
不填时,嵌入报表的查看权限默认跟随报表Owner。您可以按照下图指引,配置数据行级权限,并设置UserId
或AccountName
参数,绑定目标用户的权限。
附2:生成全局参数说明
在目标仪表板或电子表格中设置对应的全局参数,全局参数用于绑定报表并生成AccessTicket。
全局参数的参数名为GlobalParam,全局参数的参数值是一个
JSON 数组
:[
{
"paramKey": "price", // 全局参数 Key
"joinType": "and", // 连接方式,使用 and 即可
"conditionList": [
{
"operate": "=", // 操作符,参考以下说明
"value": "1" // 操作值,在多个值的情况下使用数组 ["1", "2"]
},
{
"operate": "=", // 操作符,参考以下说明
"value": "2" // 操作值,在多个值的情况下使用数组 ["1", "2"]
}
]
},
{
"paramKey": "area", // 全局参数 Key
"joinType": "and", // 连接方式,使用 and 即可
"conditionList": [
{
"operate": "in", // 操作符
"value": ["华北","华南"] // 操作值,在多个值的情况下使用数组
}
]
},
]
全局参数operate字段常用枚举说明如下:
操作符(operate) | 说明 | 备注 |
---|---|---|
= | 等于 | - |
!= | 不等于 | - |
> | 大于 | - |
>= | 大于等于 | - |
< | 小于 | - |
<= | 小于等于 | - |
in | in | 参数值必须是数组 |
not-in | no in | 参数值必须是数组 |
like | like | 关键字模糊匹配。
SQL会自动解析成 |
contain | 字符串包含 | SQL会自动解析成like '%{参数值}%' |
start-with | 字符串以什么起始 | SQL会自动解析成like '%{参数值}' |
end-with | 字符串以什么结尾 | SQL会自动解析成like '{参数值}%' |