2016-10-17 7 views
0

を作成したユーザーの名前は私が持っているユーザー名現在PowerShellは、私は例の[email protected]について</p> <p>を作成されたアカウントに基づいてユーザー名をフィルタリングしたいアカウント

です見つけます私はUNABよしかしcode

Get-WinEvent -FilterHashtable @{logname='security';id=624;data='[email protected]'} 

以下の私は、そのアカウントの作成と言うから働いているノートは、イベントID 624、626

です上記のフィルタを正常に返すために

作成されたアカウントに関連付けられたユーザー名をどのようにフィルタリングできますか?

私はアカウントの作成日を示していますが、作成したユーザーは表示しませんでした。

Get-EventLog -FilterHashtable | Where-Object { $_.EventID -eq 4720 }: 

おかげ

+0

私は以来、2を編集するためにあなたの質問をロールバックあなたはあなたの質問の大きな部分を削除しました。何かがうまくいかなくても、あなたが試したことを見てうれしいです。将来の読者はこれを見て、「はい、これはまさに私がやったことです」と言い、問題に関連する質問を読んでいることを知っているかもしれません。 – Default

答えて

1

624のIDイベントprior to Windows Vista、4720はWindows Vista and newerで同じイベントのためのIDである "ユーザーアカウントが作成されました" されます。 this articleによると、あなたは、イベント・メッセージから新しいアカウントを作成した情報を抽出することができるはずです。このような

Subject: 
      Security ID:    TESTLAB\Santosh 
      Account Name:   Santosh 
      Account Domain:   TESTLAB 
      Logon ID:    0x8190601 

New Account: 
      Security ID:    TESTLAB\Random 
      Account Name:   Random 
      Account Domain:   TESTLAB 

Attributes: 
      SAM Account Name:  Random 
      Display Name:   Random 
      User Principal Name:  [email protected] 
...

何か作業をする必要があります:

$upn = '[email protected]' 

Get-WinEvent -FilterHashtable @{LogName='Security';Id=4720} | 
    Where-Object { $_.Message -match "user principal name:\s+$upn" } | 
    Select-Oject -Expand Message | 
    Select-String '(?<=subject:\s+security id:\s+\S+\s+account name:\s+)\S+' | 
    Select-Object -Expand Matches | 
    Select-Object -Expand Value 
+0

ありがとう、私はこれで今働いている。 –

+2

@NivekDefend Working _how_?この回答が重要なポイントを提供しているかもしれませんが、特にあなたの質問からあなたのソリューションの試行を取り除いたので、完全な解決策を見ておくと役立ちます。 – mklement0

+1

@ mklement0私はそれを助けることができると思う;) –

関連する問題

 関連する問題