Primeiro de tudo, obtenha os Commandlets do Servidor do Quest ActiveRoles aqui .
Em seguida, o script a seguir deve dar a você um começo. Estou usando o Excel para armazenar as informações, que você pode salvar como um arquivo .csv. Torna um pouco mais fácil com o loop e a economia de valores.
$a = New-Object -comobject Excel.Application
$a.visible = $True
$b = $a.Workbooks.Add()
$c = $b.Worksheets.Item(1)
$c.Cells.Item(1,1) = "Users and Groups Report"
$c.Cells.Item(1,2) = Get-Date
$c.Cells.Item(2,1) = "User"
$c.Cells.Item(2,2) = "Groups"
$d = $c.UsedRange
$d.Interior.ColorIndex = 19
$d.Font.ColorIndex = 11
$d.Font.Bold = $True
$d.Font.Size = 14
$introw = 3
$users = Get-QADUser -SizeLimit $howmanyusersdoIwanttoget
foreach ($user in $users)
{
$c.Cells.Item($introw,1) = $user.DisplayName
$introw +=1
$groups = Get-QADGroup -ContainsMember $user
foreach ($group in $groups)
{
$c.Cells.Item($introw,2) = $group.CanonicalName
$introw +=1
}
}
Você deve conseguir sintonizar isso para atender às suas necessidades exatas.