Problema

Cuando se concede acceso a un usuario (o grupo) a un nodo principal JCR ordenado, pero no a los nodos secundarios, cuando el usuario inicia sesión con quién tiene ese acceso, el nodo secundario ordenado bajo ese nodo no se conserva.
He aquí un ejemplo que demuestra el problema:

  1. Cree una carpeta sling:OrderedFolder llamada "mysites".

  2. Cree siete páginas en la carpeta de arriba llamadas "uno", "dos", ... "siete".

  3. Cree dos nuevos grupos -- testGroup y testGlobalGroup.

  4. Cree una cuenta testUser y añádala como miembro de los dos grupos del paso 3.

  5. Añada los siguientes permisos para testGlobalGroup.

     "read" for "/"
              "read" for "/content/mysites" with glob for "jcr:primaryType"
              "read" for "/content/mysites" with glob for "" 
  6. Añada los siguientes permisos para el testGroup:

    deny read access for the page "two", "four" and "six" 
  7. Inicie sesión como "testUser" y verifique el orden de las páginas dentro de la carpeta "mysites".

Causa

Esto se debe a un error en el repositorio JCR de Oak donde las ACL rep:glob se aplican a propiedades ocultas - https://issues.apache.org/jira/browse/OAK-5354.

Resolución

Esto está solucionado en AEM 6.3 y versiones posteriores. 

Sin embargo, puede solucionar este problema en versiones anteriores haciendo lo siguiente:

  1. Vaya a http://host:port/crx/de/index.jsp e inicie sesión como administrador.

  2. Vaya al nodo principal.

  3. Haga clic en la pestaña "Control de acceso" en el panel inferior derecho.

  4. Cree la siguiente Entrada de control de acceso haciendo clic en el icono verde más en 
    Permitir, jcr:read, rep:glob=/:childOrder.

A continuación se muestra una captura de pantalla de cómo podría ser su ACL después de esto:

access_control

Esta obra está autorizada con arreglo a la licencia de Reconocimiento-NoComercial-CompartirIgual 3.0 Unported de Creative Commons.  Los términos de Creative Commons no cubren las publicaciones en Twitter™ y Facebook.

Avisos legales   |   Política de privacidad en línea