【问题标题】:How to automatically authenticate with Hadoop using Active Directory?如何使用 Active Directory 自动向 Hadoop 进行身份验证?
【发布时间】:2015-02-03 15:06:08
【问题描述】:

我们有一个通过 HDFS、YARN 和 Hive 接口访问 Hadoop 的应用程序。如果 kinit 已运行,则此应用程序对 Kerberos 保护的集群运行良好。如果我们调用 UserGroupInformation.loginUserFromKeytab(),它也可以正常工作。我们能够将 HDFS 和 Hive 令牌委托给 YARN 应用程序。我们无法弄清楚的是以下场景:

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

我们知道这在理论上是可能的,因为有两个软件示例可以实现这一点。第一个是 RedGate 的 HDFS Explorer。第二个是色相。然而,我们似乎无法找出正确的咒语,甚至 Hortonworks 的支持似乎也无济于事。

【问题讨论】:

    标签: active-directory kerberos


    【解决方案1】:

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

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

    【讨论】:

    • 谢谢。我知道使用 AD 进行 Hue 验证,但不确定它是否会对我们有所帮助,因为它使用的是 http 接口而不是 hadoop rpc 库。如果您可以查明执行验证的色调中的代码,我将接受您的回答:-)
    • 还有其他示例使用 waffle 通过 http 进行验证,不幸的是,我们需要的很多代码都隐藏在需要大量挖掘和翻译的层中
    猜你喜欢
    • 1970-01-01
    • 2016-05-12
    • 2018-11-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多