階層セキュリティを使用してエンティティへのアクセスを制御する方法

階層セキュリティは、組織のレコードに対してよりきめの細かいアクセスを実現し、保守費用の低減を支援します。 たとえば、高度なシナリオでは、複数の部署の作成から始めて、次に階層セキュリティを追加できます。 これは、多くの部署が必要としているところの、より少ない保守費用でよりきめ細かいアクセスを達成します。 階層セキュリティ モデルは、部署、セキュリティ ロール、共有、およびチームを使用する、以前のセキュリティ モデルの拡張機能です。 これは、他のすべての既存のセキュリティ モデルとともに使用できます。

以前は、この種類のセキュリティを実装するには、開発者はカスタム プラグインを使用して、この動作を模倣することが必要でした。しかし今では、階層セキュリティ モデルにより、この種類のセキュリティは製品に組み込まれています。 つまり、カスタム プラグインを作成および更新する必要がなくなります。

階層セキュリティ モデルの詳細な説明については、Microsoft Dynamics 365 Customer Engagement (on-premises) のドキュメントのデプロイと管理のMicrosoft Dynamics 365 Customer Engagement アプリのセキュリティ概念を参照してください。

ビデオ: Microsoft Dynamics CRM 2015 の階層セキュリティ モデル

ポジション階層

管理者は、組織内のさまざまな職位を定義し、職位をポジション階層に配置できます。 次に、特定のポジションにユーザーを追加します。すなわち、ユーザーに特定のポジションを "タグ付け" します。 ユーザーには特定の階層の 1 つのポジションのみをタグ付けできますが、1 つのポジションを複数のユーザーに使用できます。 階層内の高いポジションにいるユーザーは、直接の上位パス内の低いポジションにいるユーザーのデータにアクセスできます。 直接の高いポジションは、直接の上位パス内の低いポジションのデータに対して、読み取り、書き込み、更新、追加、追加先のアクセス権を所有します。 間接の高いポジションは、直接の上位パス内の低いポジションのデータに対して、読み取り専用のアクセス権を所有します。

ポジション階層セキュリティでは、高いポジションのユーザーは、低いポジションのユーザーが所有するまたはユーザーがメンバーになっているチームが所有するレコードに対して、またユーザーまたはユーザーがメンバーになっているチームと直接共有するレコードに対してアクセスできます。 高いレベルにいるユーザーは、ポジション階層セキュリティ モデルに加えて、低いポジションのユーザーがアクセスできるレコードを表示するためには、少なくとも 1 つのエンティティに対するユーザー レベルの読み取り特権を所有する必要があります。 たとえば、高いレベルにいるユーザーにCaseエンティティに対する読み取りアクセス権がない場合、そのユーザーは低いポジションのユーザーがアクセスできるサポート案件を表示できません。

開発者は、ポジションエンティティを使用してポジション階層を実装できます。

次の表に示すとおり、ポジション階層機能に関連する 2 つの新しい特権が追加されました。

特権 内容
prvAssignPosition システム ユーザーにポジションを割り当てます。
prvWriteHierarchicalSecurityConfiguration 階層セキュリティの設定を変更します。

Position エンティティとそのメッセージの詳細については、「ポジション エンティティ」を参照してください。

関連項目

ビデオ: Microsoft Dynamics CRM 2015 の階層セキュリティ モデル
Microsoft Dynamics 365 Customer Engagement (on-premises) のセキュリティモデル
Security concepts for Microsoft Dynamics 365 Customer Engagement (on-premises) のセキュリティ概念ポジション エンティティ