ビューとアクションへのアクセスの制御

Version:
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

Sitecore XCは、ロールベースのアクセス制御メカニズムを使用して、Business Tools機能の特定の領域へのアクセスを制限できます。Sitecoreでは、ビジネス ユーザーにはCommerceユーザー ロール が割り当てられますが、最終的には、ロールが提供するアクセス権を決定するのはCommerce Engineの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プロパティ

ActionsRolesPolicyポリシーには、必須のTypeプロパティとRoleプロパティ、および制限が適用される粒度のレベルに基づいて、オプション プロパティEntityTypeViewActionの少なくとも1つが含まれています。

次の表に、ActionsRolesPolicyプロパティの説明を示します。

財産

形容

"Type"

Sitecore.Commerce.Plugin.Viewsプラグインで定義されている基本ActionRoleModelを参照します。

"EntityType"

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

"View"

ロールベースの制限を、指定したビュー (EntityView) または子ビューに適用します。たとえば、"View": "PriceSnapshotDetails"です。

メモ

制限がビューに適用されると、その制限は、そのすべてのコンポーネント、プロパティ、および子ビューに拡張されます。

"Action"

ロールベースの制限を指定したアクション名に適用します。たとえば、"Action": "ApproveSnapshot".

"Role"

制限付きEntityTypeView、またはActionにアクセスするために必要なロールまたはロールのリスト (パイプ区切り) を指定します。

手記

ロール名を指定するときは、設定するロール名の後に必ずプレフィックスsitecore\\ を指定する必要があります。たとえば、sitecore\\<RoleName>.複数のロールが必要な場合は、次のようにパイプ (|) 記号を使用して各ロールを区切ります。 "Role": "sitecore\\Role1"|"sitecore\\Role2"

ActionsRolesPolicyポリシー設定の例

次に、ActionsRolesPolicyポリシーのさまざまな使用例を示します。

  • 次に示すのは、エンティティ ビュー View1がロールSitecore\\Role1が割り当てられたユーザーに制限されているActionsRolesPolicyポリシーの例です。

    {
      "$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\\Role1sitecore\\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"
    }
この記事を改善するための提案がある場合は、 お知らせください!