更新时间:2025-12-10 GMT+08:00
分享

配置HetuEngine对接外部LDAP

操作场景

本章节指导用户从零开始使用HetuEngine对接外部LDAP,实现账号密码认证。

约束与限制

  • 该功能仅集群未启用Kerberos认证(普通模式)支持。
  • HetuEngine只允许配置对接一个外部LDAP。
  • 需要在Manager的“系统 > 权限 > 用户”界面上创建一个外部LDAP中已存在的同名用户,例如“hetu_test”,并添加“hetuuser”用户组,该用户用于提交SQL请求。
  • 本章节仅适用于MRS 3.6.0-LTS及之后版本。

操作步骤

  1. 登录FusionInsight Manager页面,选择“集群 > 服务 > HetuEngine > 配置 > 全部配置”,参考表 对接外部LDAP参数配置对接外部LDAP参数。

    表1 对接外部LDAP参数

    参数名称

    默认值

    建议值

    参数解释

    参数文件

    http-server.authentication.type

    NONE

    PASSWORD

    为Coordinator配置身份验证类型列表。

    • NONE:不认证。
    • PASSWORD:基于LDAP的密码认证。

    coordinator.config.properties

    ldap.allow-insecure

    true

    -

    允许使用不受TLS保护的LDAP连接。

    • true:使用非SSL方式连接LDAP。
    • false:使用SSL方式连接LDAP。

    password-authenticator.properties

    ldap.ssl.truststore.password

    -

    -

    PEM或JKS信任文件的密码。

    password-authenticator.properties

    ldap.ssl.truststore.path

    -

    -

    PEM或JKS信任文件存储的路径。

    password-authenticator.properties

    ldap.timeout.connect

    5000ms

    5000ms

    建立LDAP连接的超时时长(单位:毫秒)。小于或等于零的整数表示使用网络协议的(即TCP的)超时值。

    password-authenticator.properties

    ldap.timeout.read

    5000ms

    5000ms

    从LDAP连接读取数据的超时时长(单位:毫秒)。小于或等于零的整数意味着没有指定读取超时,相当于无限等待响应,直到接收到它。

    password-authenticator.properties

    ldap.url

    -

    -

    LDAP服务器的URL。

    • URL的“scheme”必须为“ldap://”或“ldaps://”,例如ldap://ds.example.com:389或ldaps://ds.example.com:636。
    • 连接到未启用TLS的LDAP服务器时需要设置参数“ldap.allow-insecure”的值为“true”。

    password-authenticator.properties

    ldap.user-bind-pattern

    -

    -

    此属性可用于指定密码验证的LDAP用户绑定字符串。此属性必须包含模式${USER},在密码验证时将替换为实际用户名。

    属性可以包含多个模式,以冒号分隔。每个模式将按顺序检查,直到登录成功或所有登录失败。示例:${USER}@corp.example.com:${USER}@corp.example.co.uk

    password-authenticator.properties

  2. 单击左上方的“保存”,在弹出的对话框中单击“确定”保存配置。
  3. 选择“集群 > 服务 > HetuEngine > 更多 > 重启服务”,重启HetuEngine服务以便参数生效。
  4. 若存在运行中的计算实例需重启HetuEngine计算实例。

    1. 使用HetuEngine管理员用户登录FusionInsight Manager,选择“集群 > 服务 > HetuEngine > 概览”,单击“HSConsole WebUI”后面的链接,进入HSConsole界面。
    2. 单击“计算实例”,勾选待操作实例,单击“重启”按钮重启HetuEngine计算实例。

  5. 使用客户端提交SQL请求。

    • Cli客户端,需要刷新Zookeeper URL地址串的“scheme”为“https”。具体操作步骤如下:
      1. 修改客户端安装路径下“HetuEngine/component_env“文件中“HETUSERVER_URI“参数的“http”为“https”。
      2. 进入客户端安装路径,执行source HetuEngine/component_env命令。
      3. 输入hetu-cli --tenant default --user hetu_test --password命令,回车后填写外部LDAP用户hetu_test的密码即可。
    • JDBC客户端,需要添加如下连接参数:

      SSL=true

      hetuSSL=false

      SSLVerification=NONE

      user=LDAP用户的名称,例如hetu_test

      password=LDAP用户的密码

    • Python客户端,需要添加如下连接参数:

      SSL=true

      hetuSSL=false

      SSLVerification=NONE

      user=LDAP用户的名称,例如hetu_test

      password=LDAP用户的密码

相关文档