2016-03-22 42 views
0

すべてのユーザーのメールボックスの一覧を取得し、問題のメールボックスを最後に変更した人を表示しようとしています。 $メールボックスがメールボックスのリストが含まれていメールボックスを最後に変更した人Exchange 2010(PowerShell)

$mailbox | % {Search-AdminAuditLog | Where-Object {ObjectModified -eq $_.identity} | Select-Object -First 1 -Property CmdLetName,Caller,RunDate | Out-file "C:\tmp\$_.mailbox"} 

私が処理したい:

$mailbox = GET-MAILBOXSERVER | Get-Mailbox -ResultSize Unlimited 

私は(別途)を実行した場合:

$mailbox | select Identity 

私は期待されるアイデンティティを得る。

私は私の検索に渡すことができるように期待する形式でたtestdomain.local /ユーザー/管理者

:スタンドアロン、

Search-AdminAuditLog | Where-Object {$_.ObjectModified -eq "testdomain.local/Users/Administrator"} | Select-Object -First 1 -Property CmdLetName,Caller,RunDate 

は(だけ実行されます)。だから私は$ mailboxからの入力をパイプすると何の結果も得られないのはなぜか分かりません。あなたのコードを実行する

答えて

0

私は

Search-AdminAuditLog | Where-Object {$_.ObjectModified -eq "My object path"} | Select-Object -First 1 -Property CmdLetName,Caller,RunDate 

あなたがそれを書いた最初の行が含まれているために働く:

{$_.ObjectModified -eq $_.identity} 

私はあなたが2つの異なるパイプラインオブジェクトからプロパティを参照しようとしているので、これが動作すると思いますいけません。私は$ _が最後のパイプライン文字の左側にあるコマンドレットの出力を表していることを確信しています。自分自身を変更したユーザーを検索している場合を除きます。

いくつかのテストをここで実行すると、私の監査ログにはデータが欠落していることがわかりました。 1週間ほどしか戻っていないようだ。

さらに読むと、Search-AdminAuditLogを呼び出すと、最後の1000個のログエントリが返されることがわかります。これを増やす必要があるかもしれません。

また、管理者アカウントのメールボックスを変更したユーザーを検索するコードもあります。管理者が変更した電子メールアカウントを検索しようとしていませんか?それは次のようになりますので:あなたが特定のアクションを探している場合Search-AdminAuditLogに検索パラメータを追加すると、たとえば、パフォーマンスが向上します

Search-AdminAuditLog -ResultSize 9000 | Where-Object {$_.Caller -eq "testdomain.local/Users/Administrator"} | Select-Object -Property CmdLetName,ObjectModified,RunDate 

Search-AdminAuditLog -Cmdlets Add-MailboxPermission 

または、開始日と終了日

Search-AdminAuditLog -StartDate "4/6/2015 12:00:00 AM" -EndDate 4/6/2015 11:20:00 AM" 

EDIT パイプラインを通じてすべて実行することはできますか?最後の行は、実際のために働くん -

$Adminlog = Search-AdminAuditLog 
Foreach ($Mailbox in $Mailboxes) 
{ $Adminlog | Where-Object {$_.ObjectModified -eq $Mailbox.Identity}} 

私はreply-のおかげで申し訳ありませんが、私の元の質問の言い回しは少し不明であった、それはあなたが基本的に2つのリスト

+0

を比較しようとしているパイプラインの制限かもしれないと思います私が持っている課題は、「My Object path」セクションにパラメタを渡すときです。私はもう少し明確にするために質問を更新します!もう一度ありがとう – AskJarv

+0

私の編集をチェックして、私はパイプラインを使用して2つのリストオブジェクトを比較すると多くのことを尋ねているかもしれないと思います。 – Nick

+0

ありがとうございます - あまりにも多くのパイプがあります(それは私に1本の線にしようと教えてくれるでしょう!) - 私は再構成して、各要素を変数に格納し、パイプ。あなたの助けをもう一度ありがとうニック! – AskJarv

関連する問題