[PowerShell] Identifier les ordinateurs disposant du même SID

Bonjour à tous,

Voici un script permettant d’identifier parmi tous les ordinateurs d’un domaine, ceux qui disposent du même SID.

Pour rappel : Microsoft n’apporte pas son support dans le cas où vous disposez de systèmes clonés avec le meme SID (Lien officiel)

Notez que pour que ce script fonctionne :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
$Error.Clear()
Clear-Host
 # Initialize Computers List
$computerList = New-Object -TypeName System.Collections.ArrayList
 
# Retrieve ADCOmputers
Import-Module ActiveDirectory
$ADcomputers = @(Get-ADComputer -Filter * -Properties SamAccountName, SID)
 
# Create custom object for each computers
# Add information to this object (ComputerName, DomainSID, LocalSID)
# Add object to Result list
if ($ADcomputers.Count -gt 0)
{
    $i = 0
    foreach ($ADcomputer in $ADcomputers)
    {
        Write-Progress -Activity get-SID -Status Running -Id 0 -PercentComplete (($i/$ADcomputers.Count)*100) -CurrentOperation $computer.ComputerName
 
        $Computer = New-Object -TypeName psobject -Property @{
            "ComputerName"= ([String]$ADcomputer.SamAccountName).Replace('$','')
            "DomainSID"=$ADcomputer.SID
            "LocalSID"=$null
        }
 
        Invoke-Expression -Command ("PsGetsid.exe " + '\\' + $computer.ComputerName) -ErrorAction SilentlyContinue| Tee-Object -Variable out | Out-Null
        $Computer.LocalSID = ($out | Where-Object{$_ -like "S-1-5*"})
 
        $computerList.Add($Computer) |Out-Null
 
        $i++
    }
}
 
$computerList | Group-Object -Property LocalSID | Format-Table

Enjoy 😉

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. Apprenez comment les données de vos commentaires sont utilisées.