Ranger 增量 AD 同步是否每次都覆盖或保留以前同步的用户(例如,如果过滤器更改)?重新创建 Unix 用户?

Does Ranger incremental AD sync overwrite each time or leave previously synced users (eg. if filter changes)? Unix users recreated?

正在寻找有关增量同步如何工作的说明。我最近配置了 Ranger/AD 同步,关闭增量同步,用户搜索过滤器为空。这导致 AD 中的所有用户都被添加到 Ranger。

这只是一个基本案例测试,但是当在 Ambari 中为 Ranger AD 配置添加一个新的用户搜索过滤器并重新启动 Ranger 服务时,似乎没有进行任何更改(这是我所做的将增量同步设置为关闭时预期)并且所有 AD 用户仍然可见,而不仅仅是过滤器指定的用户。此时有一些疑问:

  1. 如果我进入 Ranger UI 并转到用户和组菜单并手动删除所有 AD 用户和组,然后将用户搜索过滤器添加到Ranger 配置并重新启动 Ranger 是否会在 Ranger 重新启动后从 Ranger 的用户数据库中擦除其余用户并仅从搜索过滤器中保留 AD 用户?还有其他方法可以达到这个预期的结果吗?

  2. 如果不小心从 Ranger UI 的用户和组菜单中手动删除了一个 unix 用户,会发生什么情况?一旦重新启动 Ranger,它们会重新填充还是我需要其他东西来修复错误?

来自 Apache 电子邮件列表...

  1. 一旦用户和组同步到 Ranger DB,删除它们只是管理员的手动操作。 Ranger 不会根据搜索过滤器的变化自动删除用户和组。但是一旦你清理了用户组,重新启动 ranger usersyn 应该 只根据配置的过滤器 拉入用户和组。 仅供参考 - 出于测试目的,ranger usersync 支持一个配置 "ranger.usersync.policymanager.mockrun",可以将其设置为 true,以便同步的用户和组不会更新到 ranger 数据库。 https://docs.cloudera.com/HDPDocuments/HDP3/HDP-3.1.4/installing-ranger/content/ranger_install_configure_ranger_user_sync.html

  2. 如果 user/group 从 Ranger UI 中删除,一旦重新启动 ranger,这些 users/groups 将 同步到 Ranger 数据库基于同步配置.

因此,从这些点来看,请注意,如果默认 HDP / hadoop 用户(例如 hdfs、yarn、livy)在集群中的每台机器上创建为 unix 用户(例如,HDP 3.1.0 默认情况下执行的操作)并且您从 Ranger UI 中手动删除这些用户,一旦 Ranger 重新启动,他们将不会重新出现。也就是说,Ranger 不会同时查看 AD 和本地 unix 用户(也许有办法在配置中更改它?)。所以你需要做的是将 Ranger 用户同步切换到 "unix",重新启动 Ranger 让本地 unix 用户同步,然后将配置切换到 AD 并再次重新启动以使 AD 用户进入 Ranger(以及之前同步的unix 用户应该仍然存在,因为 Ranger 不会根据用户同步配置删除 用户)。