問題
- 以下のユースケースを考えてみよう。
- 管理者としてログインし、 通常ロールのrole1を作成し、添付のスクリーンショットDynamic-Data-Lists-01.pngに表示されているDDL権限を追加します。
- ユーザーAを作成する。
- ユーザーグループUG1を作成し、そこにAを追加する。
- role1ロールにユーザーグループUG1を割り当てます。 (このユーザーグループの全員が、ステップ1で設定した権限を持つことになります)
- デフォルトサイトのContent&Data/Dydnamic Data Listsにアクセスし、2つの新しいリストを作成する:list1とlist2(それぞれのリストには組み込みのContacts定義を使用)。
-
チェックポイント:これらのリストのパーミッションを開き、role1の行のチェックがすべて外れていることを確認する。つまり、このロールにはパーミッションのチェックが入っていない。
6. リスト1のパーミッションはそのままにして、リスト2のパーミッションを開き(右側のアクション/パーミッション)、ロール1のためにレコードの追加と表示にチェックを入れてください:「このグループには作成されたリストを見る権限があり、そこにコンテンツを追加することができます。) 言い換えれば、role1にリスト2のエントリーを閲覧する権限と、リスト2にエントリーを追加する権限を与える。
7. Aでログインし、左側の「Content」&Data/Dynamic Data Listsを表示。
結果:list1とlist2の両方が表示されている
予想:list2だけが表示されているはず。 まるでlist1というリストが存在することさえ知らないかのように。
環境
- 2023.Q3
解像度
-
これは意図された行動である。 これは、そのロールの最上位にある2つのパーミッションが有効になっているために起こります:一般権限 -- サイトおよびアセット・ライブラリ管理、ビューの>。
これは基本的に、Content&Data/Dynamic Data Lists ポートレットが表示するものすべてを見ることができることを意味します。
。もう1つのViewパーミッション、リストレベルのパーミッションは別のもので、そのロールがリストのエントリーを閲覧できるかどうかを示します。 そして、これは期待通りに機能する。 はい、ユーザはポートレットにリストされたlist1を見ることができます(上記の一般的なパーミッションのため)が、その中に入ることも、そのエントリを見ることも、それについて何かをすることもできません(そのロールのリストに対する個々のパーミッションがすべてチェックされているため)。
- 回避策として - そのロールを持つユーザが、 1つの リストしか見る必要がない場合- おそらく、動的データリスト表示ウィジェットを使うことができます。このウィジェットは、 1つのリストのみを表示するように設定することができます(設定する必要があります)。 したがって、サイト(おそらくリストがあるサイト)にページを作成し、そこにダイナミック・データ・リスト表示ウィジェットを配置し、role1のメンバーにとって重要な特定の1つのリストを表示するようにウィジェットを設定することができます。 そして、これらのユーザは、このリストについて何かをしたいときに、このページに行くことができ、ウィジェットのこのリストだけが表示され、他のリストは表示されません(ウィジェットは一度に一つのリストしか表示できないからです)。