如果AD组具有一个已经是其成员的组,其后果是什么(循环引用)


8

我一直在寻找一个具有数千个组的Active Directory,其中成对的组是彼此的成员。

GroupA具有GroupB作为成员。GroupB具有GroupA作为成员。

哦 我正在尝试思考这种循环嵌套组的可能后果。

Answers:


3

首先,要小心,不要让用户成为太多组的成员-这可能会导致其令牌太大,最终您会遇到以下情况:

在此处输入图片说明

而且GPO将停止处理,启动脚本等。

这不是直接回答您的问题,但是一堆嵌套的组肯定会加剧此问题。团体彼此之间并没有什么可怕的天性。也就是说,时空连续性不会被撕开……我唯一能想到的就是您可能会混淆一些大量使用LDAP查询的应用程序……诸如Exchange之类的东西。


@Sahuagin我认为接受了这个答案的OP会读到“它本来就没有什么可怕的”这一短语,而也许您没有那么费心地读那么远。
瑞安·瑞斯

7

因此,我不会说这很糟糕,但是可以。有几个原因,其中之一与脚本编写有关。循环嵌套本质上是一个“无限循环”,因为脚本使用了大量的递归函数。显然,这会导致脚本出错等。

然后,AD中存在“简化”的思想,这与圆形嵌套固有地背道而驰。

在technet画廊上有一个powershell脚本可以帮助您找到循环嵌套组,您可以在这里找到它,并且可以帮助您找到循环嵌套组查找循环嵌套组

另外两个PowerShell脚本可绘制嵌套组,从而帮助快速查找循环嵌套:

  • 通过MemberOf Back-Link属性绘制嵌套的AD安全组图
  • 图按成员属性嵌套的AD安全组


  • 2

    没有任何后果-至少就Active Directory而言。

    我已经多次看到这种情况的部署。它唯一破坏的是递归枚举组的写得不好的代码。在这种情况下,检查代码中的这种循环并忽略您已经枚举的组是很简单的,否则就限制了递归深度。


    我敢打赌,您可以在生成令牌/计算组成员资格方面获得一定的表现。
    notbad.jpeg,2015年
    By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
    Licensed under cc by-sa 3.0 with attribution required.