elasticsearch创建用户、角色

我们要创建一个叫xjw的用户,这个用户要有较高的es权限和kibana权限,同时实现多用户下的数据隔离


先创建角色
indices下的names属性里配置的是我们能操作的索引、模版等等数据的前缀“xjw-”,如果不带这个前缀会报错403

PUT _security/role/ly_role
{
  "cluster": ["all"],
  "indices": [
    {
      "names": ["xjw-*"],
      "privileges": ["all"],
      "allow_restricted_indices": false
    },
    {
      "names": [
        ".kibana*",
        ".kibana_task_manager*",
        ".kibana-observability*",
        ".kibana_reporting*",
        ".fleet*"
      ],
      "privileges": ["all"],
      "allow_restricted_indices": true   // 必须 true,这些是受限索引
    }
  ],
  "applications": [
    {
      "application": "kibana-.kibana",
      "privileges": ["all"],
      "resources": ["*"]
    }
  ],
  "metadata": {
    "description": "xjw 用户:业务索引隔离 + Kibana 全权限"
  }
}

创建用户

POST _security/user/xjw
{
  "password": "passwd",
  "roles": ["ops_power"]
}

然后就可以用用户名xjw,密码passwd登录es和kibana了

posted @ 2025-11-26 20:06  coolestxu  阅读(0)  评论(0)    收藏  举报