应用设置
每个用户对自己有管理权限的应用(具体来说,就是个人区的自己的应用,和团队空间、数据集市中有管理权限的应用)会有一个设置菜单,在设置菜单中,可以给 app 设置数据权限模式,也可以给数据集设置行权限。还可以在应用设置中,开启本应用的分享链接,并且能够设置分享链接中的图表交互。
应用设备
仪表盘在电脑端和移动端展示样式不同。 应用设置中增加应用设备设置, 并按照配置呈现相应设备的编辑页面,使用单一展示设备的用户,操作更加方便。
下图展示了电脑端和移动端的示例。
应用编辑过程中可随时修改展示设备。 应用的展示设备会在卡片上呈现。 查询应用仅支持在 PC 端展示。
只读模式交互设置
分享公开链接时可以设置的交互权限包括:查看明细数据、导出数据;
分享公开链接时,默认的交互权限为:不允许查看明细数据、不允许导出数据,按照默认设置分享后,分享的链接中查看明细数据、导出数据操作都不可用。
查看数据
交互权限选择“查看明细数据”的情况下,在分享链接的图表中,有两种查看数据的格式:
第①种: 选择维度分组,单击调出,选择详情可以查看当前分组的数据详情。
第②种:点击右上角的查看数据 ,可以查看当前图表中使用到的字段的明细数据。
请注意
图表中点击交互行为选择不响应,应用发布时,无论是否勾选查看数据、下钻,分享后在分享的链接中点击图表维度分组时均不响应,即不弹出六边形菜单。
导出数据
交互权限勾选导出数据的情况下,在分享的链接中可以导出图表的聚合数据以及详细数据:
仪表盘中图表导出数据
在仪表盘中,选中图表,点击导出数据,可以导出图表的聚合数据:
图表中导出数据
在图表中,点击导出按钮展开下拉框,选择导出数据,可以导出图表的聚合结果数据:
右上角的查看数据中的下载数据
在图表中,点击右上角的查看数据,在弹出的窗口中选择下载数据,可以下载图表的明细数据:
图表分组查看详情里的下载数据
在图表中,选择维度分组单击选择详情,在弹出的窗口中选择下载数据,可以下载所选分组的明细数据,如查看日期为“2020/6”分组的数据时:
数据权限
通过对应用进行数据权限设置能够让用户只能在许可的范围内查看和使用数据,实现对数据的分发。管理者可以决定用户访问该应用时能看到哪些数据。
数据权限分为三种:应用作者,数据集作者,使用者;创建应用时,应用默认为应用作者权限。
应用作者
使用应用作者权限,主要用于分析人员建立分析模型后,系统内的所有有权访问该应用的用户都可以使用该分析人员的数据查看应用内的完整数据,无需额外设置权限的场景。
所有有权限访问该应用的账户,可见的数据与应用创建者所见的数据完全一致。
应用的管理者可以给数据集设置行权限限制数据,被设置了行权限的,有权限访问该应用的账户看到的是在应用的 owner 所见数据的基础上添加了行权限的数据。
数据集作者
数据集作者,使用创作者的数据发布应用,实现运营指标的汇报和共享,相关团队能够及时发现并调整战略方向。
使用数据集作者权限,也是一种系统内的分享,发布者可以在应用内设置权限控制来指定可访问该应用的账户以及每个账户对应的数据访问范围,从而将该应用的阅读权限授权给指定的用户。
应用的管理者可以给数据集添加规则,其他有权限访问该应用的非管理者账户看到的是在数据集的 owner 所见数据的基础上添加了行权限的数据。
使用者
使用使用者数据,通过在数据连接上的权限控制用户访问数据的范围,让企业通过衡石产品构建丰富的数据应用嵌入到不同业务系统变得简单。
使用使用者数据,是一种系统内的分享,任何拥有该应用发布者在应用内设置权限控制时只需要指定可访问该应用的账户,账户在应用内的可见数据范围由连接上的权限控制。
在使用者
模式下,开启引擎功能不可用。并且在这个模式下,行权限不生效,此时按照当前账户的连接权限控制来查看数据。
请注意
若应用中有导入引擎的数据集,则不允许切换为使用者
。
权限控制
在使用应用作者
权限和使用数据集作者
权限的模式下,应用管理者可以对数据集设置权限,包括行权限和列权限。
提示
数据权限设置使用者
权限的模式时,应用管理者不能对数据集设置权限。
行权限添加规则
打开权限控制设置页面,点击行权限规则右侧的加号,为数据集添加行权限。
第一步 选择用户 点击用户,选择需要设置的行权限的用户,这些用户可以看到符合行权限规则的数据。
第二步 选择权限设置方式,支持简单过滤和表达式过滤
再简单过滤的情况下,行权限中的对比值可以为参数值,部分情况下也可选择用户属性。
行权限可以选择用户属性的对比条件:
文本:除为空/不为空外,所有比较方式的对比值均可以选择用户属性;
数字:等于/不等于两种比较方式的对比值可以选择用户属性;
日期:等于/不等于两种比较方式的对比值可以选择用户属性;
选择多个数据集,分别添加行权限控制,此处的行权限可以是“并且”的关系也可以是“或者”的关系,在第一个下拉框中选择要添加行权限的数据集,在第二个下拉框中选择字段,指定对比方式以及对比值。
参数值
对比方式选择参数值:
例如:为
用户
中所选择的用户添加行权限,为两个数据集各自添加行权限: 数据集制造销售数据:可见的数据仅为字段“地区”等于“参数值”“地点”的所在的行数据。用户属性
对比方式选择用户属性(用户属性的设置方式见用户管理):
例如:为规则“各区负责人”中所选的用户添加行权限:
数据集
用户属性
:字段“地区”等于“用户属性”,在与用户属性相连的下拉框中会列出系统内全部的用户属性,选择用户属性省份属性
:该条规则内的用户访问应用时,在依赖
用户属性
数据集的图表中,只能看到字段“地区”中等于自己的用户属性值的行数据。
第三步 预览
点击预览,预览数据时,可以切换数据集查看添加了规则的全部数据集分别可见那些数据。
第四步 保存
点击保存,规则添加成功,该窗口关闭。
列权限添加规则
列权限控制数据集字段对用户是否可见,当对数据集某个字段设置列权限后,用户在查看数据集时看不到该字段。
列权限规则设置相对简单。选择用户、数据集、对用户不可见的字段,点击保存即可。
编辑规则
点击规则上的编辑按钮编辑已经设置的权限规则。
删除规则
点击规则右侧的删除按钮可以删除设置的权限规则。
请注意
针对 dataset 设置的行权限不会往下游推送,例如: dataset C = A join B, dataset A 和 B 上分别设置行权限: A where a = $user.a 和 B where b= $user.b, 那么 C 的 tableSql 就是 A join B, 而不会是 A where a = user.a join B where b= $user.b 如果用户需要控制权限,需要额外在 C 上设置行权限。
规则之间的计算方式
行权限和列权限之间取交集 对同一用户、同一数据集,行权限和列权限作用后的数据集取交集。
行权限或列权限内部的多规则之间取并集 对于同一个用户,同一个数据集,如果创建了多条规则,那么最后生效的权限是规则的并集。
比如在规则1中为用户 A 授权访问区域为“北京市”的数据,在规则2中为用户 A 授权访问区域为“上海市”的数据,最终用户 A 可以访问的是“北京市”和“上海市”的数据。
连接权限、数据权限和行权限控制的关系
连接权限控制是第一道防线,它控制谁能访问该数据连接,以及访问该数据连接时能访问到什么数据。
数据权限是控制用户在访问该应用的数据集时,应该看到谁的数据:应用作者的,数据集作者的,还是使用者自己的。
行权限控制是在确定了应用的数据权限模式也就是数据集的数据之后,进一步去控制数据集数据的分发。
图表数据缓存周期
图表数据缓存周期指在周期时间内每次查询的图表数据是从缓存中读取数据,默认为 3600 秒,即 1 小时。也就是说,图表数据在缓存中保存 1 小时,当超过缓存周期时系统重新刷新数据。
每个应用支持自定义设置图表数据缓存周期。未设置时按照系统设置->图表数据缓存周期的时间进行图表数据更新。
日期属性设置
系统日期展示格式固定从周一到周日,但是不同业务统计周期方式不同,有的业务统计周期是从周日到周六,此时可以通过日期设置,自定义每周开始的日期,方便用户数据周期统计、同环比对比等操作。
日期属性设置后对整个应用生效,应用内日期相关的参数控件、日期过滤器等控件都会按照配置的日期属性展示,同/环比等周期计算也会按照配置的日期属性进行统计计算。
翻页器设置
请查看应用翻页器,了解翻页器的具体使用方法。
全局轮播
全局轮播指在全屏状态下应用中的仪表盘轮播展示。支持按顺序轮播和随机轮播两种方式。轮播间隔可以设置5秒、10秒、30秒、60秒、120秒、5分、10分、15分、20分。 开启自动轮播后,应用进入全屏状态仪表盘会根据设置自动进行轮播。
公开链接
选择使用应用作者
权限或使用数据集作者
权限"时,可以生成分享链接(使用使用者
不可以),系统内用户或非登录用户都可通过共享链接查看应用。
请注意
公开链接不受应用设置中的行权限控制的限制。即用户不论是否登录,通过公开链接看图,看到的是基于数据集作者或应用作者数据连接权限过滤后的数据,行权限不生效。 使用使用者
权限的模式下,没有启用公开链接按钮。
公开链接设置
应用公开链接支持以下设置。
公开链接二维码
应用公开链接支持通过二维码分享,点击右侧的二维码进行获取。移动用户可以通过扫码查看应用,使分享更方便、快捷。
不显示仪表盘标题
当“不显示仪表盘”勾选后,预览公开链接时则不显示顶部的仪表盘标题(图中红框部分),在仪表盘标题位置右侧的"全屏"、"刷新"、"导出"的功能按钮也不显示。 同时在应用链接中会生成对应的参数。
不显示翻页器
当“不显示翻页器”勾选后,预览公开链接时则不显示翻页器(图中红框部分)。同时在应用链接中会生成对应的参数。
需要密码访问
针对系统外的用户,可以使用公开链接+密码的方式分享仪表盘相关信息,保护数据的安全性。系统默认配置了随机密码,也支持用户自己编辑定义公开链接密码。
HMAC 签名保护
很多企业对数据是非常敏感的,他不希望数据被随意地查看,所以为了保障共享 URL 过滤的安全性,我们在应用设置
->公开链接
中增加了 HMAC 哈希校验功能。
具体操作步骤如下:
1.系统管理员在设置
->安全策略
->数据隐私保护
中启用HMAC 签名保护。
只有在设置
->安全策略
->数据隐私保护
中启用HMAC 签名保护的情况下用户才可以看到密钥、复制密钥。
2.用户在应用设置
->公开链接
中启用公开链接与HMAC 签名保护。
- 启用 HMAC 签名保护时,可以根据需要设置有效期,未设置或设置为0时,没有失效时间。有效期的计算是当前时间前后区间内都有效,比如设置了有效期为60秒,HENGSHI 服务器时间为2021-01-01 10:10:10,则该公开链接在2021-01-01 10:09:10 和 2021-01-01 10:11:10 之间都有效。
3.未登录用户访问公开链接时会提示“参数校验失败”。
4.用户访问公开链接,要想嵌入共享 URL 时必须计算 signature。点击签名标识,在弹框中按示例填写,点击计算得到签名结果。
5.嵌入共享 URL 的格式为:shareUrl?having={having}&where={where}&utcSecond={utcSecond}&signature={signature}
。
举例:
- 未登录用户访问如下加了 signature 参数的链接(启用了 HMAC 哈希校验功能),将“北京市”修改为“上海市”后将看不到任何数据,系统提示“参数校验失败”:
https://develop.hengshi.org/#/share/app/E5FA041D8/dashboard/1?where=[{"op":"in","kind":"function","args":[{"kind":"field","op":"city","dataset":1},{"kind":"constant","op":["北京市"],"dataset":1}]}]&signature=bf576f3de3259555e2247b64bd341a27a237ef87
提示
系统管理员可以重置系统设置里的 HMAC 密钥,与此同时,用户也要更新自己生成“哈希值”逻辑里的密钥(64位 hmacKey)。
指标预警
应用指标预警功能,用于监控应用中图表的指标,当指标达到阈值条件时通知用户,让用户及时感知业务指标变化情况,调整业务策略。指标预警支持设置多条预警, 每条预警可自定义检测时间及预警频率。预警可通过邮件和 Webhook 两种方式通知用户。目前该功能在应用发布态下暂不开放。租户场景也支持指标预警,并且可以对平台方分享的应用设置指标预警。
设置指标预警
按下面的操作指导建立指标预警。
1.在指标预警界面,点击新建预警。
2.填写预警名称和预警条件。 选择预警指标所在的图表,设置预警规则。 每个图表可以设置多个预警规则,可以选择预警规则触发条件,设置满足任一规则时触发预警或满足全部规则时触发预警。
3.设置预警触发时间。
- 设置指标检测频率,可按小时、天、周、月检测,也可以自定义检测频率。
- 通知设定指当达到预警条件时通知用户次数,通知一次和一直通知。通知一次表示本次检测指标符合预警条件时通知用户,如果下次检测指标时还满足预警条件,则不通知用户。一直通知表示只要检测到指标符合预警条件就通知用户。
- 异常处理指当检测任务发生异常时的任务处理情况,可以设置失败重试和失败暂停。失败重试表示任务失败后重新发起任务,根据重试间隔和重试次数来重启任务。失败暂停表示任务失败达到一定次数后,暂停该任务,并通知应用所有者。
4.设置通知方式,包括邮件通知、Webhook、企业微信、飞书四种方式。详细配置方法请参考订阅章节中相关介绍。
订阅
平台支持将应用中的仪表盘立即推送或定时推送给组织内外的用户,方便目标用户即时查看到自己需要的业务指标,作为开展业务的决策依据,及时响应并调整业务方向。
平台的数据分析员,对于拥有管理权限的应用,包括创作模块的个人空间、团队空间应用和应用模块中的应用,都可以进行邮件推送设置。每个应用可以设置多个订阅,为不同的用户推送不同的内容。
租户场景也支持订阅功能,并且可以对平台方分享的应用设置订阅任务。
新建订阅任务
每个订阅任务包括订阅名称和订阅发送。订阅发送根据发送方式不同,设置内容方式也不同,包括邮件通知、企业微信、飞书、Webhook 四种方式。这四种方式可同时使用,如同时设置邮件通知和企业微信订阅方式。
邮件通知
邮件通知是以邮件的形式通知仪表盘相关业务信息,在使用邮件通知时请先确认配置了SMTP服务。
- 选择用户:填写邮件通知的系统用户。
- 其他邮件地址:当收件人不是系统用户时,填写收件人邮箱地址。
- 邮件内容:包括邮件标题、邮件正文、选择仪表盘。 邮件内容支持自定义纯文本、支持系统参数、应用参数和用户属性。
- 系统参数有应用名称、应用 URL 和邮件推送日期。
- 应用参数
- 用户属性 下面示例展示使用各种参数及用户属性书写的邮件内容及邮件发送时的情况。
- 高级配置:支持正文预览仪表盘图片、正文附加仪表盘链接、附加仪表盘数据(仪表盘分析的结果数据,以文件形式展示于邮件附件)。
- 特殊配置:当邮件内容过大时发送提示邮件。
企业微信
企业微信方式是以企业微信消息的形式通知用户,并且支持在消息中添加仪表盘信息。 企业微信方式开启前需要在认证方式中进行令牌信息配置,请联系系统管理员进行配置(配置一次即可),否则会影响功能使用。
第一步:准备企业微信应用
用户需要根据认证方式创建企业自建应用。
第二步:获取用户 ID
根据教程获取 user_id
。
第三步:配置企业微信可信 IP
进入之前创建的企业微信应用的管理页面,配置企业可信 IP。
第四步:配置企业微信推送内容
使用企业微信方式订阅仪表盘消息时,需要配置以下内容,包括:
- 消息标题:必填,不超过100个字,支持使用参数信息。
- 发送成员:必填。 输入用户
id
,支持输入多个用户,使用英文逗号隔开。 - 消息内容:系统默认发送了固定的消息内容,支持用户自定义消息内容。自定义纯文本、支持系统参数、应用参数和用户属性。
- 选择仪表盘:选择订阅消息中发送的仪表盘信息。
- 高级配置:可以在消息中附加仪表盘快照图片和仪表盘链接。
飞书
飞书方式是在飞书 app 中以消息的形式通知用户,并且支持在消息中添加仪表盘信息。飞书方式开启前需要在认证方式中进行令牌信息配置,请联系系统管理员进行配置(配置一次即可),否则会影响功能使用。
第一步:准备飞书应用
创建应用
开通权限
用户需要为该应用开通以下权限:
权限名称 | code |
---|---|
获取用户 user ID | contact:user.employee_id:readonly |
通过手机号或邮箱获取用户 ID | contact:user.id:readonly |
获取与发送单聊、群组消息 | im:message |
以应用的身份发消息 | im:message:send_as_bot |
给一个或多个部门的成员批量发消息 | im:message:send_multi_depts |
给多个用户批量发消息 | im:message:send_multi_users |
获取与上传图片或文件资源 | im:resource |
开启机器人
根据飞书教程为企业自建应用开启机器人功能。
发布
发布应用
第二步:获取用户 ID
根据教程获取 user_id
。
飞书的用户ID有多种类型,需要获取的类型是
user_id
。
第三步:配置飞书推送内容
使用飞书方式订阅仪表盘消息时,需要配置以下内容,包括:
- 消息标题:必填,不超过100个字,支持使用参数信息。
- 发送成员:必填。 输入之前获取的
user_id
,支持输入多个用户,使用英文逗号隔开。 - 消息内容:系统默认发送了固定的消息内容,支持用户自定义消息内容。自定义纯文本、支持系统参数、应用参数和用户属性。
- 选择仪表盘:选择订阅消息中发送的仪表盘信息。
- 高级配置:可以在消息中附加仪表盘快照图片和仪表盘链接。
Webhook
使用 Webhook 时,用户需要自定义消息请求方式及请求内容。
- URL:系统向对应的 HTTP 地址发送请求,URL 后面可以拼接参数。
- 请求方式:支持 GET、POST、PUT、DELETE 四种方式。
- 请求头部和请求体:根据预警内容填写请求头部和请求体,请求头部和请求体中都可以携带预警信息。 示例中使用 POST 方式发送消息,在请求体中填写预警内容,通知用户处理。GET 方式的请求仅包含请求头部。
- 选择仪表盘:选择仪表盘,作为定时发送内容。
订阅推送计划
邮件订阅设置完成,在订阅列表页面点击订阅时展示为设置详情。在详情页右上角可以点击“立即推送”,将应用立即推送给目标对象。也可以选择“推送计划”设置定时邮件推送,邮件即在约定的时间送达收件人。
- 基本信息:设置执行时重试次数及任务的优先级。任务优先级分高、中、低三个级别。高级别的任务优先处理。
- 调度信息:
- 设置任务的调度时间,可设置多个调度时间。 支持按小时、天、周、月的方式设置执行计划。
- 小时:可设置每小时的第几分钟更新。
- 天:可以设置每天具体的时间点更新。
- 周:可以设置每周的周几的具体时间点更新,可以多选。
- 月:可以设置每月的第几天的具体时间点更新,可以多选。
- 自定义:可以自行设置更新的时间点。
- 设置任务的前置依赖,可设置多个前置依赖任务。
- 设置依赖等待时间。
- 设置任务的调度时间,可设置多个调度时间。 支持按小时、天、周、月的方式设置执行计划。
- 告警信息:开启失败告警,当任务执行失败后,会以邮件形式通知到收件人。
订阅推送记录
在上述邮件推送详情页的右上角选择“推送记录”可查看该应用的所有推送历史以及推送日志。
推送权限规则
• 系统内用户收到邮件推送的内容,数据权限同应用
-> 设置
-> 数据权限
。
• 系统外用户收到邮件推送的内容,数据权限同应用作者权限。
可见数据源设置
点击应用
-> 设置
,移动到可见数据源设置
区域。
可见数据源设置的目的是设置在本应用做图时可以使用的数据源,其中包括当前应用和数据集市中的数据包
当用户在某个应用中只想使用指定的数据源进行做图时,那么就可以将该数据源设置为可见,这样就可以避免每次做图时在项目繁多的数据来源下拉列表中选择,方便用户做图
可见数据源默认为不启用,不启用时,所有数据源可见
启用时,只有在可见数据源中选中的数据源可见,这些数据源会出现在做图时的数据源下拉列表中
如果未选中任何数据源,则做图时的数据来源下拉列表为空
如果只选中一个数据源,则做图时的数据来源下拉列表框默认为该数据源,做图时无需切换数据源,可以直接选择数据集
可见数据源设置不会控制后端数据源权限,只控制当前应用做图时的数据来源列表
版本管理
某些应用发布后,依旧会不停的更新内容发布新的版本,所以一个应用可能会发布很多版本。新版本覆盖了旧版本内容,用户无法查看历史上某个发布版本的内容。
应用版本管理功能,保存应用发布时数据及相关分析内容。 当需要回归到某个历史版本时,可以在应用管理中找到该版本,一键还原,快速方便。应用版本管理功能暂时不对租户场景开放。
应用版本仅保留数据分析相关的所有内容:仪表盘、数据集、数据模型、参数、翻页器等,涉及到连接、权限相关的设置则无法保留。 应用发布时自动保留版本,为了避免占用大量内存空间,仅保留最近的3个版本,更早的版本将被自动删除。