Dynamics CRM 2015/Online 2015 更新プログラム 階層セキュリティ : ポジション階層

みなさん、こんにちは。

前回に続き、階層セキュリティのポジション階層についてご紹介します。
前回の記事を読まれていない方は、以下のリンクを参照ください。

Dynamics CRM 2015/Online 2015 更新プログラム 階層セキュリティ : 管理者階層

ポジション階層

さまざまな部署のメンバーが参加したプロジェクトの場合、
プロジェクトにおける役割に基づいたデータにアクセスできる必要があります。
ポジション階層は、独自の職位(ポジション)階層を定義しユーザーを登録することで、
自動的にアクセス権が付与される機能です。具体的には以下の通りです。 

・上位ポジションのユーザーは、直属の下位ポジションのユーザーのデータに
対する読み取り、書き込み権限が与えられる
・上位ポジションのユーザーは、直属以外の下位ポジションのユーザーのデータに
対する読み取り権限が与えられる
・読み取り権限が与えられる範囲は、深さで指定できる(既定は 3 )

今回は、以下の 3 名の関係をポジション階層で説明します。

・プロジェクトオーナー
・プロジェクトマネージャー
・プロジェクトメンバー

事前準備

まずは、事前準備として以下の 3 つを行います。

・ユーザー登録
・報告書エンティティの作成
・報告書データの作成

最初に、Dynamics CRM 2015 にユーザーを 3 名を登録します。

1. Dynamics CRM 2015 にシステム管理者でログインします。
2. 設定 | セキュリティ | ユーザーを選択します。

image

3. コマンドバーの新規ボタンをクリックします。
4. Office 365 管理ポータルへ促される画面が表示されます。下のボタンをクリックします。
設置型の場合、操作が異なる場合があります。

image

5. Office 365 管理ポータル画面が表示されます。「+」ボタンで 3 名を登録します。

image

6. Dynamics CRM 2015 のユーザー画面に戻ります。
セキュリティロールが割り当てられていないユーザービューを選択します。

image

7. 追加した 3 名に「ロールの管理」から既定で用意されているロールを設定します。

プロジェクトオーナー:営業担当者ロール
プロジェクトマネージャー:マーケティングプロフェッショナルロール
プロジェクトメンバー:フィールドサービス担当者ロール

以上でユーザーの登録は完了です。

続いて、Dynamics CRM 2015 に報告書エンティティを作成します。
詳細は手順は、前回の記事を参照ください。

最後に、登録した  3 名それぞれで報告書データを作成します。
報告書データを作成するためユーザーに割り当てたセキュリティロールに、報告書エンティティに
対するアクセス権を設定します。アクセス権の範囲は「ユーザーのみ」にします。

1. Dynamics CRM 2015 にログインします。
2. 設定 | セキュリティロール を選択します。
3. ユーザーに設定した既定のセキュリティロールを開きます。
ユーザー定義エンティティタブから報告書のアクセス権限を「ユーザーのみ」に設定します。
エンティティ列の「報告書」を一度クリックすると一括で設定できます。
以下は、営業担当者ロールの例です。他のロールも同じ設定をします。

image

4. プロジェクトメンバー、プロジェクトマネージャーそれぞれで Dynamics CRM 2015 にログインします。
報告書レコードを 1 つずつ作成します。

image

image

5. プロジェクトリーダーでログインし、報告書レコードを 1 つ作成します。
アクティブな報告書ビューに、自身で作成したレコードのみ表示されていることを確認します。

image

以上で事前準備は完了です。

動作確認

早速、ポジション階層を設定してみましょう。

1. Dynamics CRM 2015 にシステム管理者でログインします
2. 設定 | セキュリティ | 階層セキュリティを選択します。

image

3. 階層セキュリティを有効にし、カスタムポジション階層を選択します。

image

4. カスタムポジション階層の構成をクリックします。
5. プロジェクトオーナーのポジションを登録します。ユーザーにプロジェクトオーナーを指定します。

image 

6. プロジェクトマネージャーのポジションを登録します。親ポジションに
プロジェクトオーナーポジション、ポジションのユーザーにプロジェクトマネージャーを指定します。

image

7. プロジェクトメンバーのポジションを登録します。親ポジションに
プロジェクトマネージャーポジション、ポジションのユーザーにプロジェクトメンバーを指定します。

image

なお、ポジションには複数のユーザーを指定できます。
またポジションの登録は、設定 | セキュリティ | ポジションメニューからも可能です。

image

8. ポジションの一覧画面に階層アイコンが表示されていれば階層化されています。

image

例として、プロジェクトオーナーの階層アイコンをクリックすると、関係性が階層表示されます。

image

9. ポジション一覧画面を閉じます。
10. 階層セキュリティの深さを既定値 3 のまま 保存して閉じる ボタンをクリックします。

以上で、ポジション階層の設定は完了です。

プロジェクトオーナーでログインして、報告書データを確認してみましょう。

1. Dynamics CRM 2015 にプロジェクトオーナーでログインします。
2. 報告書の一覧を表示します。プロジェクトマネージャー、プロジェクトメンバーの
報告書レコードが表示されていることがわかります。

image

ポイント:読み取り権限が与えられる範囲は、深さで指定できる プロジェクトオーナーの下位ポジションであるプロジェクトマネージャー、プロジェクトメンバーのレコードが表示されています。プロジェクトオーナーから見た場合、プロジェクトメンバーは深さ 2 となりポジション階層の深さが 3 の範囲内のため表示されます。

3. プロジェクトマネージャーのレコードを開きます。読み取り、更新できることを確認します。

image

ポイント:上位ポジションのユーザーは、直属の下位ポジションのユーザーのデータに対する 読み取り、書き込み権限が与えられる ログインユーザーの直属の下位ポジションのプロジェクトマネージャーのデータは読み取り、書き込みが可能です

4. プロジェクトメンバーのレコードを開きます。読み取り専用であることを確認します。

image

ポイント: 上位ポジションのユーザーは、直属以外の下位ポジションのユーザーのデータに対する読み取り権限が与えられる ポジション階層が有効の場合、ログインユーザーの直属以外の下位ポジションのプロジェクトメンバーデータは読み取りのみが可能です。

上位ポジションと下位ポジションのユーザーは上司部下の関係である必要はありません。
また、ユーザー同士は同じ部署または配下の部署である必要もなく、異なる組織同士でも有効な機能です。

まとめ

いかがだったでしょうか。ポジション階層は、独自のセキュリティ構造に基づいたアクセス権設定を
容易にします。階層セキュリティを活用することで、既存の機能では複雑な共有設定を行わないと
実現できなかった要件が簡単に設定できるようになります。

Dynamics CRM 2015 をご検討の際は、是非ご活用ください。

- プレミアフィールドエンジニアリング 河野 高也