【问题标题】:Ranger user sync with kerberosRanger 用户与 kerberos 同步
【发布时间】:2017-02-16 22:34:27
【问题描述】:

我已经按照以下文档设置了 Kerberos http://docs.hortonworks.com/HDPDocuments/Ambari-2.2.0.0/bk_Ambari_Security_Guide/content/ch_configuring_amb_hdp_for_kerberos.html

此外,我想将 ranger 配置为同步所有 Kerberos 主体以创建 ACLS。有一个从 AD 同步用户的选项,但我没有看到任何从 Kerberos 同步的选项。请参阅下图中的选项 任何人都可以请帮助选择这样做。谢谢

【问题讨论】:

  • 可能的答案太多,或者对于这种格式来说,好的答案太长了。请添加详细信息以缩小答案集或隔离可以在几段中回答的问题。见How to Ask
  • 您使用哪种“Kerberos”进行身份验证——AD、映射到 LDAP 的 MIT Kerberos、独立的 MIT Kerberos?您使用什么进行组级授权——Linux 组、LDAP 组,什么都没有?

标签: apache-kafka kerberos ambari


【解决方案1】:

我不确定我是否理解您要导入的确切内容,但我假设您拥有配置了可信关系的 AD 和本地集群 KDC,并且您希望您的所有原则都由独立用户帐户在 Ranger 中表示。如果您配置了信任关系,这意味着您的整个原则列表将包含本地 KDC 和 AD,并且它们都对身份验证有效。但是在 ranger 中,您使用的不是实际的 Kerberos 原则,而是使用用户名,这些用户名是根据那里指定的映射规则从 auth_to_local 配置设置中获得的。

如果您正在运行 LDAP 同步,它将通过此​​配置属性中的规则集合传递所有匹配原则,并使用执行这些规则后获得的名称创建最终用户帐户。您可以使用以下方法检查最终结果:

hadoop org.apache.hadoop.security.HadoopKerberosName principle@domain.com

对于本地 KDC,将 KDC 中的原则通过此映射阶段传递确实没有意义,因为最终它们都将映射到本地 UNIX 帐户。这就是为什么您可以将 grouppasswd 文件指向 UNIX 同步源,并且可以假设所有本地 Kerberos 原则都将在 Ranger 数据库中以适当的用户表示帐户。

您可以在article 中找到有关 Kerberos 映射方面的更多详细信息

【讨论】:

  • 谢谢,我没有 AD,但只有 KDC 和校长。此外,我的用例是保护 Kafka,目前我找不到在 Ranger 中同步 Kerberos 主体的方法,除非我在主机上为每个主体创建本地用户。这是正确的方法还是有办法为 Kafka 定义 auth_to_local?
  • @Mkt281001 正确的方法是在每个主机中为每个单独的 Kerberos 原则组创建一个单独的 Unix 帐户。然后你可以使用 Unix 同步来让它们在你的 Ranger DB 中保持最新。因此,为了对 Kafka 进行 Kerberize,您必须 - 1)在您的 KDC 中创建 Kafka 原则 2)在每个节点上创建本地 Kafka 帐户 3)将原则映射到 auth_to_local 中的本地帐户 4)使用同步模块将本地用户导入到 Ranger
  • 感谢@Alex,这很有意义。
猜你喜欢
  • 1970-01-01
  • 2020-10-06
  • 1970-01-01
  • 2021-05-15
  • 2019-03-23
  • 2017-07-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多