---
title: "ビューやアクションへのアクセス制御"
slug: "controlling-access-to-views-and-actions"
abstract: "Business Toolsのビューやアクションにアクセスするために必要な役割を指定するActionsRolesPolicyポリシーの概要。"
---
# ビューやアクションへのアクセス制御

Sitecore XCは、特定の機能領域へのアクセスを制限できる役割ベースのアクセス制御機構を用Business Tools。ビジネスユーザーには[SitecoreでCommerceユーザーロール](https://doc.sitecore.com/xp/ja/developers/101/sitecore-experience-commerce/user-roles-and-permissions.html "User roles and permissions") が割り当てられますが、最終的にはCommerce Engine内のCommerce内のActionsRolesPolicyポリシーが、どのアクセスを提供するかを決定します。 ActionsRolesPolicyポリシーは、特定のエンティティタイプ、エンティティビュー、またはアクションへのアクセスを提供する役割を指定します。

wwwroot\\<CommerceAuthoring\_Sc>\\wwwroot\\data\\Environments\\Plugin.AccessByRoles.PolicySet-1.\*.\*.jsonファイルは、各Business Toolsビューに対するActionsRolesPolicyポリシーのインスタンスを定義し、特定のアクションに適用されるデフォルトの制限も設定します。ファイルを更新して既存のポリシーを変更したり、必要に応じて新しいポリシーを追加したりして、カスタムエンティティビューやアクションへのアクセスを制限することができます。

以下はPlugin.AccessByRoles.PolicySet.1.\*.\*.jsonファイルに含まれるデフォルトのActionsRolesPolicyポリシーの例を示します。

{
 "Type": "Sitecore.Commerce.EntityViews.ActionRoleModel, Sitecore.Commerce.Plugin.Views",
 "EntityType": "Sitecore.Commerce.Plugin.Orders.Order",
 "Role": "sitecore\\\\Customer Service Representative"

}
 "$type": "Sitecore.Commerce.EntityViews.ActionRoleModel, Sitecore.Commerce.Plugin.Views",
 "View": "PriceSnapshotDetails",
 "Action": "RequestSnapshotApproval",
 "Role": "sitecore\\\\Pricer"
}
{
 "$type": "Sitecore.Commerce.EntityViews.ActionRoleModel, Sitecore.Commerce.Plugin.Views",
 "View": "",
 "Action": "RemoveView",
 "Role": "sitecore\\\\Commerce Administrator"
},

## アクションロールポリシープロパティ

各ActionsRolesPolicyポリシーには、必須のTypeおよびRoleプロパティ、および制限が適用される細分度に応じて、EntityType、View、Actionの少なくとも一つのオプションプロパティが含まれています。

以下の表はActionsRolesPolicy特性の説明を示しています。

財産

概要

"Type"

これは、Sitecore.Commerce.Plugin.Viewsプラグインで定義された基本ActionRoleModelを指します。

"EntityType"

指定されたエンティティタイプレベルでの役割ベースの制限を適用し、Business Tools機能の機能領域へのアクセスを制限します。例えば: "EntityType": "Sitecore.Commerce.Plugin.Orders.Order"

"View"

指定されたビュー(EntityView)または子ビューに役割ベースの制限を適用します。例えば、「ビュー」: "PriceSnapshotDetails"。  
  
\> \[!注\]  
\> 制限がビューに適用される場合、それはそのすべてのコンポーネント、プロパティ、子ビューに及びます。

"Action"

指定されたアクション名に役割ベースの制限を適用します。例えば、 "Action": "ApproveSnapshot"。

"Role"

制限された EntityType、 View、または Actionにアクセスするために必要な役割または(パイプ分離)ロールのリストを指定します。  
  
\> \[!注\]  
\> 役割名を指定する際は、設定のために役割名の後に必ずプレフィックス sitecore\\\\ を指定します。例えば sitecore\\\\<RoleName>。複数の役割が必要な場合は、パイプ(|)記号で各役割を次のように区切ります。 "Role": "sitecore\\\\Role1"|"sitecore\\\\Role2"

## ActionsRolesPolicyのポリシー構成の例

以下はActionsRolesPolicyポリシーのさまざまな用例です。

-   以下は、エンティティビューView1が割り当てられた役割を持つユーザーに限定されたActionsRolesPolicyポリシーの例Sitecore\\\\Role1示しています。
    
    {
     "$type": "Sitecore.Commerce.EntityViews.ActionRoleModel,Sitecore.Commerce.Plugin.Views",
      "View": "View1",
      "Action": "",
      "Role": "sitecore\\\\Role1"
    }
    
-   以下の例では、プロモーションエンティティビュー View2ロールが割り当てられたSitecore\\\\Role1およびsitecore\\\\role2に限定されています。
    
    {
     "$type": "Sitecore.Commerce.EntityViews.ActionRoleModel,Sitecore.Commerce.Plugin.Views",
      "View": "View2",
      "Action": "",
     "EntityType": "Sitecore.Commerce.Plugin.Promotions.Promotion",
      "Role": "sitecore\\\\Role1"|"sitecore\\\\Role2"
    }
    
-   以下の例では、エンティティビューView1でaction1アクションは、Sitecore\\\\Role1および割り当てられたsitecore\\\\role2の役割を持つユーザーに限定されています。
    
    {
     "$type": "Sitecore.Commerce.EntityViews.ActionRoleModel,Sitecore.Commerce.Plugin.Views",
      "View": "View1",
      "Action": "Action1",
      "Role": "sitecore\\\\Role1|sitecore\\\\Role2"
    }
    
-   以下の例では、エンティティビューでaction3アクションは割り当てられた役割を持つユーザーに限定Sitecore\\\\Role1 。
    
    {
     "$type": "Sitecore.Commerce.EntityViews.ActionRoleModel,Sitecore.Commerce.Plugin.Views",
      "View": "",
      "Action": "Action3",
      "Role": "sitecore\\\\Role1"
    }