PowerShell: Finding Built-In Administrators Group

Using System User or group names like ‘Administrators’ in scripts may not always be a good idea because they are localized and may not work on machines that use a different UI language.

Here is a rather long one-liner that always returns the name of the local Administrators group, regardless of current culture settings:

(New-Object System.Security.Principal.SecurityIdentifier([System.Security.Principal.WellKnownSidType]::BuiltinAdministratorsSid, $null)).Translate([System.Security.Principal.NTAccount]).Value


Actually, this one line consists of three parts which may be easier to understand when they are kept separate:
$id = [System.Security.Principal.WellKnownSidType]::BuiltinAdministratorsSid
$Account = New-Object System.Security.Principal.SecurityIdentifier($id, $null)$Account.Translate([System.Security.Principal.NTAccount]).Value
No comments yet.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

revia in alcoholism