Centre de ressourcesGuide pratique
Comment obtenir un rapport des membres du groupe local avec ou sans PowerShell
Comment obtenir un rapport des membres du groupe local avec ou sans PowerShell
Audit Natif
- Ouvrez l'ISE PowerShell → Créez un nouveau script avec le code suivant et exécutez-le, en spécifiant le nom de l'ordinateur et le chemin pour l'exportation :
$strComputer = get-content env:computername #Enter the name of the target computer, localhost is used by default
Write-Host "Computer: $strComputer"
$computer = [ADSI]"WinNT://$strComputer"
$objCount = ($computer.psbase.children | measure-object).count
Write-Host "Q-ty objects for computer '$strComputer' = $objCount"
$Counter = 1
$result = @()
foreach($adsiObj in $computer.psbase.children)
{
switch -regex($adsiObj.psbase.SchemaClassName)
{
"group"
{
$group = $adsiObj.name
$LocalGroup = [ADSI]"WinNT://$strComputer/$group,group"
$Members = @($LocalGroup.psbase.Invoke("Members"))
$objCount = ($Members | measure-object).count
Write-Host "Q-ty objects for group '$group' = $objCount"
$GName = $group.tostring()
ForEach ($Member In $Members) {
$Name = $Member.GetType().InvokeMember("Name", "GetProperty", $Null, $Member, $Null)
$Path = $Member.GetType().InvokeMember("ADsPath", "GetProperty", $Null, $Member, $Null)
Write-Host " Object = $Path"
$isGroup = ($Member.GetType().InvokeMember("Class", "GetProperty", $Null, $Member, $Null) -eq "group")
If (($Path -like "*/$strComputer/*") -Or ($Path -like "WinNT://NT*")) { $Type = "Local"
} Else {$Type = "Domain"}
$result += New-Object PSObject -Property @{
Computername = $strComputer
NameMember = $Name
PathMember = $Path
TypeMemeber = $Type
ParentGroup = $GName
isGroupMemeber = $isGroup
Depth = $Counter
}
}
}
} #end switch
} #end foreach
Write-Host "Total objects = " ($result | measure-object).count
$result = $result | select-object Computername, ParentGroup, NameMember, TypeMemeber, PathMember, isGroupMemeber, Depth
$result | Export-Csv -path ("C:\LocalGroups({0})-{1:yyyyMMddHHmm}.csv" -f
$env:COMPUTERNAME,(Get-Date)) -Delimiter ";" -Encoding "UTF8" -force -NoTypeInformation
- Ouvrez le fichier produit par le script dans MS Excel.
Netwrix Auditor for Windows Server
- Exécutez Netwrix Auditor → Allez dans « Rapports » → Développez la section « Windows Server » → Accédez à « Windows Server – État à un moment donné » → Sélectionnez « Utilisateurs et groupes locaux » → Cliquez sur « Afficher ».
- Pour enregistrer le rapport, cliquez sur le bouton « Exporter » → Choisissez un format dans le menu déroulant → Cliquez sur « Enregistrer ».
- Pour recevoir le rapport régulièrement par e-mail, cliquez sur le bouton « S'abonner » et choisissez le planning qui vous convient.
Exemple de rapport :
Partager sur