メールボックス

電子情報開示の検索を利用してフォルダー単位で検索する方法

Exchange 管理センターの電子情報開示検索、および、セキュリティコンプライアンスセンターの電子情報開示検索では、フォルダー単位で検索するための条件が既定では提供されていません。

このため、例えば、自分が仕訳目的で自分で作成した特定のフォルダーに格納されているメールのみを検索したいという動作や、それに加えて特定フォルダー配下の〇〇の件名のメールといった検索を実施することができないんです。確かに、電子情報開示検索自体が、管理者側が何かしらの目的のために検索する用途であり、検索を実施する管理者はそもそも検索対象のメールボックスのフォルダー構造や、どのフォルダーの配下にどんなアイテムが格納されている。なんてことは知らないわけで、フォルダー単位の検索というのは不要といえば不要かもしれないんですが…

ただ、回復可能な領域のフォルダーのみ検索したい、すなわち、Deletions、Purges などのみ検索したいというのは管理者のニーズとしてあるんじゃないかなー?って思うんですがいかがでしょう。

で、この点について調べていたらフォルダー単位で検索を実施する方法ありました!

こちらの『Office 365 で対象のコレクションにコンテンツ検索を使用する』に方法が記載されています。

けっこうイロイロと記載されていますが、概要としてまとめると以下となります。

  1. 上記公開情報内でサンプルとして準備されている Powershell のスクリプトをメモ帳などのテキストエディターに張り付け、.ps1 ファイルとして保存します。
  2. 手順 1. で保存した .ps1 を実行します。
  3. フォルダー検索を実施したい対象のメールボックス情報を求められるので電子メールアドレスを入力します。
  4. Powershell を実行するための認証情報を求められるので、Office 365 の全体管理者権限の認証情報を入力します。
  5. 対象メールボックスのフォルダー ID 一覧が表示されるので、検索対象としたいフォルダーの ID をコピーします。
  6. セキュリティーコンプライアンスセンターから電子情報開示を開き、検索を実行します。
  7. 検索を実行する際に、対象のメールボックスを指定し、検索条件のキーワードとして、手順 5. で表示されたフォルダー ID を張り付けます。
  8. 検索を実施します。

検索結果として、対象のフォルダー ID、に該当するフォルダー配下に格納されているメールアイテムのみが検索結果として返されます。

注意 !!) フォルダー ID は、サンプルとして公開されている Powershell のサンプルスクリプトを実行した結果で返されるものを利用する必要があります。Get-MailboxFolderStatistics を実行するだけでも、フォルダーごとに FolderID というパラメーターと値が返されますが、こちらの FolderID ではうまく動作しない模様です。

なお、Powershell のサンプルスクリプト内では実際 Get-MailboxFolderStatistics を実行して、ここから FolderID を生成しています。サンプルスクリプトの Get-MailboxFolderStatistics に -Archive を付与して実行することにより、実行結果としてアーカイブメールボックスのフォルダー ID が返されます。しかしながら、返されたアーカイブメールボックスのフォルダー ID を利用して、上記手順にて検索を実施しても検索結果は 0 件となり正常に動作しませんでした… (2018/02 現在) アーカイブメールボックスにおいてフォルダー単位で検索するためにはどうすればいいんでしょうね…

-メールボックス