Kibana多用戶創建及角色權限控制


1 介紹

ELK日志管理屬於基礎設施平台,接入多個應用系統是正常現象,如果接入多個系統的索引文件沒有進行權限划分,那么很大程度會出現索引文件誤處理現象,為了避免這種情況發生,多用戶及權限設置必不可少。

通過Filebeat采集應用日志,發送到redis(或者kafka),通過在filebeat.yml中設置fields.log_type屬性來確定是哪個應用生成的日志文件,然后在logstash中針對不同的fields.log_type發往elasticsearch時創建不同的索引文件。

針對不同用戶只能查看各自系統的索引文件.

前提條件:已對ElasticSearch集群配置TLS加密通信及身份驗證功能,否則kibana界面在Management下面的Kibana最后不會出現Security
只有出現這個Security才能繼續下面的步驟

2 步驟

  1. 創建第一個應用系統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

  1. 創建第二個系統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

  1. 創建兩個用戶app1index/app1index(用戶名/密碼),app2index/app2index, 然后分配對應系統角色和kibana_user角色

在Management下面的Kibana最后出現一個Security,有User和Role,點擊User
右上角有Creat User
輸入用戶賬號,密碼,重復密碼,用戶全名,郵箱,選擇用戶角色
app1index用戶角色為app1index-log和kibana_user
app2index用戶角色為app2index-log和kibana_user

分別添加后可以在用戶列表中查看到效果

  1. 用戶創建完后,可以進行登錄驗證
    登錄app1index用戶,只能在logs中查詢app1的索引日志

雖然app1index用戶可以看到其他的索引index-pattern, 但是無法查詢到數據。所以保證了其他系統索引文件的安全。

登錄app2index用戶,只能在logs中查詢app2index 索引日志,其他索引無法查詢到數據。
app2index 用戶選擇其他未分配權限的索引,無法查詢到數據。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM