我想获取特定用户所属的所有 Active Directory 组。
我确实有脚本来获取用户的所有直接 AD 组(请参见下面的代码)。
但是,如何获取用户所属的每个直接 AD 组的所有父组?
例如,我直接属于名为IT Team Managers
. 该组是名为IT Team National
etc 的父组的成员。如何从我的代码中获取该父组?
提前非常感谢!
DirectorySearcher ouSearch = new DirectorySearcher(entry);
ouSearch.Filter = "(&(objectClass=User)(sAMAccountName=" + username + "))";
//ouSearch.PropertiesToLoad.Add("samAccountName");
ouSearch.PropertiesToLoad.Add("memberOf");
ouSearch.SearchScope = SearchScope.Subtree;
SearchResult allOUS = ouSearch.FindOne();
//foreach (string g in allOUS.Properties["memberOf"])
{
equalsIndex = g.IndexOf("=", 1);
commaIndex = g.IndexOf(",", 1);
if (equalsIndex == -1)
{
return null;
}
groupNames.Append(g.Substring((equalsIndex + 1), (commaIndex - equalsIndex) - 1));
groupNames.Append(",");
}