役割ベースのアクセス制御 (RBAC) を使用して証拠開示検索のスコープを制限する
(この記事は 2015 年 3 月 30 日に Office Blogs に投稿された記事 Using RBAC to restrict Discovery Searches の翻訳です。最新情報については、翻訳元の記事をご参照ください。)
はじめに
電子情報開示 (eDiscovery) は、Microsoft Exchange で利用できる強力な機能です。電子情報開示マネージャーが組織内のすべてのメールボックスから証拠開示を行うために使用するものであり、コンプライアンスと法的要件に対処する際に非常に重要な役割を果たします。
既定では、Microsoft Exchange Server を初めてインストールしたとき、証拠開示管理の役割グループが作成されます。皆様もご存じのとおり、この役割グループによって管理者は電子情報開示検索を実行できるようになります。既定の役割グループなので、このグループの検索スコープを特定のメールボックスに制限することはできません。つまり、この役割グループのメンバーは、組織内のすべてのメールボックスを検索できることになります。
では、電子情報開示検索のスコープを社内または部門内の特定のメールボックスに制限してほしいというリクエストがあった場合、どうすればよいのでしょう。そのような制限は可能なのでしょうか。
答えは「イエス」です。役割ベースのアクセス制御 (RBAC) を使用すれば、検索スコープを特定のメールボックスだけに制限することができます。
メモ: Microsoft Exchange Server 2013 と Exchange Online で電子情報開示検索のカスタム スコープをサポートするフィルターは、RecipientRestrictionFilter のみです。これに、ユーザー メールボックスの memberofGroup プロパティを設定します。
この記事では、特定の部門に検索スコープを制限するシナリオについて説明します。Microsoft Exchange 2013 でこのシナリオを実現するには、電子情報開示検索のカスタム スコープを作成する際に、共通のルールに従う必要があります。
RecipientFilter を使用して電子情報開示のスコープを特定の部門に制限
ジョンは TailSpin Toys 社で働いています。ここしばらくは新しい任務を任されていました。今後は、電子情報開示マネージャーの肩書を得て、経理部門のいくつかのメールボックスに対し、電子情報開示検索を行うことになっています。Microsoft Exchange 管理者は、ジョンに必要なアクセス許可を割り当てる必要があります。ただし、経理部門以外の部門のメールボックスに対しては、電子情報開示検索を実行できないようにしなければなりません。つまり、検索スコープを経理部門に制限するわけです。
このシナリオでの手順は次のとおりです。
- 経理部門の配布グループを作成し、この配布グループのメンバーとして、検索対象とするユーザー メールボックスを追加します。
- 検索対象のメールボックスのスコープを制限するには、経理部門の配布グループのメンバーになっているユーザーだけが含まれるカスタム スコープを定義します。それには、新しいスコープの基準として、RecipientRestrictionFilter と DistributionListMembership を使用します。
- 新しい役割グループを作成し、新しいカスタム スコープを割り当てます。「メールボックス検索」役割と「法的情報保留」役割を追加し、ジョンをこの役割グループのメンバーとして追加します。これで、ジョンは経理部門専属の電子情報開示マネージャーとなります。
- 電子情報開示検索の結果を保存するための専用の証拠開示メールボックスを作成し、ジョンに完全なアクセス許可を付与します。
1. 経理部門の配布グループを作成、構成する
シナリオに従って、Exchange 管理者は、「eDiscovery Accounting Users」という名前の配布グループを作成します。それには次のコマンドを実行します。
New-DistributionGroup -Name "eDiscovery Accounting Users" -Alias "ediscoveryaccounting" -MemberJoinRestriction closed -MemberDepartRestriction closed -ModerationEnabled $true |
次に、この新しいグループに対象とするユーザー メールボックスを追加します。
以下のコマンドでは、経理部門のすべてのユーザー メールボックスの一覧を取得できます。
Get-Recipient -RecipientTypeDetails UserMailbox -ResultSize unlimited -Filter 'Department -eq "Accounting"' |
このコマンドを使用して変数を作成します。この変数を Add-DistributionGroupMember コマンドレットと併せて使用し、配布グループにユーザーのグループを追加します。
$members = Get-Recipient -RecipientTypeDetails UserMailbox -ResultSize unlimited -Filter 'Department -eq "Accounting"' |
上記のコマンドで、ユーザー アカウントの Department プロパティの値が「Accounting」であるすべてのユーザー メールボックスを格納する変数が作成されます。続いて以下のコマンドで、eDiscovery Accounting Users 配布グループにユーザーを追加します。
$members | ForEach {Add-DistributionGroupMember "eDiscovery Accounting Users" -Member $_.Name} |
ポイント
- 配布グループはメールが有効なユニバーサル配布グループである必要があります。Exchange 管理センターまたは Exchange 管理シェルで作成できます。
- 配布グループには複数の所有者を割り当てることができます。
- モデレートが有効になっていることと、配布グループがグローバル アドレス一覧 (GAL) に表示されないことを確認します。
- メンバーが配布グループに自動的に追加されたり、配布グループから自動的に削除されたりしないようにします。この要件を満たしているか確認するには、次のコマンドを実行して配布グループのプロパティを確認します。
2. RecipientRestrictionFilter を使用してカスタム管理スコープを作成する
暗黙的書き込みスコープでも定義済み相対スコープでも、ビジネスのニーズに合わない場合はカスタム スコープが必要になります。カスタム スコープを使用すると、管理役割を適用するスコープを詳細なレベルで定義できます。
カスタム スコープの詳細については、「管理役割スコープについて」を参照してください。
eDiscovery Accounting Users 配布グループにユーザー メールボックスを追加したら、次にカスタム管理スコープを作成します。
カスタム管理スコープの作成
次のコマンドを実行して、eDiscovery Accounting Users グループのプロパティを変数に保存します。この変数は、後続のコマンドで使用します。
$DG = Get-DistributionGroup -Identity "eDiscovery Accounting Users" |
次に、カスタム スコープを作成します。RecipientRestrictionFilter に、手順 1 で作成した配布グループを設定します。ここで作成したスコープは、後の手順で作成する役割グループに割り当てます。
New-ManagementScope "Accounting Users eDiscovery Scope" -RecipientRestrictionFilter "MemberOfGroup -eq '$($DG.DistinguishedName)'" |
管理スコープが完成したら、次のコマンドを実行して、RecipientFilter を検証します。この受信者フィルターに基づいて、電子情報開示検索のスコープが定義されます。
メモ
- Microsoft Exchange Server 2013 と Exchange Online で電子情報開示検索のカスタム スコープをサポートするフィルターは、RecipientRestrictionFilter のみです。これに、ユーザー メールボックスの memberofGroup プロパティを設定します。
- 上記の制限は、電子情報開示検索のカスタム スコープにのみ適用されます。
3. 新しい役割グループを作成する
ここでは、新しい管理役割グループを作成し、前の手順で作成した「Accounting Users eDiscovery Scope」というカスタム管理スコープに割り当てます。次のコマンドを実行します。
New-RoleGroup "Accounting Users eDiscovery Managers" -Roles "Mailbox Search","Legal Hold" -CustomRecipientWriteScope "Accounting Users eDiscovery Scope" -Members "John@tailspintoys.com" |
Microsoft Exchange セキュリティ グループ コンテナーの下に新しい役割グループが作成されます。この役割グループには、「 メールボックス検索 」役割と「 訴訟ホールド 」役割を割り当てています。電子情報開示検索のスコープは、eDiscovery Accounting Users 配布グループに制限されます。このスコープを定義しているのは、RecipientFilter です。ジョンは役割グループのメンバーとして追加され、必要な管理タスクを実行するためのアクセス許可を付与されます。
この役割グループに他のメンバーを追加する場合は、次のコマンドを実行します。
Add-RoleGroupMember "Accounting Users eDiscovery Managers" -Member "Jane@tailspintoys.com" |
メモ : 証拠開示管理の役割グループには、監視対象でないユーザーや承認されていないユーザーを追加しないでください。万一追加した場合、メールボックスを探索するアクセス許可が付与され、組織全体のメールボックスを検索できるようになってしまいます。
Accounting Users eDiscovery Managers に関連付けられている RoleAssignments を確認するには、次のコマンドを実行します。
Get-RoleGroup "Accounting Users eDiscovery Managers" | FL |
次のコマンドを実行すると、この役割に関連付けられている CustomRecipientWriteScope と RecipientReadScope を確認できます。
Get-ManagementRoleAssignment "Mailbox Search-Accounting Users eDiscovery Managers" | FL |
上のコマンドでは、Accounting Users eDiscovery Managers 役割グループに割り当てられている役割を確認でき、また RoleGroupType が「Standard」に設定され、RecipientReadScope が「Organization」に設定されていることを確認できます。ここからわかるのは、組織内のすべてのメールボックスにアクセスできるのは、電子情報開示マネージャーのみということです。ユーザーが Accounting Users eDiscovery Managers 役割グループのメンバーであり、特定のメールボックスに対して CustomRecipientWriteScope が定義されている場合、そのユーザーがスコープ外のメールボックスを検索しようとすると、検索に失敗します。
メモ : 既定では、電子情報開示マネージャーはすべてのメールボックスにアクセスできます。また、RecipientReadScope パラメーターを上書きして同様の制限をかけることはできません。
4. 経理部門専用の証拠開示メールボックスを作成する
経理部門のメールボックスに対する電子情報開示検索の結果を保存する証拠開示メールボックスを作成するには、次のコマンドを実行します。
New-Mailbox –Name "Discovery mailbox-Accounting" –UserPrincipalName "eDSaccounting@tailspintoys.com" –Discovery |
メモ
- 証拠開示メールボックスにはユーザー アカウントが関連付けられていますが、このユーザー アカウントは無効です。
- カスタム スコープを使用した検索の結果をコピーする場合、証拠開示メールボックスを、スコープの作成に使用した eDiscovery Accounting Users 配布グループのメンバーにする必要があります。次のコマンドを実行して、配布グループのメンバーとして証拠開示メールボックスを追加します。
Add-DistributionGroupMember -Identity "eDiscovery Accounting Users" -Member "Discovery mailbox-Accounting" |
ジョンは、証拠開示メールボックスを開いて検索結果を参照する必要があります。そこで、ジョンには証拠開示メールボックスに対する FullAccess のアクセス許可を付与します。
Add-MailboxPermission –Identity "Discovery mailbox-Accounting" –User "Tailspintoys\John" –AccessRights "FullAccess" |
アクセス許可が付与されると、ジョンは証拠開示メールボックスにアクセスできるようになります。
ポイント
- 部門専用の証拠開示メールボックスを作成する必要があるのは、検索結果が、他の電子情報開示マネージャーがアクセスできる既定の証拠開示メールボックスにコピーされないようにするためです。
- 部門ごとに検索結果をコピーする追加の証拠開示メールボックスを作成しておくと、データ漏えいのリスクを抑えることができます。このシナリオでは、経理部門の電子情報開示検索を実行する電子情報開示マネージャーだけに、この証拠開示メールボックスへのアクセスを許可しています。
- 証拠開示メールボックスのような機密情報を含むメールボックスに対しては、メールボックス所有者のアクション (メッセージの削除など) の監査ログを有効にすることを検討してください。検索対象のユーザー メールボックスの監査を有効にするのもよいでしょう。
- Exchange 管理センター (EAC) は、検索結果がコピーされる証拠開示メールボックスのみを一覧表示します。これは既定の動作です。
- 証拠開示メールボックスの監査ログの管理には、Exchange 管理シェルを使用する必要があります。
詳細については、以下のトピックを参照してください。
● メールボックスのメールボックス監査ログを有効または無効にする
役割グループの電子情報開示検索のテスト
Microsoft Exchange 2013 の Exchange 管理センターを使用して電子情報開示検索を実行する
現時点では、ジョンは経理部門のメールボックスを選択し、適切な日付の範囲を指定して証拠開示検索を実行し、期待どおりの検索結果を得ることができます。証拠開示検索の実行方法については、以下のトピックを参照してください。
電子情報開示マネージャーがカスタム スコープ外のメールボックスを検索しようとすると…
ジョンがカスタム スコープ外のメールボックスに対して検索を実行しようとすると、次のようなエラーが発生します。これは、スコープに RecipientRestrictionFilter が適用されているために、役割グループにより MemberOfGroup プロパティがチェックされるからです。ユーザー メールボックスの MemberOfGroup の値が eDiscovery Accounting Users 配布グループの識別名と一致しない場合、そのユーザー メールボックスはカスタム スコープ内に存在しないと判断されます。
役割グループに明示的に「メールボックス検索」役割を付与しても、スコープ外のメールボックスは検索できません。
管理者監査ログと電子情報開示
Microsoft Exchange 2013 では、既定で管理者監査ログが有効になっています。Exchange 管理シェルで直接実行されるすべてのコマンドレットが監査対象になります。Exchange 管理センター (EAC) で実行する操作も、バックグラウンドでコマンドレットが実行されるため、ログに記録されます。環境内で実行される電子情報開示コマンドレットもログに記録されます。管理者が MailboxSearch コマンドレットにアクセスするためには、証拠開示管理グループのメンバーになっている必要があります。
Organization Management 役割グループは、既定で、その役割グループのメンバーになっているユーザーまたはユニバーサル セキュリティ グループ (USG) の証拠開示検索機能が無効となっています。Organization Management 役割グループのメンバーを証拠開示管理グループのメンバーにするか、後で紹介する「メールボックス検索」役割を、Organization Management 役割グループに手動で割り当てる必要があります。
管理者は EAC を使用して監査ログ レポートをエクスポートし、組織内の変更を追跡することができます。また、特定の日付に対してインプレースの電子情報開示と保持のレポートを実行し、その日に実行された検索をチェックすることもできます。検索に対する変更のレポートも作成できます。
管理者監査ログは、環境内で実行されたコマンドレットを追跡します。このため、許可されていないアクセスを検出できます。
詳細については、以下のトピックを参照してください。
まとめ
このブログで取り上げたシナリオは、部門や会社別に電子情報開示検索の範囲を制限したい場合に有効です。唯一の条件は、電子情報開示検索の対象とするメールボックスの配布グループを作成することです。カスタム スコープの受信者フィルターを作成するために使用できるユーザー メールボックスのプロパティは、配布グループのメンバーシップ (実際のプロパティ名は MemberOfGroup) だけです。他のプロパティ (CustomAttribute、Department、PostalCode など) を使用すると、検索メソッドがサポート対象外と見なされます。
参考資料: https://technet.microsoft.com/ja-jp/library/dn741464%28v=exchg.150%29.aspx
複数の部門、または別の会社のメールボックスを検索する必要がある場合は、配布グループに手動でユーザーを追加するか、PowerShell を使用して部門または会社に基づく特定の配布グループにユーザーを一括で追加します。
メモ
- 動的配布グループは、電子情報開示検索のカスタム スコープの作成には使用できません。
- 配布グループをプライマリ配布グループにネストしても、スコープは MemberOfGroup しかチェックしないため、期待どおりの結果は得られません。ネストしたグループにユーザー アカウントを追加することは可能ですが、MemberOfGroup プロパティには異なる値が割り当てられます。この問題を避けるため、管理者は単一のカスタム スコープを作成し、複数の配布グループを割り当てることができます。
- 組織単位をパラメーターとして指定した役割グループを作成して役割グループを制限し、役割に特定の組織単位のみを関連付けることも可能ですが、この方法はカスタム電子情報開示検索ではサポートされません。
- カスタム スコープを使用した電子情報開示検索の結果は、他の電子情報開示マネージャーも表示することができます。承認されていない電子情報開示マネージャーが検索結果を削除することは可能ですが、このアクションは管理者監査ログに記録されます。
この記事では、ビジネス ニーズに応じて、役割ベースのアクセス制御 (RBAC) を使用し、電子情報開示検索を電子情報開示マネージャーのみに制限する方法について手順を追って説明しました。
最後に、この記事で紹介した手法の検証に協力してくださった Mark Johnson、Bharat Suneja、Nino Bilic、Jennifer Gagnon、Quentin Christensen に感謝の意を表します。
また、この記事の執筆にあたって指導と助言を惜しまなかった Ben Winzenz、Chris Pollitt、Matthew Byrd、Charlotte Raymundo に心から感謝を申し上げます。
Siddhesh Dalvi