服务开启LDAP认证功能后,访问服务需要提供LDAP身份认证(LDAP用户名和密码),可以提升服务的安全性。开启LDAP认证的功能可以方便您使用LDAP认证,避免了复杂的配置过程。
前提条件
已创建DataLake或自定义集群,且选择了Hive和OpenLDAP服务,详情请参见创建集群。
一键配置LDAP认证
添加EMR用户,详情请参见添加用户。
进入集群服务页面。
在左侧导航栏,单击EMR on ECS。
在顶部菜单栏处,根据实际情况选择地域和资源组。
在EMR on ECS页面,单击目标集群操作列的集群服务。
开启LDAP认证。
在集群服务页面,单击Hive服务区域的状态。
打开enableLDAP开关。
EMR-5.11.1及之后版本,EMR-3.45.1及之后版本
在服务概述区域,打开enableLDAP开关。
在弹出的对话框中,单击确定。
EMR-5.11.0及之前版本,EMR-3.45.0及之前版本
在组件列表区域,选择HiveServer操作列的
。在弹出的对话框中,输入执行原因,单击确定。
在确认对话框中,单击确定。
重启HiveServer。
在组件列表区域,单击HiveServer操作列的重启。
在弹出的对话框中,输入执行原因,单击确定。
在确认对话框中,单击确定。
连接HiveServer。
开启LDAP认证后,当您连接HiveServer时需要提供LDAP认证凭据。
手动配置LDAP认证
EMR控制台提供了enableLDAP按钮,可以一键开启LDAP认证功能。如果您的EMR版本较低,或者需要对接自建的LDAP服务,则只能使用手动配置的方式来启用HiveServer2的LDAP认证。
需要您在EMR控制台Hive服务的配置页面,在hiveserver2-site.xml页签,添加以下配置项。添加配置项的具体操作,请参见管理配置项。
配置项 | 参考值 | 说明 |
hive.server2.authentication | LDAP | 用于指定Hive Server2的认证方式。 |
hive.server2.authentication.ldap.url | ldap://{ldap_hostname}:{port} 例如:ldap://master-1-1:10389 | 用于指定连接LDAP服务的URL。需要根据实际情况进行配置。
|
hive.server2.authentication.ldap.baseDN | ou=people,o=emr | 用于指定LDAP服务中用户所在的Base DN,EMR集群的LDAP为 |
指定用户访问Hive
如果您的集群中的Hive服务已启用LDAP认证,您可以添加和修改以下配置,以实现指定用户对Hive服务的访问。
配置设置
需要您在EMR控制台Hive服务的配置页面,在hiveserver2-site.xml页签,新增和修改以下配置项。
配置项
配置值示例
配置类型
说明
hive.server2.authentication.ldap.userDNPattern
uid=%s,ou=people,o=emr
新增
用户DN模式,定义用户在LDAP中的查找路径。%s会被实际用户名替换。
hive.server2.authentication.ldap.groupFilter
username
新增
用户组过滤器,只有属于指定组的用户才能访问HiveServer2。多个用户组使用逗号进行分隔。
hive.server2.authentication.ldap.groupClassKey
posixGroup
新增
LDAP中表示组对象的objectClass属性值。
hive.server2.authentication.ldap.groupMembershipKey
memberUid
新增
LDAP组对象中用于存储成员信息的属性名。
hive.server2.authentication.ldap.baseDN
o=emr
修改
LDAP搜索的基础DN,原有配置需要修改为适合组过滤的基础路径。
保存上述新增及修改的配置。
重启HiveServer2服务以使配置生效。
连接验证
开启LDAP认证并配置相应的用户后,您在连接HiveServer时需提供该用户的认证凭据。