web-dev-qa-db-ja.com

Powershellを使用してExchange 2010で電子メールを自動転送/リダイレクトしているユーザーを見つける

私たちはLive @ eduを使用しています。これは基本的にHosted Exchangeサーバーであり、回避するためのいくつかの追加機能と制限があります。私は自分のアカウントからメールを転送またはリダイレクトしているすべての人を見つけようとしています。

使用されていない古いアカウントを削除しようとしていますが、ユーザーにメールをリダイレクトする手順があります。そのため、一部のユーザーが実際にメールをリダイレクトしているため、最後のログイン/ログオフ時間にそれらが使用されているかどうかが反映されないことが予想されます。実際、自動転送または自動リダイレクトのルールを使用しています。

Exchange 2010 Powershellコマンドレットを使用して、転送またはリダイレクトのルールを持つユーザーのリストを見つけるにはどうすればよいですか?

/編集:ルールが転送/リダイレクトするか、他のアクションを実行するかに関係なく、サーバー側のルールがあるかどうかを確認するだけで十分です。

8
Ryan H

あなたは

get-mailbox -Filter { ForwardingAddress -like '*' } | select-object Name,ForwardingAddress

?または、ユーザーがOutlookまたはOWAで作成した「受信トレイルール」ですか。後者はトリッキーですが、パイピング

$mbox = Get-Mailbox; $mbox | Foreach { Get-InboxRule -Mailbox $_ }

(ライアン、ここで構文をテストおよび修正してくれてありがとう)そして、非転送/リダイレクトルールでフィルタリングを行うとうまくいくはずです。

8
the-wabbit

次のPowerShellコマンドが役に立ちました。

転送ルールを見つけるには:

 foreach ($i in (Get-Mailbox -ResultSize unlimited)) { Get-InboxRule -Mailbox $i.DistinguishedName | where {$_.ForwardTo} | fl MailboxOwnerID,Name,ForwardTo >> d:\Forward_Rule.txt }

リダイレクトルールを見つけるには:

 foreach ($i in (Get-Mailbox -ResultSize unlimited)) { Get-InboxRule -Mailbox $i.DistinguishedName | where {$_.ReDirectTo} | fl MailboxOwnerID,Name,RedirectTo >> d:\Redirect_Rule.txt }

出典: Microsoft TechNetフォーラム

4
Amit SHah

これらのコマンドをありがとう。

これが、私が最終的にフォワードまたはリダイレクトするルールを見つけるために使用したものです...

foreach ($i in (Get-Mailbox -ResultSize unlimited)) { Get-InboxRule -Mailbox $i.DistinguishedName | where {$_.RedirectTo -or $_.ForwardTo -and -not ($_.description -match "If the message") } | fl MailboxOwnerId,Description >> rules.txt }

それは、基本的にメールボックスをリレーとして使用して、すべてを別のアカウントに送信しているアカウントを見つけることです。一部の人に役立つと思いました。

3
BradleyMorgan