PowerShellでユーザーアカウント情報を確認する方法 †Win32_UserAccountとWhere-Objectを使えば簡単にユーザーアカウントの情報を取得することができます。 関連記事 †使用したWindowsおよびPowerShellバージョン †PS C:\> (Get-WmiObject Win32_OperatingSystem).Name Microsoft Windows 7 Professional |C:\Windows|\Device\Harddisk0\Partition1 PS C:\> $Host.Version Major Minor Build Revision ----- ----- ----- -------- 5 0 10586 117 Win32_UserAccountを確認する †Get-WmiObjectを使用して実行するとユーザーアカウント一覧が表示されます。 PS C:\> Get-WmiObject Win32_UserAccount AccountType : 512 Caption : SAKURA\sakura Domain : SAKURA SID : S-1-1-11-1111111111-1111111111-1111111111-1111 FullName : 桜 咲 Name : sakura : : <省略> 特定ユーザの情報を取得する †今回は、sakuraユーザのユーザーアカウント情報を取得してみます。 PS C:\> $uinfo=(Get-WmiObject Win32_UserAccount | Where-Object { $_.name -eq "sakura" }) 変数$uinfoに格納された値を見てみます。 PS C:\> $uinfo AccountType : 512 Caption : SAKURA\sakura Domain : SAKURA SID : S-1-1-11-1111111111-1111111111-1111111111-1111 FullName : 桜 咲 Name : sakura 取得したユーザーアカウント情報のメンバーを確認すると使えるようなメソッドがありました。 PS C:\> $uinfo | get-member TypeName: System.Management.ManagementObject#root\cimv2\Win32_UserAccount Name MemberType Definition ---- ---------- ---------- PSComputerName AliasProperty PSComputerName = __SERVER Rename Method System.Management.ManagementBaseObject Rename(System.String Name) AccountType Property uint32 AccountType {get;set;} Caption Property string Caption {get;set;} Description Property string Description {get;set;} Disabled Property bool Disabled {get;set;} Domain Property string Domain {get;set;} FullName Property string FullName {get;set;} InstallDate Property string InstallDate {get;set;} LocalAccount Property bool LocalAccount {get;set;} Lockout Property bool Lockout {get;set;} Name Property string Name {get;set;} PasswordChangeable Property bool PasswordChangeable {get;set;} PasswordExpires Property bool PasswordExpires {get;set;} PasswordRequired Property bool PasswordRequired {get;set;} SID Property string SID {get;set;} SIDType Property byte SIDType {get;set;} Status Property string Status {get;set;} __CLASS Property string __CLASS {get;set;} __DERIVATION Property string[] __DERIVATION {get;set;} __DYNASTY Property string __DYNASTY {get;set;} __GENUS Property int __GENUS {get;set;} __NAMESPACE Property string __NAMESPACE {get;set;} __PATH Property string __PATH {get;set;} __PROPERTY_COUNT Property int __PROPERTY_COUNT {get;set;} __RELPATH Property string __RELPATH {get;set;} __SERVER Property string __SERVER {get;set;} __SUPERCLASS Property string __SUPERCLASS {get;set;} PSStatus PropertySet PSStatus {Status, Caption, PasswordExpires} ConvertFromDateTime ScriptMethod System.Object ConvertFromDateTime(); ConvertToDateTime ScriptMethod System.Object ConvertToDateTime(); パスワード有効期限などを調べる場合はメンバーに無いので他の方法になると思われます。 |