Exchange OnlineをPowerShellで操作する2(社内にばらまいた不適切なメールを削除する)

前回に引き続き、GUIでは実施できなくてPowerShellでないと実行できないのに、少しリファレンスが少なく感じた機能を紹介します。

(Exchange Onlineサービス説明より)
また、管理者は、複数の組織の複数のメールボックスに送信された不適切な電子メール メッセージを検索して削除することができます。たとえば、機密の給与情報がすべての従業員に誤って電子メールで送信された場合、管理者はユーザーのメールボックスからその電子メールを削除できます。

個人的には良い機能ですが、役員には知られたくない機能ですね。「○○君、実はさっき間違えてこんなメールを社内に送ってしまったのだが…」とか(w

クライアントがOutlookを利用している場合は、すぐに送信済みボックスを開いて、取り消しメールを送れば済むことも有りますが、OWAを利用している場合や、そもそもそんなクライアントの機能を知っているような人はこんな事にはならないという話も。

という訳で、PowerShellを利用してこれに対応してみましょう。Search For and Delete Messages from Users’ Mailboxes あたりが参考になります。

まずは該当メールを特定します。該当メールを絞り込むため、なるべく多くの条件を聞き出します。「タイトル」「だいたいの送信日時」「送信者」「送信先(To)」「Cc」「添付ファイル名」などでしょうか。

ここでは、hoge@example.comさんが7/3の朝8:00くらいに社内ALLにばらまいた、タイトル「昨日は楽しかったよ」を削除することをしたいと思います。

前提として、この作業はユーザのメールボックスの中身を検索・操作する必要があるので、通常の管理者では持っていない特権を付与する必要があります(通常の管理者アカウントだとSearch-Mailboxコマンドレット自体が利用できません)。Mailbox Import ExportMailbox Searchの権限が必要になりますが、ビルトインの役割グループには適した物が無いので、ここでは新規に作成して、管理者のアカウントに割り当てます。

そして、権限を割り当てられたユーザでExchange OnlineにPowerShellで接続します。接続が完了したあと、まずは対象のメールのみを取り出すクエリを作ります。この辺を参照に、今回の条件を-SearchQueryの条件の中にカンマ区切りで記載します。そして、-LogOnlyオプションを付けて実行します。

注意なのですが、Sent条件で指定する日付は、MM/DD/YYYY形式のUTC時間(日本の場合は-9時間した値)ですので、今回は7月2日として検索します。

Get-Mailbox -ResultSize unlimited | Search-Mailbox -SearchQuery "subject:'昨日は楽しかったよ', Sent:07/02/2011" -TargetMailbox admin -TargetFolder SearchAndDelete -LogLevel Full -LogOnly

これにより、adminさんのSearchAndDeleteフォルダに、検索結果の詳細レポートが格納されます。こちらの情報(添付されているCSVファイル)などを元に、問題ないと判断したら、-DeleteContentオプションを付けて実行します。

Get-Mailbox -ResultSize unlimited | Search-Mailbox -SearchQuery "subject:'昨日は楽しかったよ', Sent:07/02/2011" -DeleteContent

間違えて他のメールを削除してしまった時の為や、後々の為?に削除するメールのコピーを念のため取っておく必要がある場合は、先ほどのコマンドに-TargetMailboxと-TargetFolderオプションを付けて実行します。

Get-Mailbox -ResultSize unlimited | Search-Mailbox -SearchQuery "subject:'昨日は楽しかったよ', Sent:07/02/2011" -TargetMailbox admin -TargetFolder SearchAndDelete -DeleteContent

こうすると、検索されたメールは削除されて、メールのコピーが先ほどレポートが格納されていたフォルダ配下に、ユーザ名-実行日時(UTC)-メールボックス名-フォルダ名の階層構造として格納されます。

ちなみに、上で実施した管理アカウントへの特権割り当てやそれを利用したメールボックス操作などは、当然ながら全て監査ログに記録されておりますので、後で何か有ったときの防衛のため、依頼主からの正当な申請に基づいて実施した旨、しっかりとエビデンスは残しておくことをお勧めします。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です