如何使用Active Directory自动使用Hadoop进行身份验证?

时间:2015-02-03 15:06:08

标签: active-directory kerberos

我们有一个通过HDFS,YARN和Hive接口访问Hadoop的应用程序。如果运行了kinit,此应用程序可以正常使用Kerberos安全集群。如果我们调用UserGroupInformation.loginUserFromKeytab(),它也可以正常工作。我们能够将HDFS和Hive令牌委托给YARN应用程序。我们无法弄清楚的是以下情况:

  • 使用Kerberos
  • 保护Hadoop集群
  • Hadoop集群使用Active Directory作为其KDC,或者具有 在KDC和AD控制器之间建立了单向信任。
  • 我们的软件在经过身份验证的会话中运行 直接在Windows上使用AD,或通过PAM或LDAP(或其他一些机制)使用AD Linux操作系统。
  • 我们的软件查询活动的AD会话以提取TGT或 相当于,并将该信息传递给Hadoop API(通过 UserGroupInformation,大概是)。
  • 因此无需用户即可实现Hadoop身份验证 输入主体,密码或密钥表。

我们知道这在理论上是可行的,因为有两个软件实现了这一点。第一个是RedGate的HDFS Explorer。第二个是顺化。但是,我们似乎无法弄清楚正确的咒语,即使是Hortonworks支持似乎也无法提供帮助。

1 个答案:

答案 0 :(得分:1)

Hue附带了一个LDAP后端,可以transparently authenticate用户对着您公司的目录,

Hue还附带一个KT renewer command,用于保持其Kerberos票证的最新状态。它甚至在使用CM时自动运行。