Elastic安全机制

在很多的情况下,出于安全的原因,我们需要对不同的Kibana用户分配不同的用户权限,这样使得他们之间不能互相访问彼此的资源,同

时他们也应该对不同的索引拥有不同的权限,比如读,写,管理等等。Elastic Security通过基于角色的功能提供授权存取控制(RBAC-

Role Based Access Control)。

一个用户可拥有不同的role,并且每一个role都含有不同操作权限。使用RBAC,您可以控制访问通过定义:

  • users:创建具有不同的属性的账号(username, full name,邮件,及相应的roles)
  • roles:分配一组命名权限,Elasticsearch里含有有多个内置角色
  • resources:限制访问的实体,比如document或一个索引
  • privileges:代表一个或多个动作的命名组可以在资源上执行
  • permissions:应用于一个特权的一组一个或多个特权或更多资源

什么是Space(空间)?

通过Space可以组织仪表板和其他将对象保存到有意义的类别中。在默认的情况下这个功能是启动的。可以在elasticsearch.yml文件中进

行配置:

xpack.spaces.enabled: false

上面的配置将使得这个功能被取消。

在一个空间内创建的对象只能从该空间进行访问。启用安全性后,您可以控制哪个用户拥有访问哪些空间。来自特定空间的已保存对象将

被标记为在该空间的对象。

在默认的情况下,Kibana在启动时帮我们创建一个名字叫做Default的空间。当我们从一个没有空间的版本升级后,那么所有

的visualization将会被存于Default的空间里。当我们创建一个Space时,它只需要一个名字,它被用来生产URL识别符,我们还可以加入

一些描述符。

准备工作

  1. 安装好elasticsearch和kibana

  2. 开启x-pack,并设置好默认用户的密码等

  3. 登录kibana界面

  4. 创建space

    4.1 点击左上角的Space空间,默认是Defalut,点击“Manage Sapce”。进入到Space界面后,点击右上角的“Create a space”.输入名称,然后点击“Create space”.

    如下图所示:

4.2 同样操作创建另一个space,如下图所示:

4.3 最终显示界面信息:

  1. 创建角色Role

    5.1 点击“Management”,再点击“Security”下面的“Roles”,点击右上角的“Create role”,操作步骤如下图所示:

5.2 创建另一个角色test2,操作步骤同上,效果如下:

  1. 创建用户。点击“Management”,再点击“Security”下面的“Users”,点击右上角的“Create user”,按步骤创建就行了,选择上一步创建的角色,最终效果如下:

  1. 点击右上角的space,切换到Test1这个space

然后点击“Dev Tools”工具,在这个Test1 space下创建一个索引test1:

```
PUT /test1/_doc/1
{
"name":"test1"
}
``` **注意:我这边是先创建的role管理的索引,后创建的索引,注意索引名称** 然后回到“Management”下的“Kibana”的“Index Patterns”,创建一个索引模式,输入的时候会提示有test1和test2,但是我们只选择test1,最终效果如下:

然后再点击右上角的space,切换到Test2这个space,按照上述步骤,创建一个索引test2:

```
PUT /test2/_doc/1
{
"name":"test2"
}
``` 然后回到“Management”下的“Kibana”的“Index Patterns”,创建一个索引模式,输入的时候会提示有test1和test2,但是我们只选择test2,最终效果如下:

  1. 然后点击左边导航第一个“Discover”,会发现,在test1这个space下只能看到test1*, 在test2这个space下只能看到test2*,在default这个默认的space下看不到任何索引。

总结:深刻理解这句话:在一个空间内创建的对象只能从该空间进行访问

若是已有索引模式,则可以先删除索引模式,然后创建space,创建角色,创建用户等,切换到创建的space,再创建索引模式。也就是说需要在这个space下进行操作才行。

使用kibana给不同的用户创建不同的space的更多相关文章

  1. linux 用户创建、管理、权限分配

    (1)su与sudo su:通过su可以在用户之间切换,如果超级权限用户root向普通或虚拟用户切换不需要密码,什么是权力?这就是!而普通用户切换到其它任何用户都需要密码验证: sudo: sudo扮 ...

  2. oracle用户创建及权限设置及表空间

    建立表空间: create tablespace portx_data datafile 'D:\oracle_data\portx.dbf' size 50m autoextend on next ...

  3. MYSQL添加新用户 MYSQL为用户创建数据库 MYSQL为新用户分配权限

    1.新建用户 //登录MYSQL @>mysql -u root -p @>密码 //创建用户 mysql> insert into mysql.user(Host,User,Pas ...

  4. oracle用户创建及权限设置

    权限: create session create table unlimited tablespace connect resource dba 例: #sqlplus /nolog SQL> ...

  5. vsftpd虚拟用户创建实例(转载)

    vsftpd虚拟用户创建实例 发布:theboy   来源:net     [大 中 小] vsftpd虚拟用户创建实例,有需要的朋友可以参考下.  vsftpd虚拟用户创建实例,有需要的朋友可以参考 ...

  6. linux用户创建删除以及文件权限查看修改

    一. 1.查看用户 命令如下:whoami 2.创建用户 创建用户命令:sudo adduser hello 超级用户是 root 删除用户名命令:sudo deluser hello --remov ...

  7. SAP CRM 为用户创建业务合作伙伴并分配到组织单位

    想要在SAP CRM的前台完成一些操作,需要登录的用户在系统中存在对应的业务合作伙伴才可以,某些情况下,还需要被分配到正确的公司.部门.职位.下面是相关的操作步骤. 本文假定读者已经拥有一个开发帐号. ...

  8. 用户创建,删除and并发注册and系统登陆的API研究(学习汇总网上资料)

    一.系统登陆链接实现 比如有一个外围支持系统,用户需要在外围系统登录之后点个link就可以登录到Oracle ERP系统中,那么我们需要先把外围系统的用户创建在Oracle ERP中,并且分配职责给他 ...

  9. 对oracle用户创建asm磁盘

    --root用户执行vi /etc/sysctl.conf #Install oracle settingfs.aio-max-nr = 1048576fs.file-max = 6815744#ke ...

随机推荐

  1. CTF必备技能丨Linux Pwn入门教程——stack canary与绕过的思路

    Linux Pwn入门教程系列分享如约而至,本套课程是作者依据i春秋Pwn入门课程中的技术分类,并结合近几年赛事中出现的题目和文章整理出一份相对完整的Linux Pwn教程. 教程仅针对i386/am ...

  2. Eclipse 笔记

    2004年前的开发架构:(操作系统+数据库+中间件+开发工具) AIX + DB2 + WAS + WSAD  ===  皇家级 UNIX/Linux + Oracle +BEA WebLogic + ...

  3. 十五、Mysql字符集的那些事

    1. 设置默认字符集 #vim /etc/mysql/my.cnf .(5.5以后系统)如下修改: [client] default-character-set=utf8 [mysqld] defau ...

  4. jQYERY

    1.事件流: (1)事件捕获 (2)处于目标阶段 (3)事件冒泡 2.事件对象 对每一个事件都会回调函数,会有一个默认的事件对象,就是this event.target 触发的目标对象 event.t ...

  5. Rational Rose 画九种常用架构图

    UML建模详解(3)—使用Rational Rose 画九种常用架构图   UML是一种建模语言,是系统建模的标准.我们之所以建模是因为大规模的系统设计时相当复杂的,当系统比较复杂时就会涉及到以下这几 ...

  6. Android Adapter中获得LayoutInflater

    LayoutInflater li =(LayoutInflater)MyContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);

  7. 链接doc命令行的mysql的编码问题

    好几次用doc命令行链接mysql数据库进行保存注册等内容,一直出错,要么插入数据库的是乱码问题,要么是没插进去,怎么回事? 在修改了代码(接收中文数据)的基础上(即在代码中用utf-8接收数据) 也 ...

  8. [BZOJ1864][CODEVS2462]三色二叉树

    题目描述 Description 一棵二叉树可以按照如下规则表示成一个由0.1.2组成的字符序列,我们称之为“二叉树序列S”: |-0  表示该树没有子节点 S = |-1S1 表示该树有一个子节点, ...

  9. 利用nodejs识别二维码内容的方法

    const decodeImage = require('jimp').read; const qrcodeReader = require('qrcode-reader'); qrDecode(&q ...

  10. 洛谷p3385【模板】负环

    最近很久没怎么写最短路的题导致这个题交了好多遍 AC率是怎么下来的自己心里没点数 SPFA虽然臭名昭著但是他可以用来判负环 如果一个点进队的次数大于等于n说明存在负环 这道题一开始memset我给di ...