Magic Quadrant™ pour la gestion des accès privilégiés 2025 : Netwrix reconnue pour la quatrième année consécutive. Téléchargez le rapport.

Plateforme
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.
Image

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 :

Image

Partager sur