管理LDAP认证

服务开启LDAP认证功能后,访问服务需要提供LDAP身份认证(LDAP用户名和密码),可以提升服务的安全性。开启LDAP认证的功能可以方便您使用LDAP认证,避免了复杂的配置过程。

前提条件

已创建选择了Trino和OpenLDAP服务的集群,详情请参见创建集群

注意事项

  • 如果EMR-3.43.1、EMR-5.9.1版本开启LDAP后连接不上,应该是Worker节点缺少配置,需登录master-1-1节点,在Presto的config.properties文件中找到参数internal-communication.shared-secret及其对应值,然后在控制台针对Core、Task节点组分别新增该配置,将其配置到Worker节点上。新增配置项操作,请参见添加配置项

  • Trino的LDAP与Kerberos冲突,只能开启其中一个。

操作步骤

  1. 添加EMR用户,详情请参见添加用户

  2. 进入集群服务页面。

    1. 登录E-MapReduce控制台

    2. 在左侧导航栏,单击EMR on ECS

    3. 在顶部菜单栏处,根据实际情况选择地域和资源组

    4. EMR on ECS页面,单击目标集群操作列的集群服务

  3. 开启LDAP认证。

    1. 集群服务页面,单击Trino服务区域的状态

    2. 打开enableLDAP开关。

      • EMR-5.11.1及之后版本,EMR-3.45.1及之后版本

        1. 服务概述区域,打开TrinoLDAP开关。

        2. 在弹出的对话框中,单击确定

      • EMR-5.11.0及之前版本,EMR-3.45.0及之前版本

        重要

        如果您的EMR版本较低,没有相应的LDAP认证配置按钮,则需要参考开源软件的社区文档进行手动配置,以启用LDAP认证功能。

        1. 组件列表区域,选择TrinoMaster操作列的more > enableLDAP

        2. 在弹出的对话框中,输入执行原因,单击确定

        3. 确认对话框中,单击确定

    3. 重启TrinoMaster。

      1. 组件列表区域,单击TrinoMaster操作列的重启

      2. 在弹出的对话中,输入执行原因,单击确定

      3. 确认对话中,单击确定

  4. 连接Trino服务。

    开启LDAP认证后,当您访问Trino时需要提供LDAP认证凭据。

    1. 通过SSH方式连接集群,请参见登录集群

    2. 执行以下命令,访问Trino。

      重要

      开启高安全后只能通过HTTPS协议访问Trino,原先的9090端口会被关闭,设置的http-server.http.port也会失效,所以需要使用7778端口访问Trino。

      trino --server https://{fqdn}:7778 --keystore-path {keystore_location} \
      --keystore-password {keystore_passwd} --catalog hive --user {user} --password

      参数

      说明

      {fqdn}

      keystore的域名。

      需要在EMR控制台Trino服务的配置页签中查看ldap.url参数,获取格式master-1-1.c-xxxxxxx.cn-x******.emr.aliyuncs.com的内容,即为keystore的域名。

      {keystore_location}

      keystore的路径。

      config.propertieshttp-server.https.keystore.path的值,固定为/etc/emr/trino-conf/keystore

      {keystore_passwd}

      keystore的密码。

      config.propertieshttp-server.https.keystore.key的值,需自行获取,可以在master-1-1节点上执行命令awk -F= '/http-server.https.keystore.key/{print $2}' ${TRINO_CONF_DIR}/config.properties查看。

      {user}

      为LDAP的用户名,即您在步骤1中添加的用户名。

      执行上述命令后,根据提示信息输入密码,密码为LDAP的密码,即您在步骤1添加用户时设置的密码。

  5. 可选:关闭LDAP认证。

    1. 集群服务页面,单击Trino服务区域的状态

    2. 关闭enableLDAP开关。

      • EMR-5.11.1及之后版本,EMR-3.45.1及之后版本

        1. 服务概述区域,关闭TrinoLDAP开关。

        2. 在弹出的对话框中,单击确定

      • EMR-5.11.0及之前版本,EMR-3.45.0及之前版本

        1. 组件列表区域,选择TrinoMaster操作列的more > disableLDAP

        2. 在弹出的对话框中,输入执行原因,单击确定

        3. 确认对话框中,单击确定

    3. 重启TrinoMaster。

      1. 组件列表区域,单击TrinoMaster操作列的重启

      2. 在弹出的对话中,输入执行原因,单击确定

      3. 确认对话中,单击确定