我们在Kibana中有一些仪表板,这些仪表板是通过Elasticsearch中的索引定义的,该索引来自多租户环境的日志。即到目前为止,我们有来自多个客户端的记录都集中在一个索引中,供我们自己使用(分析应用程序的行为,系统故障等)。
我们希望为客户提供一些有关其自身活动的统计信息(即,其应用程序使用了多少次API调用等)。我知道可以使用嵌入功能,即获取Kibana本身生成的代码来访问仪表板或单个可视化文件。这种方法的问题在于,我们必须向客户端提供的URL(例如,放置在网页的iframe中)包括过滤器,该过滤器将数据限制为仅其租户ID。因此,如果他们知道其他租户的ID,则可以操纵该代码并获得对其他客户日志的访问权限,在我们的情况下这不是一个选择。
有没有办法实现这一目标?例如,通过一个代理应用程序,该应用程序将使用一些哈希码并将其内部映射到租户ID?
是否有更好/其他方式提供对Kibana准备的信息的访问?某种离线渲染器会在预定的时间范围内拍摄快照并将其存储为静态文件吗?不需要让用户看到我们拥有的太多东西吗?
我们正在运行Kibana 5.5.2,但也可以选择升级。