構成を管理する上でユーザーアカウントの情報はセキュリティの観点からも必要となります。
今回はユーザーアカウントの取得する方法について記載してます。
次のコマンドをを実行します。
Get-WmiObject Win32_UserAccount | ? { $_.LocalAccount -eq $true }実行結果
AccountType : 512
Caption     : hostname\Administrator
Domain      : hostname
SID         : S-1-5-21-**********--**********--**********-500
FullName    :
Name        : Administrator
AccountType : 512
Caption     : hostname\Guest
Domain      : hostname
SID         : S-1-5-21-**********--**********--**********-501
FullName    :
Name        : Guest
一部の情報しか表示されません。
より詳細の情報を表示する場合は次のコマンドを実行します。
Get-WmiObject Win32_UserAccount | ? { $_.LocalAccount -eq $true } | Format-List *実行結果
Status             : OK
Caption            : HOSTNAME\Administrator
PasswordExpires    : False
__GENUS            : 2
__CLASS            : Win32_UserAccount
__SUPERCLASS       : Win32_Account
__DYNASTY          : CIM_ManagedSystemElement
__RELPATH          : Win32_UserAccount.Domain="HOSTNAME",Name="Administrator"
__PROPERTY_COUNT   : 16
__DERIVATION       : {Win32_Account, CIM_LogicalElement, CIM_ManagedSystemElement}
__SERVER           : HOSTNAME
__NAMESPACE        : root\cimv2
__PATH             : \\HOSTNAME\root\cimv2:Win32_UserAccount.Domain="HOSTNAME",Name="Administrator"
AccountType        : 512
Description        : コンピューター/ドメインの管理用 (ビルトイン アカウント)
Disabled           : False
Domain             : HOSTNAME
FullName           :
InstallDate        :
LocalAccount       : True
Lockout            : False
Name               : Administrator
PasswordChangeable : True
PasswordRequired   : True
SID                : S-1-5-21-**********-**********-**********-500
SIDType            : 1
Scope              : System.Management.ManagementScope
Path               : \\HOSTNAME\root\cimv2:Win32_UserAccount.Domain="HOSTNAME",Name="Administrator"
Options            : System.Management.ObjectGetOptions
ClassPath          : \\HOSTNAME\root\cimv2:Win32_UserAccount
Properties         : {AccountType, Caption, Description, Disabled...}
SystemProperties   : {__GENUS, __CLASS, __SUPERCLASS, __DYNASTY...}
Qualifiers         : {dynamic, Locale, provider, UUID}
Site               :
Container          :
より詳細な情報が表示されます。
データとしては扱いにくいので一覧にしてみます。
一覧で表示する場合は次のコマンドをを実行します。
Get-WmiObject Win32_UserAccount | ? { $_.LocalAccount -eq $true } | Format-table -autosize -wrap実行結果
AccountType Caption                 Domain    SID                                            FullName  Name
----------- -------                 ------    ---                                            -------- ----
        512 hostname\Administrator  hostname  S-1-5-21-**********-**********-**********-500  Administrator
        512 hostname\Guest          hostname  S-1-5-21-**********-**********-**********-501  Guest
ドメインユーザーの取得もできます。
ドメインユーザーを表示する場合は次のコマンドをを実行します。
Get-WmiObject Win32_UserAccount | ? { $_.LocalAccount -eq $false } | Format-table -autosize -wrap実行結果
AccountType Caption                 Domain    SID                                            FullName  Name
----------- -------                 ------    ---                                            -------- ----
        512 domain\Administrator    domain    S-1-5-21-**********-**********-**********-500  Administrator
        512 domain\Guest            domain    S-1-5-21-**********-**********-**********-501  Guest
ファイルに出力する場合、次のコマンドを実行します。
Get-WmiObject Win32_UserAccount | ? { $_.LocalAccount -eq $true } | Format-table -autosize -wrap | Out-File -encoding Default LocalAccount.txt