Script para listar usuarios dos grupos do AD
Fala pessoal, segue abaixo um script bem util que lista os usuarios de cada grupo do AD e cria um arquivo CSV com o resultado.
#------------------------------------------------
# Script para Obter os usuarios dos grupos do AD
#------------------------------------------------
# Atualize o filtro baseado nos codigos abaixo
# -----------------------------------------------
# 2 Global distribution group
# 4 Domain local distribution group
# 8 Universal distribution group
# -2147483646 Global security group
# -2147483644 Domain local security group
# -2147483640 Universal security group
# http://portal.sivarajan.com/2010/08/list-group-members-in-active.html
#-------------------------------------------------
if(@(get-module | where-object {$_.Name -eq "ActiveDirectory"} ).count -eq 0) {import-module ActiveDirectory}
$OutPutFile = New-Item -type file -force "C:\GroupDetails.csv"
$ObjFilter = "(&(objectCategory=Group)(|(groupType=2)(groupType=4)(groupType=8)))"
$objSearch = New-Object System.DirectoryServices.DirectorySearcher
$objSearch.SearchRoot = "LDAP://dc=dominioad,DC=com" #Substitua pela raiz do dominio.
$objSearch.PageSize = 10000
$objSearch.Filter = $ObjFilter
$Results = $objSearch.FindAll()
foreach ($Result in $Results){
$Item = $Result.Properties
Write-host $Item.cn
$Item.cn | Out-File $OutPutFile -encoding ASCII -append
foreach ($Member in $Item.member){
Write-host "$Member"
$Member | Out-File $OutPutFile -encoding ASCII -append
}
}