ES安全 -LDAP 接入方法

注意:该项功能需要license

 

Ldap测试命令

ldapsearch -x -D "cn=username, ou=people, dc=example, dc=com" -w password -b "dc=example,dc=com" -p 389 -h ldap.example.com

 

elasticsearch.yml 修改

     order 数值越小越优先, ES7.X版本文档的配置项稍有不同,下面这个是6.X的配置,应该是兼容的

xpack:
  security:
    authc:
      realms:
        ldap1:
          type: ldap
          order: 0
          url: "ldap://ldap.example.com:389"
          bind_dn: "cn=username, ou=people, dc=example, dc=com"
          bind_password: password
          user_search:
            base_dn: "dc=example,dc=com"
            filter: "uid={0}"
          unmapped_groups_as_roles: false
        native1:
          type: native
          order: 1

 

必须每个节点都这么设置,然后重启节点

角色与权限配置

访问 kibana -> management -> roles

点击 create role 创建角色

按说明配置角色相关权限

配置完成后点击 save 保存。

用户角色绑定

LDAP 用户目前不支持通过 UI 界面配置,需要使用 API 来管理

详情请参考:

https://www.elastic.co/guide/en/elasticsearch/reference/6 api-put-role-mapping.html

访问 kibana -> dev tools 界面,使用下一 API 创建用户角色关联:

POST security/role_mapping/<role_mapping_name>
{
  "roles": [
    "test" //这里填写需要绑定的角色名,例如上面我们创建的test角色q
  ],
  "enabled": true,
  "rules": {
    "any": [
      {
        "field": {
          "username": [
            "esadmin" //这里填写需要绑定的ldap用户名
          ]
        }
      },
      {
        "field": {
          "groups": "cn=admins,dc=example,dc=com" //也可以把角色绑定到ldap用户组上
        }
      }
    ]
  }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值