ビジネスメールサービスのExchange Onlineでは、コンプライアンス維持やセキュリティ強化のために監査ログ機能が備わっています。メールボックスに対して監査ログを有効にすると、次のような操作ログの取得が可能です。
≪Exchange Onlineで取得できる監査ログ≫
操作 |
説明 |
---|---|
Copy |
メッセージが別のフォルダにコピーされた。 |
Create |
アイテムが、メールボックスの [予定表]、[連絡先]、[メモ]、または [タスク] フォルダーに作成された。たとえば、新しい会議出席依頼が作成されたなど。 |
FolderBind |
メールボックスのフォルダーにアクセスされた。このアクションは、管理者または代理人が、メールボックスを開くときにもログ記録される。 |
HardDelete |
メッセージが[回復可能なアイテム] フォルダーから削除された。 |
MailboxLogin |
ユーザーが各自のメールボックスにサインインした。 |
MessageBind |
メッセージがプレビューウィンドウで表示されるか、開かれた。 |
Move |
メッセージが別のフォルダーに移動された。 |
MoveToDeletedItems |
メッセージが削除されたか、[削除済みアイテム] フォルダーに移動されまた。 |
SendAs |
メッセージがメールボックス所有者として送信するアクセス許可を使用して送信された。これは、別のユーザーがメールボックスの所有者から送信されているようにメッセージを送信したことを意味する。 |
SendOnBehalf |
メッセージが代理人として送信するアクセス許可を使用して送信された。これは、別のユーザーがメールボックスの所有者の代わりにメッセージを送信したことを意味する。 |
SoftDelete |
メッセージが完全に削除されたか、[削除済みアイテム] フォルダーから削除された。削除済み (回復可能) アイテムは、[回復可能なアイテム] フォルダーに移動される。 |
Update |
メッセージまたはそのプロパティが変更された。 |
UpdateFolderPermissions |
フォルダーのアクセス許可が変更された。フォルダーのアクセス許可では、メールボックス内にあるフォルダーとそれらのフォルダーに格納されているメッセージにアクセスできる組織内のユーザーを管理する。 |
以上の監査ログを取得することで、内部の不正操作を確認したり、コンプライアンス維持やセキュリティ強化に利用できます。それでは、具体的なログ取得方法についてご紹介します。
Exchange Online PowerShellに接続する
PowerShellとはコマンドベースのOS操作アプリケーションで、WindowsなどMicrosoft社製品に備わっている機能です。コマンドプロンプトとの違いは、実行できるコマンドが無数にあり、OS操作のほとんどをPowerShellで行えます。このPowerShellとExchange Olnineを接続すると、Exchange OnlineでもPowerShellが使用できる、監査ログを取得できるようになります。
Exchange Online PowerShellに接続するためには、ローカルコンピューターでPowerShellを起動し、以下のコマンドを実行します。
≪$UserCredential = Get-Credential≫
Windows 10ならスタートメニューのアプリ一覧から、「Windows PowerShell」のファイルを開くとアプリケーションを起動できます。
上記のコマンドを実行すると「Windows PowerShell 資格情報の要求」というダイアログボックスが表示されるので、Office 365テナント管理者のユーザー名とパスワードを入力して「OK」をクリックします。その後、次の2つのコマンドを順に実行してください。
≪$Session = New-PSSession –ConfigurationName Microsoft.Exchange –ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential –Authentication Basic -AllowRedirection≫
≪Import-PSSession $Session≫
これでExchange Online PowerShellに接続されました。接続を確認するためには、≪Get-Mailbox≫など簡易的なコマンドを実行して接続の成否を確かめましょう。
メールボックスの監査ログ機能を有効にする
Exchange Online PowerShellに接続後、再びPowerShellを使用してメールボックスに対する監査ログ機能をオンにします。監査ログの対象は実行するコマンドによって「個人のメールボックス」と「組織全体のメールボックス」の2通りがあります。
個人のメールボックスの場合
≪Set-Mailbox -Identity "ユーザー名" -AuditEnabled $true≫組織全体のメールボックスの場合
≪Get-Mailbox -ResultSize Unlimited -Filter {RecipientTypeDetails -eq "UserMailbox"} | Set-Mailbox -AuditEnabled $true≫監査ログの用途によってこれらのコマンドを実行しましょう。
取得する監査アクションを指定する
メールボックスに対する監査ログを有効にすると、標準ではユーザーによって実行される「UpdateFolderPermissions」だけが取得されます。取得する監査ログを追加したり、指定たりする場合は次のコマンドを実行しましょう。
特定のユーザーのメールボックスに対して「MailboxLogin」と「HardDelete」の監査アクション取得を追加する場合
≪ Set-Mailbox "ユーザー名" -AuditOwner @{Add="MailboxLogin","HardDelete"}≫特定のユーザーのメールボックスで取得する監査アクションを「MailboxLogin」のみに限定したい場合
≪Set-Mailbox "ユーザー名l" -AuditEnabled $true -AuditOwner MailboxLogin≫組織全体のメールボックスに対して「MailboxLogin」と「HardDelete」の監査アクション取得を追加する場合
≪Get-Mailbox -ResultSize Unlimited -Filter {RecipientTypeDetails -eq "UserMailbox"} | Set-Mailbox -AuditOwner @{Add="MailboxLogin","HardDelete","SoftDelete"}≫これらの設定が有効になったかどうかを確認するためには、次のコマンドを実行してください。
特定のユーザーの場合
≪Get-Mailbox "ユーザー名"| FL Audit*≫組織全体の場合
≪Get-Mailbox -ResultSize Unlimited -Filter {RecipientTypeDetails -eq "UserMailbox"} | FL Name,Audit*≫コンプライアンスとセキュリティに監査ログを活用しよう
人を雇っている以上、コンプライアンス違反やセキュリティ事件はいつ発生するか分かりません。それらの問題を起こした人に、悪意があろうとなかろうと、被害を受けて信頼を失うのは企業です。そうした事態を避けるためにも、Exchange Onlineの監査ログ機能を活用し、コンプライアンス維持とセキュリティ強化に努めましょう。