「mysites」という名前の sling:OrderedFolder フォルダーを作成します。
順序付けされた JCR 親ノードにはユーザー(またはグループ)へのアクセスを許可し、子ノードへのアクセスを許可しない場合、ユーザーがそのアクセス権を持つユーザーにログインすると、そのノードの下にある子ノードは保存されません。
問題を示す例を以下に示します:
「mysites」という名前の sling:OrderedFolder フォルダーを作成します。
上記のフォルダーに「1」、「2」、...、「7」という 7 ページを作成します。
2 つの新しいグループ testGroup と testGlobalGroup を作成します。
「testUser」のアカウントを作成し、手順 3 の 2 つのグループのメンバーとして追加します。
testGlobalGroup に次の権限を追加します。
"read" for "/" "read" for "/content/mysites" with glob for "jcr:primaryType" "read" for "/content/mysites" with glob for ""
testGroup に次の権限を追加します:
deny read access for the page "two", "four" and "six"
「testUser」としてログインし、「mysites」フォルダー内のページの順序を確認します。
これは、rep:glob ACLs が隠れたプロパティに適用される、という Oak JCR リポジトリのバグが原因です - https://issues.apache.org/jira/browse/OAK-5354。
これは、AEM 6.3 および以降のバージョンで修正されています。
ただし、このバグを回避するには、次の操作を行います:
http://host:port/crx/de/index.jsp にアクセスするには、管理者としてログインしてください。
親ノードを参照します。
右下のパネルの「アクセス制御」タブをクリックします。
Allow, jcr:read, rep:glob=/:childOrder. にある緑色のプラスアイコンをクリックし、次のアクセス制御のエントリを作成します。
以下に、ACL がこの後どのように表示されるかについてのスクリーンショットを示します:
アカウントにログイン