Kibana多用户创建及角色权限控制
1 介绍
ELK日志管理属于基础设施平台,接入多个应用系统是正常现象,如果接入多个系统的索引文件没有进行权限划分,那么很大程度会出现索引文件误处理现象,为了避免这种情况发生,多用户及权限设置必不可少。
通过Filebeat采集应用日志,发送到redis(或者kafka),通过在filebeat.yml中设置fields.log_type属性来确定是哪个应用生成的日志文件,然后在logstash中针对不同的fields.log_type发往elasticsearch时创建不同的索引文件。
针对不同用户只能查看各自系统的索引文件.
前提条件:已对ElasticSearch集群配置TLS加密通信及身份验证功能,否则kibana界面在Management下面的Kibana最后不会出现Security
只有出现这个Security才能继续下面的步骤

2 步骤
- 创建第一个应用系统app1index-log 角色,选择对应的索引文件,分配对应的权限read
在Management下面的Kibana最后出现一个Security,有User和Role点击Role,
注意:若是在这一步中的Run As Privileges中选中角色kibana_user,则在创建用户的时候就不用再选择kibana_user角色了
输入角色名(Role name):app1index-log
选择权限(Privileges):read
选择查看的索引(Indices):secure-*
然后点击最后的Creat role

- 创建第二个系统app2index-log角色,选择对应的索引文件,分配对应的权限read
在Management下面的Kibana最后出现一个Security,有User和Role,点击Role,
注意:若是在这一步中的Run As Privileges中选中角色kibana_user,则在创建用户的时候就不用再选择kibana_user角色了
输入角色名(Role name):app2index-log
选择权限(Privileges):read
选择查看的索引(Indices):message-*
然后点击最后的Creat role


- 创建两个用户app1index/app1index(用户名/密码),app2index/app2index, 然后分配对应系统角色和kibana_user角色
在Management下面的Kibana最后出现一个Security,有User和Role,点击User
右上角有Creat User
输入用户账号,密码,重复密码,用户全名,邮箱,选择用户角色
app1index用户角色为app1index-log和kibana_user
app2index用户角色为app2index-log和kibana_user
分别添加后可以在用户列表中查看到效果


- 用户创建完后,可以进行登录验证
登录app1index用户,只能在logs中查询app1的索引日志
虽然app1index用户可以看到其他的索引index-pattern, 但是无法查询到数据。所以保证了其他系统索引文件的安全。
登录app2index用户,只能在logs中查询app2index 索引日志,其他索引无法查询到数据。
app2index 用户选择其他未分配权限的索引,无法查询到数据。
Kibana多用户创建及角色权限控制的更多相关文章
- rbac(基于角色权限控制)-------权限管理
权限管理 创建一个rbac和app的应用,这个rbac主要是用来存放权限的,全称叫做基于角色权限控制 一.先看配置文件合适不,给创建的rbac在配置文件里面设置一下 找到INSTALLED_APPS= ...
- RBAC角色权限控制
RBAC角色权限控制 1. user (用户表) * 用户的基本信息(mid:用户信息id 如图) 2. node (节点表) * 页面(模块\控制器\方法) 3. role_node(角色.节点 ...
- springboot + 注解 + 拦截器 + JWT 实现角色权限控制
1.关于JWT,参考: (1)10分钟了解JSON Web令牌(JWT) (2)认识JWT (3)基于jwt的token验证 2.JWT的JAVA实现 Java中对JWT的支持可以考虑使用JJWT开源 ...
- Kafka SASL/SCRAM+ACL实现动态创建用户及权限控制
kafka系列文章 第一章 linux单机安装kafka 第二章 kafka--集群安裝部署(自带zookeeper) 第三章 Kafka SASL/SCRAM+ACL实现动态创建用户及权限控制 Ka ...
- springboot+shiro+redis(单机redis版)整合教程-续(添加动态角色权限控制)
相关教程: 1. springboot+shiro整合教程 2. springboot+shiro+redis(单机redis版)整合教程 3. springboot+shiro+redis(集群re ...
- MVC基于角色权限控制--权限过滤
用户访问服务器实际上就是访问控制器下的方法,因此在权限控制就是控制器方法的访问权限 为了方便控制,我们可以建立一个基类控制器(BaseController),让需要的控制器继承这个控制器即可,在Bas ...
- MVC基于角色权限控制--数据库设计
在网站后台设计过程中都会遇上权限控制这一问题 当前较为流行的解决方案是基于角色的权限管理 基本思路如下 分别建立 用户信息表.角色信息表.权限信息表 让用户和角色关联,角色和权限关联,当用户访问时,通 ...
- php_ThinkPHP的RBAC(基于角色权限控制)详解
一.什么是RBAC 基于角色的访问控制(Role-Based Access Control)作为传统访问控制(自主访问,强制访问)的有前景的代替受到广泛的关注. 在RBAC中,权限与角色相关联,用户通 ...
- 简单的RBAC用户角色权限控制
Java web项目中,无论项目是大是小,或多或少都会涉及到用户访问权限的控制,权限管理总体的设计思路就是,不该看的不看,不该做的不做!据我目前的了解,我所知道的几种实现访问权限控制的方式有: JQu ...
随机推荐
- A. Detective Book
A. Detective Book time limit per test 2 seconds memory limit per test 256 megabytes input standard i ...
- 官网Windows 10安装程序驱动下载--截止:2019.01.06版本
说明:鉴于win7,8不可直接再下载原装iOS文件,这份共享程序包是为以后N年做的准备.如果N年后这个包还可以用,就可以省去很多麻烦. 百度网盘分享:https://pan.baidu.com/s/1 ...
- hdu 4763 看毛片(单纯next数组的应用--纯正O(n))
因为需要负责队内的字符串题,开始刷,做到这道,开始想不出来,上网找题解, 然后就惊了,为什么你们这么暴力都可以过的啊,1e6啊,后来又想了下会做了 贴下代码 #include <iostream ...
- C++类的默认成员函数
成员函数隐含this指针参数: 每成员函数一个隐式的指针形参(构造函数除外): 对象在调用成员函数时,编译器会将对象的地址传递给this指针: 1.构造函数(需用一个公有成员函数对私有的成员变量进行初 ...
- vuefor循环
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- Uep的confirm和alert弹窗
$.confirm("确认删除", "确定删除所选服务么?", function() { ajaxgrid.delCheckedRecords(); var g ...
- csp2019 Emiya家今天的饭题解
qwq 由于窝太菜了,实在是不会,所以在题解的帮助下过掉了这道题. 写此博客来整理一下思路 正文 传送 简化一下题意:现在有\(n\)行\(m\)列数,选\(k\)个数的合法方案需满足: 1.一行最多 ...
- 浏览器端-W3School-HTML:HTML DOM Select 对象
ylbtech-浏览器端-W3School-HTML:HTML DOM Select 对象 1.返回顶部 1. HTML DOM Select 对象 Select 对象 Select 对象代表 HTM ...
- 【转】HTML怎样使用a标签以post方式提交
在HTML中,a标签的提交默认是get方式提交的,如果在请求链接的参数中带有中文就会出现乱码问题,除了在后台程序中转码外,这里介绍两种简单的方法,可以在客户端让a标签以post方式提交. 一:增加一个 ...
- 【flask】处理表单数据
表单数据的处理涉及很多内容,除去表单提交不说,从获取数据到保存数据大致会经历以下步骤: 解析请求,获取表单数据. 对数据进行必要的转换,比如将勾选框的植转换为Python的布尔值. 验证数据是否符合 ...