---
title: Elasticsearch Back up a cluster’s security configuration
tags: Elasticsearch
description: View the slide with "Slide Mode".
---
# Elasticsearch Back up a cluster’s security configuration
[官方文件](https://www.elastic.co/guide/en/elasticsearch/reference/7.3/security-backup.html)
- X-pack的功能
- 安全設定分別存在檔案及index中
## Back up file-based security configuration
:::warning
File backups must run on every cluster node.
:::
- `elasticsearch.yml`
- `elasticsearch.keystore`
- `TLS keys and certificates `
- `ES_PATH_CONF/roles.yml`
* `ES_PATH_CONF/elasticsearch-users` the users and their hashed passwords
* `ES_PATH_CONF/elasticsearch-users_roles` the user roles assignment
* `ES_PATH_CONF/role_mapping.yml` defines the role assignments for a <font color=blue>Distinguished Name (DN) to a role.</font> This allows for LDAP and Active Directory groups and users and PKI users to be mapped to roles. See Mapping users and groups to roles.
* `ES_PATH_CONF/log4j2.properties` contains audit information. See <font color=blue>Logfile audit output.</font>
open distro的存放位置
`/usr/share/elasticsearch/plugins/opendistro_security/securityconfig`
## Back up index-based security configuration
- `.security-7` in the 7.x releases
- This data describes:
* the definition of users in the native realm (including hashed passwords)
* role definitions (defined via the create roles API)
* role mappings (defined via the create role mappings API)
* application privileges
* API keys
- 透過snapshot API 存放在特定的repository裡面,並且只授權給特定使用者
>[name=昱齊]這邊的role跟前面的檔案有什麼差別
#### the definition of users
```json=
# GET /.security-7/_search
{
"_index" : ".security-7",
"_type" : "_doc",
"_id" : "user-user2",
"_score" : 1.0,
"_source" : {
"username" : "user2",
"password" : "$2a$10$cAcvBY4u7CX70u7iZSDN5O5HpbReAwUexTPcR2euBPepL7nylg/6e",
"roles" : [
"my_test_role"
],
"full_name" : "Jack Nicholson_v222222",
"email" : "user2@example.com",
"metadata" : {
"intelligence" : 7
},
"enabled" : true,
"type" : "user"
}
```
#### role definition
```json=
{
"_index" : ".security-7",
"_type" : "_doc",
"_id" : "role-my_test_role2",
"_score" : 1.0,
"_source" : {
"cluster" : [
"all"
],
"indices" : [
{
"names" : [
"test"
],
"privileges" : [
"all"
],
"allow_restricted_indices" : false
}
],
"applications" : [ ],
"run_as" : [ ],
"metadata" : {
"version" : 2
},
"type" : "role"
}
}
```