Weisheiten - der Netz-Weise Blog
Hier finden Sie Tipps und Tricks für vor, während und nach der Schulung.
1 Minuten Lesezeit
(142 Worte)
Auflösen von SID zu Benutzername - und zurück
Einen Security-Identifier geht in Powershell mit Hilfe des .NET-Frameworks relativ problemlos. Verwenden Sie dazu folgenden Code.
$sid = 'S-1-5-21-1645259789-2415107319-3639759105-1314' $SidIdentifier = New-Object -TypeName System.Security.Principal.SecurityIdentifier -ArgumentList $SID $SidIdentifier.Translate([System.Security.Principal.NTAccount]).ToString()
Geben Sie einfach für die Variable $SID die Domänen-SID ein, die aufgelöst werden soll. Das Skript erstellt ein Security-Identifier-Objekt und wandelt die SID dann mit Hilfe der Translate-Methode um. Sie können auf ähnliche Art und Weise die SID zu einem Benutzernamen ermitteln.
$Domain = 'Netz-Weise' $Username = 'Oliver' (New-Object Security.Principal.NTAccount($Domain, $Username)).Translate([Security.Principal.SecurityIdentifier]).Value
Beide Varianten funktionieren allerdings nur mit Domänen-Konten. Lokale SIDs können Sie ab Powershell 5 auch sehr einfach mit dem CmdLet Get-LocalUser bzw. Get-LocalGroup auflösen.
Get-LocalUser | Select-Object -Property Name,SID Get-LocalGroup | Select-Object -Property Name,SID
Mit Hilfe der Cmdlets aus dem Active Directory Powershell Modul wird auch die Auflösung von Domänen-SIDs sehr einfach.
Get-ADuser -Identity Oliver
Kommentare