Space-Elastic Stack 实战手册

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: Space 功能可以将 Kibana 划分为多个工作空间,并基于权限控制使不同的用户看到不同的工作空间

970X90.png

· 更多精彩内容,请下载阅读全本《Elastic Stack实战手册》

· 加入创作人行列,一起交流碰撞,参与技术圈年度盛事吧

创作人:齐乐
审稿人:吴斌

Space 功能介绍

Space 功能可以将 Kibana 划分为多个工作空间,并基于权限控制使不同的用户看到不同的工作空间。空间可管理的对象包含 Dashboards 等可视化内容以及 Kibana 自带的标签页功能如 Dev 和 Monitoring 等。

Space 功能默认自动开启,且会自动创建 Default 空间,当创建了其他空间之后,登录 Kibana 时会要求你选择工作空间。如果想要关闭 Space 功能,只需将 kibana.yml 配置文件中的xpack.spaces.enabled 设置为 false 即可。

Space 实现原理

Space 的权限控制由 Elasticsearch 的 Security 模块提供的 Application privileges 实现。此功能对 Elasticsearch 存储的数据无任何权限控制,是专门为其他自定义应用程序,存储其权限在 Elasticsearch 的 Role 中而设置。主要包含三部分结构:

  • application:表示应用程序名称,Space 权限命名为 kibana-.kibana。
  • privileges:表示权限,Space 细分为各个小功能的三种权限:ALL、READ 和 NONE。
  • resources:表示权限应用范围,Space 用于区分空间。

示例如下图所示:通过 GET _security/role/a 命令获取 Role a 的权限,拥有此 Role 的用户具有 A 空间的部分权限和 B 空间的全部权限。

1.jpg

图1 Role 中存储的 Space 权限

负责管理 Space 功能的管理员用户,需要赋予 kibana_admin 角色的权限,其设置如下图所示:

2.jpg

图2 kibana_admin 的权限

Space 操作实践

Space 的创建、修改和删除

通过 Kibana 界面的 Stack Management >> Kibana >> Spaces 标签页进行相关操作

3.jpg

图3 Space 管理界面

创建或修改 Space 信息包含如下内容:

  • Space 基本信息:包含名字、URL 地址信息(切换 Space 工作空间会修改 Kibana 的 URL地址为对应 Space,一旦设置不可修改)、描述信息(可为空)和头像照片。

4.jpg

图4 Space基本信息

  • Space 功能可见性:控制当前 Space 空间中 Kibana 各个功能标签页的可见性,可以将其隐藏以防止用户使用,如果想禁用需要控制 Role 权限实现。

5.jpg

图5 Space 功能可见性

需要注意的是删除 Space 会同时删除空间内存储的工作对象。

设置角色的 Space 权限

通过 Kibana 界面的 Stack Management >> Security >> Roles 标签页进行相关操作

此标签页除了可以设置 Role 的 Elasticsearch 相关权限 ( cluster / index 等)外,还可以设置 Kibana 的 Space 权限。如上文所述,其信息存在 Role 的 Application 之中, 且可以为不同的 Space 设置不同的权限如下图所示

6.jpg

图6 Role 中的多个 Space

具体 Space 权限设置如图8所示:可以直接设置全部权限为 All 或者 Read ,也可以使用自定义方式设置每个小功能独立权限。

7.jpg

图7 Role 中 Space 权限设置

管理并分享 Spaces 之间的工作对象

通过 Kibana 界面的 Stack Management >> Kibana >> Saved Objects 标签页进行相关操作

Space 功能的目的就是将 Kibana 的工作对象分到不同空间,所以多个 Spaces 之间的对象复制是必不可少的操作,具体操作如下图:选择对象的 Copy to space 选项,然后选择要复制到的目的 Space 。

8.png

图8 选择要迁移的对象

9.png

图9 选择迁移的目的空间

并且还可以将工作对象导出到文件,用于批量迁移工作对象到其他 Space 或者迁移到其他的 Kibana 实例。具体操作如下图:选择要导出的对象,然后点击 Export 导出到文件;切换 Space 或者在其他 Kibana 实例中通过 Import 可以导入文件存储的 Kibana 工作对象。

10.png

图10 选择要导出的工作对象

11.png

图11 Import 选择文件进行对象导入

Space 自定义配置

通过 Kibana 界面的 Stack Management >> Kibana >> Advanced Settings 标签页进行相关操作

我们可以修改一些 Kibana 的默认配置,但大部分配置只应用于当前 Space。例如可以修改进入 Space 的初始路由界面:从默认 Home 界面修改为 Dashboards 界面:

12.jpg

图12 Space 默认配置修改

创作人简介:
齐乐,从事大数据开发工作近四年,主要方向为 ES,已通过 ECE 认证,近期在研究
Spark 和 Flink。 欢迎一起学习,一起讨论,共同进步。
博客: https://www.jianshu.com/u/cc7ee7454afc
相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
相关文章
|
存储 分布式计算 安全
带你读《Elastic Stack 实战手册》之50:——3.5.9.Space (下)
带你读《Elastic Stack 实战手册》之50:——3.5.9.Space (下)
100 0
|
存储 安全 数据可视化
带你读《Elastic Stack 实战手册》之50:——3.5.9.Space (上)
带你读《Elastic Stack 实战手册》之50:——3.5.9.Space (上)
108 0
|
存储 缓存 安全
Painless scripting — Elastic Stack 实战手册
Painless scripting 是一种简单的、安全的针对 Elasticsearch 设计的脚本语言,Painless 可以使用在任何可以使用 scripting 的场景
711 0
Painless scripting — Elastic Stack 实战手册
|
存储 JSON 安全
带你读《Elastic Stack 实战手册》之6:——3.3.1.Elastic Stack家族(1)
带你读《Elastic Stack 实战手册》之6:——3.3.1.Elastic Stack家族(1)
184 0
|
监控 数据可视化 安全
带你读《Elastic Stack 实战手册》之6:——3.3.1.Elastic Stack家族(5)
带你读《Elastic Stack 实战手册》之6:——3.3.1.Elastic Stack家族(5)
140 0
|
存储 Kubernetes 数据可视化
带你读《Elastic Stack 实战手册》之6:——3.3.1.Elastic Stack家族(4)
带你读《Elastic Stack 实战手册》之6:——3.3.1.Elastic Stack家族(4)
136 0
|
存储 算法 数据处理
带你读《Elastic Stack 实战手册》之6:——3.3.1.Elastic Stack家族(2)
带你读《Elastic Stack 实战手册》之6:——3.3.1.Elastic Stack家族(2)
144 0
|
存储 前端开发 数据可视化
带你读《Elastic Stack 实战手册》之6:——3.3.1.Elastic Stack家族(3)
带你读《Elastic Stack 实战手册》之6:——3.3.1.Elastic Stack家族(3)
146 0
|
存储 JSON 数据库
带你读《Elastic Stack 实战手册》之17:—— 3.4.2.2.理解mapping(上)
带你读《Elastic Stack 实战手册》之17:—— 3.4.2.2.理解mapping(上)
|
开发者
Elastic Stack 实战手册
Elastic Stack 实战手册
93 0
下一篇
无影云桌面