3.5.9.Space
创作人:齐乐
审稿人:吴斌
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 中而设置。主要包含三部分结构:
l application:表示应用程序名称,Space 权限命名为 kibana-.kibana。
l privileges:表示权限,Space 细分为各个小功能的三种权限:ALL、READ 和 NONE。
l resources:表示权限应用范围,Space 用于区分空间。
示例如下图所示:通过 GET _security/role/a 命令获取 Role a 的权限,拥有此 Role 的用户具有 A 空间的部分权限和 B 空间的全部权限。
负责管理 Space 功能的管理员用户,需要赋予 kibana_admin 角色的权限,其设置如下图所示:
《Elastic Stack 实战手册》——三、产品能力——3.5 进阶篇——3.5.9.Space (下) https://developer.aliyun.com/article/1228404