Exchange Serverで管理者監査ログを使用する方法

Exchange Serverで管理者監査ログを使用して、ユーザーまたは管理者が組織で変更を加えたときにログを記録できます。 変更のログを記録することによって、変更を行った担当者に対する変更の追跡、変更の詳細レコードによる変更ログの拡張、規制要件や証拠開示要求の遵守などが可能となります。

既定では、管理者監査ログは、Exchange Serverの新しいインストールで有効になります。

監査対象

Exchange 管理シェル で直接実行されるコマンドレットが監査されます。 さらに、Exchange 管理センター (EAC) を使用して実行する操作もバックグラウンドでコマンドレットを実行するため、ログに記録されます。

コマンドレットは、実行する場所にかかわらず、コマンドレットがコマンドレット監査リストにあり、そのコマンドレットの 1 つまたは複数のパラメーターがパラメーター監査リストにある場合に、監査の対象となります。 監査ログは、どのオブジェクトが参照されたかよりも、Exchange 組織のオブジェクトを変更するためにどのような操作が行われたかを示すことを目的としています。

メモ:

  • コマンドレットが管理監査ログ コマンドレット拡張エージェントを呼び出す前にエラーが発生した場合、コマンドレットはログ記録されない可能性があります。 管理監査ログ エージェントが呼び出された後にエラーが発生した場合、コマンドレットは関連するエラーとともにログ記録されます。 詳細については、後述する「管理監査ログ エージェント」を参照してください。

  • 監査ログ構成への変更は、構成変更の実行時にExchange 管理シェルを開いたコンピューター上で 60 分ごとに更新されます。 変更を直ちに適用するには、各コンピューター上で Exchange 管理シェル を閉じてから再度開きます。

  • コマンドは、実行してから監査ログの検索結果に表示されるまで、最大 15 分かかることがあります。 そのため、監査ログのエントリをインデックス処理してから検索してください。 管理者監査ログにコマンドが表示されない場合は、数分待機してから検索を再実行してください。

管理者監査ログの構成

既定では、管理者監査ログが有効なときは、コマンドレットが実行されるたびに、ログ エントリが作成されます。 コマンドレットの実行のたびに監査しないのであれば、対象とするコマンドレットとパラメーターのみを監査するように監査ログを構成できます。 Set-AdminAuditLogConfig コマンドレットで監査ログを構成します。 次のセクションで説明するパラメーターは、このコマンドレットと一緒に使用します。

重要

管理者監査ログの構成に対する変更は、 Set-AdminAuditLogConfig コマンドレットが監査対象のコマンドレット一覧に含まれているかどうか、また監査ログが有効か無効かにかかわらず、常にログ記録されます。

コマンドを実行すると、Exchange は使用されたコマンドレットを検査します。 実行されたコマンドレットが AdminAuditLogCmdlets パラメーターで指定されたコマンドレットのいずれかと一致する場合、Exchange は AdminAuditLogParameters パラメーターで指定されたパラメーターを確認します。 パラメーター一覧のパラメーターが 1 つ以上一致した場合は、実行されたコマンドレットが Exchange により記録されます。 以降のセクションでは、監査ログ構成に関する各側面の詳細を説明します。

監査ログ構成の管理の詳細については、「管理者監査ログの管理」を参照してください。

コマンドレット

ログに記録するコマンドレットとそのパラメーターの一覧を指定することで、監査されるコマンドレットを制御できます。 監査ログを構成するときは、すべてのコマンドレットを監査するように指定するか、 AdminAuditLogCmdlets パラメーターを使用して監査するコマンドレットを指定できます。 New-Mailbox などの完全なコマンドレット名を指定することも、コマンドレットの部分的な名前を指定し、それらの名前をアスタリスク (*) などのワイルドカード文字で囲むことができます。 たとえば、文字列 Transport を含むコマンドレットが実行されたときにログを記録する場合は、 の *Transport*値を指定できます。 完全なコマンドレット名と部分的なコマンドレット名の組み合わせを同時に使用して、監査ログの構成をニーズに合わせて調整できます。

すべてのコマンドレットを監査するには、ワイルドカード文字 (*) のみを指定します。 これは既定の設定です。

パラメーター

ログ対象のコマンドレットを指定することに加え、それらのコマンドレットで特定パラメーターが使用された場合にのみ、コマンドレットをログ記録するように指定することもできます。 AdminAuditLogParameters パラメーターを使用して、ログに記録するパラメーターを指定します。 コマンドレットと同様に、、 などの Database完全なパラメーター名や、ワイルドカード文字 () で囲まれた部分パラメーター名 (*など *Address*)、または両方の組み合わせを指定できます。

すべてのパラメーターを監査するには、ワイルドカード文字 (*) のみを指定します。 これは、既定の設定です。

管理者監査ログの有効期限

既定では、管理者監査ログはログ エントリを 90 日間保存するように構成されています。 監査ログ エントリは 90 日後に削除されます。 監査ログの有効期間の制限は 、AdminAuditLogAgeLimit パラメーターを使用して変更できます。 たとえば、年齢制限を 180 日に変更するには、 コマンド を使用します Set-AdminAuditLogConfig -AdminAuditLogAgeLimit 180。 監査ログ エントリを保存しておく日数、時間数、分数、秒数も指定できます。 値を指定するには、次の形式 dd.hh:mm:ss を使用します。

  • dd: 監査ログ エントリを保持する日数

  • hh: 監査ログ エントリを保持する時間数

  • mm: 監査ログ エントリを保持する分数

  • ss: 監査ログ エントリを保持する秒数

フィールドを使用して複数の年を指定する dd 必要があります。 たとえば、365 日は 1 年、730 日は 2 年であるため、913 日は 2 年 6 か月になります。 たとえば、監査ログの有効期間の制限を 2 年 6 か月に設定するには、値 913を使用します。

:

  • 管理者監査ログの有効期限は、現在の有効期限よりも小さく指定できます。 この場合、新たに指定した有効期限を超えている監査ログ エントリは削除されます。

  • 有効期限を 0 に設定すると、Exchange により監査ログのエントリがすべて削除されます。

  • 監査ログの有効期限を構成するためのアクセス許可は、十分に信頼できるユーザーのみに割り当てることをお勧めします。

詳細ログ

既定では、管理者監査ログには、コマンドレット名、コマンドレット パラメーター (と指定した値)、変更されたオブジェクト、コマンドレットを実行したユーザー、コマンドレットが実行された時間、コマンドレットが実行されたサーバーのみが記録されます。 管理者監査ログでは、オブジェクトで変更されたプロパティは記録されません。 管理者監査ログに変更されたオブジェクトのプロパティも含める場合は、 LogLevel パラメーターを に Verbose設定して詳細ログを有効にすることができます。 詳細ログを有効にすると、既定で記録される情報に加えて、オブジェクトで変更されたプロパティ (元の値と変更後の値を含む) が管理者監査ログに追加されます。

Test コマンドレット

動詞 Test で始まるコマンドレットは、既定ではログに記録されません。 TestCmdletLoggingEnabled パラメーターを に設定することで、Test コマンドレットをログに$true記録する必要があることを示すことができます。 テスト コマンドレットのログ記録を有効にすることはできますが、テスト コマンドレットでは多数の監査ログ エントリが生成される可能性があるため、これを短時間だけ実行することをお勧めします。

管理者監査ログ

コマンドレットがログに記録されるたびに、管理者監査ログ エントリが作成されます。 監査ログ エントリは管理者監査ログに格納されます。これは、EAC、Search-AdminAuditLog コマンドレット、または New-AdminAuditLogSearch コマンドレットを使用してのみアクセスできる、非表示の専用の仲裁メールボックスに格納されます。 次のセクションでは、次に関する情報を提供します。

  • 管理者監査ログの内容。

  • EAC の [監査] ページで使用可能なレポート。

  • 管理者監査ログ検索のコマンドレット。

監査ログの内容

それぞれの監査ログ エントリには、次の表に記載されている情報が含まれます。 監査ログには、1 つまたは複数の監査ログ エントリが含まれています。 監査ログ エントリの数は、 コマンドを使用して Set-AdminAuditLogConfig -AdminAuditLogAgeLimit 指定された監査ログの有効期間制限によって制御されます。 有効期限を過ぎた監査ログ エントリは削除されます。

監査ログ エントリのフィールド

フィールド 説明
RunspaceId このフィールドは、Exchange によって内部で使用されます。
ObjectModified このフィールドには、 フィールドに指定されたコマンドレットによって変更されたオブジェクトが CmdletName 含まれます。
CmdletName このフィールドには、ユーザーがフィールドで実行したコマンドレットの名前が Caller 含まれています。
CmdletParameters このフィールドには、フィールド内のコマンドレットの実行時に指定されたパラメーターが CmdletName 含まれます。 パラメーターで指定された値があれば、それもこのフィールドに格納されますが、既定の出力では表示されません。
ModifiedProperties このフィールドには、フィールド内の オブジェクトで変更されたプロパティが ObjectModified 含まれます。 プロパティの以前の値と格納された新しい値も、このフィールドに格納されますが、既定の出力では表示されません。
重要: このフィールドは、Set-AdminAuditLogConfig コマンドレットの LogLevel パラメーターが にverbose設定されている場合にのみ設定されます。
Caller このフィールドには、フィールドでコマンドレットを実行したユーザーのユーザー アカウントが CmdletName 含まれます。
Succeeded このフィールドは、フィールド内 CmdletName のコマンドレットが正常に実行されたかどうかを指定します。 値は または FalseですTrue
Error このフィールドには、フィールド内のコマンドレット CmdletName が正常に完了しなかった場合に生成されたエラー メッセージが含まれます。
RunDate このフィールドには、フィールド内のコマンドレットが実行された日時が CmdletName 含まれます。 日時は、世界協定時刻 (UTC) 形式で格納されます。
OriginatingServer このフィールドは、フィールドで指定されたコマンドレットが実行されたサーバーを CmdletName 示します。
Identity このフィールドは、Exchange によって内部で使用されます。
IsValid このフィールドは、Exchange によって内部で使用されます。
ObjectState このフィールドは、Exchange によって内部で使用されます。

EAC 監査レポート

EAC の [監査] ページには、さまざまな種類の規制準拠および管理構成の変更についての情報を提供する、いくつかのレポートがあります。 以下のレポートは、組織における構成の変更についての情報を提供します。

  • 管理者ロール グループ レポート: このレポートを使用すると、指定した期間内に指定した管理役割グループに対する変更を検索できます。 返される結果には、変更された役割グループ、変更を行った担当者、日時、および変更の内容が含まれます。 最大で 3,000 エントリまで返すことができます。 検索の結果として 3,000 を超えるエントリが返される場合は、 [管理者監査ログ] レポートまたは Search-AdminAuditLog コマンドレットを使用します。

  • 監査ログ レポート管理: このレポートを使用すると、指定した期間内に記録された管理者監査ログ内のエントリを表示できます。 また、管理者監査ログ エントリを XML ファイルにエクスポートし、指定した受信者に電子メールでファイルを送信できます。 XML ファイルの内容の詳細については、「 管理者監査ログの構造」を参照してください。

これらのレポートの使用方法については、「 役割グループの変更または管理者監査ログを検索する」を参照してください。

Search-AdminAuditLog コマンドレット

Search-AdminAuditLog コマンドレットを実行すると、検索条件と一致する監査ログ エントリがすべて返されます。 以下の検索条件を指定できます。

  • コマンドレット: 管理者監査ログで検索するコマンドレットを指定します。

  • パラメーター: 管理者監査ログで検索するパラメーターをコンマで区切って指定します。 検索するコマンドレットを指定した場合のみ、パラメーターを検索できます。

  • 終了日: 管理者監査ログの結果の範囲を、指定の日付以前に発生したログ エントリに限定します。

  • 開始日: 管理者監査ログの結果の範囲を、指定の日付以降に発生したログ エントリに限定します。

  • オブジェクト ID: 指定された変更済みオブジェクトを含む管理者監査ログ エントリのみを返すように指定します。

  • ユーザー ID: コマンドレットを実行したユーザーの指定された ID を含む管理者監査ログ エントリのみを返すように指定します。

  • 正常完了: 成功または失敗を示した管理者監査ログ エントリのみを返すかどうかを指定します。

それぞれの監査ログ エントリには、「監査ログの内容」の表に記載されている情報が含まれます。 既定では、検索条件に一致するログ エントリのうち、最初の 1,000 エントリのみが返されます。 ただし、この既定値をオーバーライドし、 ResultSize パラメーターを使用して複数または少ないエントリを返すことができます。 の値 UnlimitedResultSize パラメーターで指定すると、指定した条件に一致するすべてのログ エントリを返すことができます。

Search-AdminAuditLog コマンドレットの使用方法については、「役割グループの変更または管理者監査ログを検索する」を参照してください。

New-AdminAuditLogSearch コマンドレット

New-AdminAuditLogSearch コマンドレットは、 Search-AdminAuditLog コマンドレットと同様に、管理者監査ログを検索します。 ただし、検索結果を Exchange 管理シェル に表示する代わりに、 New-AdminAuditLogSearch コマンドレットでは、検索を実行してその結果を指定した受信者に電子メール メッセージで送信します。 結果は、電子メール メッセージに XML 添付ファイルとして含められます。

Search-AdminAuditLog コマンドレットで使用した検索条件と同じ条件を New-AdminAuditLogSearch コマンドレットで使用できます。 検索条件の一覧については、「 Search-AdminAuditLog コマンドレット」を参照してください。

New-AdminAuditLogSearch コマンドレットの実行後に、Exchange から指定された送信者にレポートが配信されるまで、最大で 15 分かかる場合があります。 XML ファイルとして添付されたレポートは、最大で 10 MB になることがあります。 この XML ファイルには、「 監査ログの内容」の表に記載された情報と同じものが含まれます。 XML ファイルの構造の詳細については、「管理者監査ログの構造」を参照してください。

注:

Outlook Web App では、既定では XML の添付ファイルを開くことができません。 Outlook Web App を使用して XML 添付ファイルを表示できるように Exchange を構成するか、Microsoft Outlook など別のメール クライアントを使用して添付ファイルを表示することができます。 XML 添付ファイルを表示できるようにOutlook Web Appを構成する方法については、「Exchange Serverで仮想ディレクトリOutlook on the web表示または構成する」を参照してください。

New-AdminAuditLogSearch コマンドレットの使用方法については、「ロール グループの変更または管理者監査ログを検索する」を参照してください。

手動による管理者監査ログ エントリ

Exchange コマンドレットの実行時にログを記録するだけでなく、Exchange Serverを使用すると、監査ログにログ エントリを手動で書き込みます。 Exchange Serverでは、Write-AdminAuditLog コマンドレットを使用してこれをサポートしています。 手動でログ エントリを追加する必要が生じる状況は以下のとおりです。

  • カスタム スクリプトの開始と終了

  • 制御情報の変更

  • メンテナンスの開始時刻および終了時刻

Write-AdminAuditLog コマンドレットでは、Comment パラメーターを使用して、監査ログに含める文字列を指定します。 Comment パラメーターは、最大 500 文字の英数字文字列を受け取ります。 手動による監査ログ エントリとコメント文字列には、Exchange コマンドレットのログ記録時にキャプチャされた情報と同じ情報がすべて含まれています。 監査ログに含まれる各フィールドの説明については、「 監査ログの内容」の表を参照してください。

手動による監査ログ エントリは、EAC の [監査] ページ、 Search-AdminAuditLog コマンドレットまたは New-AdminAuditLogSearch コマンドレットを使用して、他のログ エントリと同様の方法で取得できます。

手動監査ログ エントリの Write-AdminAuditLog コマンドレットの Comment パラメーターの内容を表示するには、「ロール グループの変更または管理者監査ログを検索する」を参照してください。

Active Directory のレプリケーション

管理者監査ログは、Active Directory レプリケーションに依存して、組織内のドメイン コントローラーに指定する構成設定をレプリケートします。 レプリケーション設定によっては、加えた変更が組織内の Exchange を実行するすべてのサーバーに直ちに適用されない場合もあります。

管理監査ログ エージェント

管理監査ログ組み込みのコマンドレット拡張エージェントは、Exchange Serverでコマンドレット操作の管理者監査ログを実行します。 このエージェントは監査ログ構成を読み取り、組織内で実行される各コマンドレットの評価を実行します。 管理者監査ログ構成で指定した条件が実行中のコマンドレットと一致する場合は、エージェントにより監査ログ エントリが生成されます。

管理監査ログ エージェントは既定で有効になっており、管理者監査ログを機能させるために必要です。 無効にすることも、優先順位を変更することもできません。 コマンドレット拡張エージェントの詳細については、「Cmdlet Extension Agents」を参照してください。