1、內置角色
原文:https://www.elastic.co/guide/en/elasticsearch/reference/7.x/built-in-roles.html
Elastic Stack安全功能將默認角色應用於所有用戶,包括 匿名用戶。默認角色使用戶能夠訪問身份驗證端點,更改自己的密碼以及獲取有關自身的信息。
還有一組可以明確分配給用戶的內置角色。這些角色具有一組固定的權限,無法更新。
apm_system
授予APM系統用戶向Elasticsearch發送系統級數據(如監控)所需的訪問權限。
beats_admin
授予對.management-beats索引的訪問權限,該索引包含Beats的配置信息。
beats_system
授予Beats系統用戶向Elasticsearch發送系統級數據(如監控)所需的訪問權限。
不應將此角色分配給用戶,因為授予的權限可能會在不同版本之間更改。
此角色不提供對節拍索引的訪問,也不適合將節拍輸出寫入Elasticsearch。
ingest_admin
授予訪問權限以管理所有索引模板和所有攝取管道配置。
這個角色也沒有提供用於創建指數的能力; 必須在單獨的角色中定義這些權限。
kibana_dashboard_only_user
授予對Kibana儀表板的訪問權限和對Kibana的只讀權限。此角色無權訪問Kibana中的編輯工具。有關更多信息,請參閱 僅限Kibana儀表板模式。
kibana_system
授予Kibana系統用戶讀取和寫入Kibana索引,管理索引模板以及檢查Elasticsearch集群可用性所需的訪問權限。此角色授予對.monitoring-*索引的讀訪問權以及對索引的讀寫訪問權.reporting-*。有關更多信息,請參閱 在Kibana中配置安全性。
不應將此角色分配給用戶,因為授予的權限可能會在不同版本之間更改。
kibana_user
授予Kibana用戶所需的權限。此角色授予對Kibana的訪問權限並授予群集的監視權限。
logstash_admin
授予對.logstash*索引的訪問權限以管理配置。
logstash_system
授予Logstash系統用戶向Elasticsearch發送系統級數據(如監控)所需的訪問權限。有關更多信息,請參閱 在Logstash中配置安全性。
不應將此角色分配給用戶,因為授予的權限可能會在不同版本之間更改。
此角色不提供對logstash索引的訪問,也不適合在Logstash管道中使用。
machine_learning_admin
授予manage_ml群集權限和對.ml-*索引的讀訪問權限。
machine_learning_user
授予查看機器學習配置,狀態和結果所需的最低權限。此角色授予monitor_ml集群特權以及對存儲機器學習結果的.ml-notifications和.ml-anomalies*索引的讀取訪問權限。
monitoring_user
授予X-Pack監控用戶所需的最低權限,而不是使用Kibana所需的權限。此角色授予對監視索引的訪問權限,並授予讀取基本群集信息所需的權限。還應為監視用戶分配kibana_user角色。
remote_monitoring_agent
授予將數據寫入監視索引(.monitoring-*)所需的最小權限。此角色還具有創建Metricbeat索引(metricbeat-*)並將數據寫入其中所需的特權。
remote_monitoring_collector
授予收集Elastic Stack監控數據所需的最低權限。
reporting_user
授予X-Pack報告用戶所需的特定權限,而不是使用Kibana所需的權限。該角色授予訪問報告索引的權限; 每個用戶只能訪問自己的報告。還應為報告用戶分配kibana_user角色和角色,以授予他們訪問將用於生成報告的數據的權限。
superuser
授予對群集的完全訪問權限,包括所有索引和數據。具有該superuser角色的用戶還可以管理用戶和角色,並 模擬系統中的任何其他用戶。由於此角色具有許可性質,因此在將其分配給用戶時要格外小心。
transport_client
通過Java傳輸客戶端授予訪問群集所需的權限。Java傳輸客戶端使用節點活動API和群集狀態API(啟用嗅探時)獲取有關群集中節點的信息。如果用戶使用傳輸客戶端,則為其分配此角色。
有效地使用傳輸客戶端意味着授予用戶訪問群集狀態的權限。這意味着用戶可以查看所有索引,索引模板,映射,節點以及基本上有關群集的所有內容的元數據。但是,此角色不授予查看所有索引中數據的權限。
watcher_admin
授予對.watches索引的讀訪問權限,讀取對監視歷史記錄的訪問權限以及觸發的監視索引,並允許執行所有觀察者操作。
watcher_user
授予對.watches索引的讀訪問權限,獲取監視操作和觀察者統計信息。
設置密碼
修改es配置文件 $ELASTIC_HOME/config/elasticsearch.yml xpack.security.enabled: true xpack.security.transport.ssl.enabled: true 修改hosts文件 /etc/hosts 192.168.1.234 node01 192.168.1.233 node02 192.168.1.240 node03 重啟es集群 設置默認的角色密碼 bin/elasticsearch-setup-passwords interactive Changed password for user apm_system PASSWORD apm_system = DV8MgUjnrWxPCvDnexqt Changed password for user kibana PASSWORD kibana = 4CG0LMkw4Gjkh8c5SPsS Changed password for user logstash_system PASSWORD logstash_system = IA1SFqaoGxFo1Lp0SMLB Changed password for user beats_system PASSWORD beats_system = mFLeC8Bgk9Ck3QdZNEmd Changed password for user remote_monitoring_user PASSWORD remote_monitoring_user = P2cWyMIGsslDt1slFX6c Changed password for user elastic PASSWORD elastic = 1lrYeg2nEXVcLEAvlGET
配置Kibana以使用內置kibana用戶和您創建的密碼
如果您不介意在配置文件中顯示密碼,請取消注釋並更新Kibana安裝目錄下的config子目錄中的kibana.yml文件中的以下設置::
elasticsearch.username: "kibana"
elasticsearch.password: "your_password"
如果您不想將您的用戶ID和密碼放在kibana.yml文件中,請將它們存儲在密鑰庫中。 運行以下命令以創建Kibana密鑰庫並添加安全設置:
./bin/kibana-keystore create ./bin/kibana-keystore add elasticsearch.username ./bin/kibana-keystore add elasticsearch.password
上面的兩種方法可以任選其中的一個。
重啟kibana