1、背景

集群版本:cdh6.2.0
impala版本:3.2.0+cdh6.2.0
用户认证:AD
由于用户需要使用数据库工具连接impala,但是集群开启了kerberos,如果使用数据库连接工具连接impala,就需要在客户端机器上安装kerberos环境,比较麻烦,所以就考虑使用账号密码进行认证。

2、配置

在cloudera manager管理界面,选择impala——配置,配置以下参数
搜索enable_ldap_auth,选择为true
image.png
ldap_uri : ldap://x.x.x.x:389 ad server的ip地址
ldap_domain: FAYSON.COM AD域名
image.png
搜索

Impala Command Line Argument Advanced Configuration Snippet (Safety Valve)
添加
—ldap_passwords_in_clear_ok=true #由于ad没有开启ssl,所以需要这个参数
image.png
配置完成后,重启ldap

3、测试

在此,我以apache superset 连接impala为例,进行测试
1、在superset的服务器节点安装 pip install impyla
2、登录到superset的页面。添加数据源
image.png
image.png
配置外部属性

  1. {
  2. "metadata_params": {},
  3. "engine_params": {
  4. "connect_args": {
  5. "auth_mechanism": "ldap", ##认证方式
  6. "user" : "xxxxxx",
  7. "password" : "xxxxxx" }
  8. }
  9. }

image.png

然后点击测试
image.png
最后保存。
然后,就在sql lab——>SQL Editor中
image.png