Elasticsearch で Kibana ユーザーの権限を昇格させる方法
Kibana ユーザーに権限を与えるには、次の手順を実行します。
- Elasticsearch クラスタのマスタ eligible ノードまたはコーディネータ eligible ノードにログインします。
- ユーザー名とパスワードによる認証などのElasticsearchのセキュリティメカニズムを使用して認証します。
- Elasticsearchクラスターで、どのインデックスや何にアクセスできるかを定義するための新しいロールを作成します。Elasticsearchのロール管理APIを使用してロールを作成できます。例:
PUT /_security/role/kibana_user
{
"indices": [
{
"names": [ "index1", "index2" ],
"privileges": ["read", "write"]
}
]
}
上記の例題において、kibana_userはロール名であり、index1とindex2はロールがアクセス可能なインデックスであり、readとwriteはロールに付与される操作権限です。
- Elasticsearch クラスターで新たにユーザーを作成して、作成したばかりのロールに割り当てるには、Elasticsearch のユーザーマネジメント API などを使用します。
PUT /_security/user/kibana_user
{
"password" : "password",
"roles" : [ "kibana_user" ]
}
上のサンプルでは、kibana_userはユーザーの名前で、passwordはユーザーのパスワードで、kibana_userはユーザーに割り当てられたロールです。
- kibana.yml
elasticsearch.username: "kibana_user"
elasticsearch.password: "password"
上記の例において、kibana_user は新規作成したユーザ名、password はそのユーザのパスワード
- Kibana サービスを再起動して構成の変更を反映してください。
以上のステップを実行すると、Kibanaユーザーは昇格された権限を持ち、自分のロールで定義されているインデックスにアクセスし、与えられた操作を実行できます。