0

我创建了 2400 个安全组并成为所有这些安全组的用户成员。现在我正在尝试使用 DirectoryEntry.RefreshCache 方法获取用户所属的所有安全组。该方法仅返回 2050 个组。

$searcher = New-Object System.DirectoryServices.DirectorySearcher($null)
$searcher.SearchRoot = [ADSI]("LDAP://" + $gcName)
$searcher.Filter = "((msOnline-WindowsLiveNetId=XXXXXXXX))"
$searcher.PropertiesToLoad.AddRange(@("msOnline-UserPrincipalName"))
$sr = $searcher.FindOne()
$de= $sr.GetDirectoryEntry()
$de.RefreshCache(@("tokenGroups"))
$de.Properties["tokenGroups"].Count

我尝试了范围检索。像下面的东西。它仍然不起作用。

$de.RefreshCache(@("tokenGroups"))
$count = $de.Properties["tokenGroups"].Count
$count
$de.RefreshCache(@("tokenGroups;range=$count-*"))
$de.Properties["tokenGroups"].Count

使用 RefreshCache 方法检索用户的所有安全组的最佳方法是什么?

4

0 回答 0