前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CDP-DC中Hue集成FreeIPA的LDAP认证

CDP-DC中Hue集成FreeIPA的LDAP认证

作者头像
大数据杂货铺
发布2020-06-24 10:46:55
1.5K0
发布2020-06-24 10:46:55
举报
文章被收录于专栏:大数据杂货铺大数据杂货铺

文档编写目的

Cloudera从CM6.3版本开始,引入了Red Hat IdM来做整个集群的认证,Red Hat IdM对应的软件为FreeIPA,在本文中描述如何使用FreeIPA来做CDP-DC集群的认证。关于FreeIPA服务器搭建参考<使用FreeIPA对Linux用户权限统一管理>。之前的文章包括<使用FreeIPA为CDP DC7.1集群部署安全>,<CDP-DC中为CM集成FreeIPA提供的LDAP认证>,<在CDP-DC中Ranger集成FreeIPA的LDAP用户>。

本文主要介绍如何在CDP-DC中对Hue组件集成FreeIPA的LDAP认证。

内容概述

1) 测试环境描述

2) Hue集成FreeIPA的LDAP

3) Hue集成Hive和Impala

4) Hue集成验证

测试环境

1) RedHat版本为7.7

2) FreeIPA的版本为4.6.6

3) CM和Cloudera Runtime版本为7.1.1

4) FreeIPA未启用TLS加密认证

5) 集群已启用FreeIPA提供的Kerberos

前置条件

1) FreeIPA已安装且正常使用

2) CDP-DC集群已经部署,且启用了Kerberos

测试环境描述

FreeIPA集群已安装完毕。

查看配置文件

从IPA 3.0开始,我们已经为/etc/openldap/ldap.conf配置了一些默认值:

[ec2-user@ip-10-0-0-170 ~]$ cat /etc/openldap/ldap.conf
# File modified by ipa-client-install

# We do not want to break your existing configuration, hence:
#   URI, BASE, TLS_CACERT and SASL_MECH
#   have been added if they were not set.
#   In case any of them were set, a comment has been inserted and
#   "# CONF_NAME modified by IPA" added to the line above.
# To use IPA server with openLDAP tools, please comment out your
# existing configuration for these options and uncomment the
# corresponding lines generated by IPA.


#
# LDAP Defaults
#

# See ldap.conf(5) for details
# This file should be world readable but not world writable.

#BASE  dc=example,dc=com
#URI  ldap://ldap.example.com ldap://ldap-master.example.com:666

#SIZELIMIT  12
#TIMELIMIT  15
#DEREF    never

TLS_CACERTDIR  /etc/openldap/certs

# Turning this off breaks GSSAPI used with krb5 when rdns = false
SASL_NOCANON  on
URI ldaps://ip-10-0-0-170.ap-southeast-1.compute.internal
BASE dc=ap-southeast-1,dc=compute,dc=internal
TLS_CACERT /etc/ipa/ca.crt
SASL_MECH GSSAPI
[ec2-user@ip-10-0-0-170 ~]$

[ec2-user@ip-10-0-0-170 ~]$

设置这些默认值意味着您无需将太多选项传递给ldapsearch之类的工具。搜索更加容易:

$ ldapsearch -x uid=admin

而不是:

$ ldapsearch -x -h ipa.example.com  -b dc=example,dc=com uid=admin
[ec2-user@ip-10-0-0-170 ~]$ ldapsearch -x uid=admin
# extended LDIF
#
# LDAPv3
# base <dc=ap-southeast-1,dc=compute,dc=internal> (default) with scope subtree
# filter: uid=admin
# requesting: ALL
#

# admin, users, compat, ap-southeast-1.compute.internal
dn: uid=admin,cn=users,cn=compat,dc=ap-southeast-1,dc=compute,dc=internal
objectClass: posixAccount
objectClass: ipaOverrideTarget
objectClass: top
gecos: Administrator
cn: Administrator
uidNumber: 1376400000
gidNumber: 1376400000
loginShell: /bin/bash
homeDirectory: /home/admin
ipaAnchorUUID:: OklQQTphcC1zb3V0aGVhc3QtMS5jb21wdXRlLmludGVybmFsOmJmYTI4NGI4LW
 E5MzktMTFlYS1iZmEzLTA2YTdiNzk2MzQwYQ==
uid: admin

# admin, users, accounts, ap-southeast-1.compute.internal
dn: uid=admin,cn=users,cn=accounts,dc=ap-southeast-1,dc=compute,dc=internal
objectClass: top
objectClass: person
objectClass: posixaccount
objectClass: krbprincipalaux
objectClass: krbticketpolicyaux
objectClass: inetuser
objectClass: ipaobject
objectClass: ipasshuser
objectClass: ipaSshGroupOfPubKeys
uid: admin
cn: Administrator
sn: Administrator
uidNumber: 1376400000
gidNumber: 1376400000
homeDirectory: /home/admin
loginShell: /bin/bash
gecos: Administrator

# search result
search: 2
result: 0 Success

# numResponses: 3
# numEntries: 2
[ec2-user@ip-10-0-0-170 ~]$

Hue集成FreeIPA提供的LDAP认证

修改Hue的认证方式为LDAP

1. 使用管理员登录CM,进入Hue配置页面,修改Hue的认证方式为LDAP

配置LDAP信息

参数名

描述

ldap_url

ldaps://ip-10-0-0-170.ap-southeast-1.compute.internal:636

配置FreeIPA的LDAP URL

ldap_username_pattern

uid={0},cn=users,cn=accounts,dc=ap-southeast-1,dc=compute,dc=internal

base_dn

cn=accounts,dc=ap-southeast-1,dc=compute,dc=internal

bind_dn

uid=admin,cn=users,cn=accounts,dc=ap-southeast-1,dc=compute,dc=internal

配置用于搜索LDAP的管理员账号

bind_password

cloudera

管理员账号的密码

user_filter

(objectClass=person)

user_name_attr

uid

search_bind_authentication

true

复选

修改完以上配置后保存,在重启Hue服务前将认证方式修改为

desktop.auth.backend.AllowFirstUserDjangoBackend

再次保存配置并重启Hue服务。

测试LDAP是否配置成功

通过Cloudera Manager-> 群集 -> Hue ->操作 -> Test LDAP Configuration,进行测试:

点击Test LDAP Configuration,进行测试。

如果测试成功,继续后续的步骤。如果测试失败,则调整配置,然后再进行测试。

同步LDAP用户组

重启成功后使用Hue的超级管理员登录,我们这里是admin用户为超级管理员,同时admin用户在freeipa中也存在,如果不存在,则需要根据第四章同步一个ldap的用户到hue系统中。

需要通过“Add/Sync LDAP Group”的方式将freeipa的用户组也同步过来,这里同步ipausers这个用户组。

点击同步将ipausers的用户组信息同步

修改hue为LDAP认证

回到CM界面修改Hue的配置,将hue的用户的将认证方式修改为desktop.auth.backend.LdapBackend

保存配置并重启Hue服务。

保存并重启Hue。

用户登录测试

这里看到使用原来的admin用户密码已无法正常登录,因为在freeIPA的LDAP中admin这个用户的密码不是数据库中的密码。

使用freeIPA中的admin账户也可以正常登陆。

使用freeipa的test用户也可以正常登陆。

将Hue与LDAP服务器同步

通过将Hue配置为轻型目录访问协议(LDAP),您可以从目录服务导入用户和组,手动或自动登录时同步组成员身份,并通过LDAP进行身份验证。

本页说明如何导入Hue用户和组并将其与LDAP服务器同步。请参阅使用LDAP对Hue用户进行身份验证以确保配置正确。

提示:导入和同步后,学习如何限制组权限。

将Hue用户和组与LDAP同步

Hue中有四个LDAP导入和同步选项:

LDAP同步操作

描述

添加/同步LDAP用户

一次导入和同步一个用户

同步LDAP用户/组

同步所有组中的用户成员身份

添加/同步LDAP组

导入并同步一组中的所有用户

sync_groups_at_login

登录时自动同步组成员身份

先决条件

注意: Hue不支持一次导入所有组。

要将Hue用户和组与LDAP服务器同步:

• 必须将Hue配置为通过LDAP进行身份验证。请参阅使用LDAP验证Hue用户。

• 登录的用户必须具有Hue超级用户权限。这里demo使用admin用户。

用户

导入和同步一个用户

要在Hue中导入和同步一个LDAP用户,请执行以下操作:

1. 以超级用户身份登录到Hue UI。

2. 转到用户管理 > 用户

3. 单击添加/同步LDAP用户

4. 添加用户名,选中创建主目录,然后单击添加/同步用户

同步所有用户成员

要将组成员身份(对于已导入的用户)同步到LDAP服务器的当前状态,请执行以下操作:

1. 以超级用户身份登录到Hue UI。

2. 转到用户管理 > 用户

3. 点击同步LDAP用户/组

4. 选中创建主目录,然后单击同步

导入并同步一个组(与一个或多个用户)

导入和同步组(及其多个用户):

1. 以超级用户身份登录到Hue UI。

2. 转到用户管理 >

3. 单击添加/同步LDAP组

4. 选中创建主目录,然后单击同步

总结

• Hue默认第一个登录的用户为管理员账号,在集成LDAP时需要配置LDAP信息后再将Hue登录的认证方式修改为AllowFirstUserDjangoBackend,需要使用管理员用户先登录Hue将LDAP用户同步后,再修改为LDAP认证。

• Hue管理LDAP用户组的逻辑是独立管理用户和组,在同步用户的时候是不会将用户的组信息同步。

• 在Hue集成LDAP的时候有勾选“登录时创建LDAP用户”,所以我们不需要先登录Hue管理员到用户界面去同步LDAP的用户。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-06-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 大数据杂货铺 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
访问管理
访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用CAM创建子用户、用户组和角色,并通过策略控制其访问范围。CAM支持用户和角色SSO能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档