我使用Get-AdGroupMember -recursive powershell命令列出组中的用户和嵌套组中的用户。
我可以在输出结果中输出嵌套组的名称吗?
即用户A在A组,用户B在B组,用户C在C组
C组在B组,B组在A组。用户C正确地显示为在A组中具有组成员资格,但最初没有向下钻取这些组并不明显。
在我的“真实世界”案例中,顶层有~7个组,然后是下一个级别的5个/ 6组,因此我必须查看每个组以查找用户。回来的一些结果是三个嵌套组,需要花一些时间来确定用户实际所在的组。
由于
答案 0 :(得分:1)
你会发现this答案的结束,这是一种在C#中使用.NET 3.5程序集查找用户所属的所有组(以递归方式)的方法,这里是对PowerShell的转换。这不是你问题的确切答案,但这种方式在你的“真实世界”中应该有所帮助。
# Load the .NET 3.5 assembly
Add-Type -AssemblyName System.DirectoryServices.AccountManagement
# Get an enum value
$ct = [System.DirectoryServices.AccountManagement.ContextType]::Domain
# Retreive the user as a user principal
$username = "jblanc"
$up = [System.DirectoryServices.AccountManagement.Principal]::FindByIdentity($ct,$username)
# Get all the authorization groups a user belongs to
$up.GetAuthorizationGroups()