web-dev-qa-db-ja.com

既にメンバーであるグループをメンバーとして持つADグループの結果(循環参照)

私は、グループのペアが互いにメンバーである、数千のグループを持つActive Directoryを見てきました。

GroupAはGroupBをメンバーとして持っています。 GroupBはGroupAをメンバーとして持っています。

オイ。私はこのグループの循環的な入れ子の考えられる結果を考えようとしています。

8
geoffc

まず最初に、あまりにも多くのグループのメンバーであるユーザーがいないように注意してください。これにより、トークンが大きくなりすぎて、次のような結果になります。

enter image description here

また、GPOの処理、起動スクリプトなども停止します。

これは直接あなたの質問に答えるものではありませんが、ネストされたグループの束がこの問題をさらに悪化させる可能性があります。グループがお互いのメンバーであることについて、本質的にひどいことは何もありません。つまり、時空の連続体は裂けないでしょう...私が考えることができる唯一のことは、LDAPクエリを広範囲に使用するいくつかのアプリケーションを混乱させるかもしれないということです... Exchangeのようなものなど。

3
Ryan Ries

だから、私はそれが悪いとは言いませんが、それは悪いかもしれません。いくつかの理由があります。そのうちの1つはスクリプトに関係しています。スクリプトは多くの再帰関数を使用するため、循環ネストは基本的に「無限ループ」です。これにより、スクリプトでエラーが発生するなどの原因になります。

次に、循環的な入れ子が本質的に反対するADの「単純化」の考え方があります。

Technetギャラリーには、入れ子になった円形のグループを見つけるのに役立つpowershellスクリプトがあり、ここで見つけることができます。円形のグループを見つけるのに役立ちます。 Circular Nested Groupsを見つける

ネストされたグループの描画を可能にし、循環するネストをすばやく見つけるのに役立つ、他の2つのPowerShellスクリプト:

  • MemberOfバックリンクプロパティ別のネストされたADセキュリティグループのグラフ
  • 7
    Ethabelle

    結果はありません-少なくともActive Directoryに関する限りではありません。

    この状態のデプロイメントを何度か見ました。それが壊れる唯一のものは、グループを再帰的に列挙する不十分に書かれたコードです。これらの場合、コードでこの種のループをチェックして、既に列挙したグループを無視するか、再帰の深さを制限するのは簡単です。

    2
    Shane Madden