Show Menu
TEMAS×

Sincronización de usuarios de comunidades

Introducción

En Comunidades AEM, desde el entorno de publicación (según los permisos configurados), los visitantes del sitio pueden convertirse en miembros , crear grupos de usuarios y editar el perfil de sus miembros.
Los datos de usuario son términos utilizados para referirse a usuarios , perfiles de usuarios y grupos de usuarios.
Miembros es un término que se utiliza para referirse a los usuarios registrados en el entorno de publicación, a diferencia de los usuarios registrados en el entorno de autor.
Para obtener más información sobre los datos de usuario, visite Administración de usuarios y grupos de usuarios.

Sincronización de usuarios en un conjunto de servidores de publicación

Por diseño, los datos de usuario creados en el entorno de publicación no aparecen en el entorno de creación.
La mayoría de los datos de usuario creados en el entorno del autor están pensados para permanecer en el entorno del autor y no se sincronizan ni replican para publicar instancias.
Cuando la topología es un conjunto de servidores de publicación, el registro y las modificaciones realizadas en una instancia de publicación deben sincronizarse con otras instancias de publicación. Los miembros deben poder iniciar sesión y ver sus datos en cualquier nodo de publicación.
Cuando la sincronización de usuarios está habilitada, los datos de usuario se sincronizan automáticamente en todas las instancias de publicación del conjunto de servidores.

Instrucciones de configuración de sincronización de usuarios

Para obtener instrucciones detalladas paso a paso sobre cómo habilitar la sincronización en un conjunto de servidores de publicación, consulte:

Sincronización del usuario en segundo plano

  • paquete vlt
    Es un archivo zip de todos los cambios realizados en un editor, que deben distribuirse entre los editores. Los cambios realizados en un editor generan eventos que el detector de eventos de cambios selecciona. Esto crea un paquete vlt que contiene todos los cambios.
  • paquete de distribución
    Contiene información de distribución para Sling. Es información sobre dónde debe distribuirse el contenido y cuándo se distribuyó por última vez.

Qué sucede cuando...

Publicar sitio desde la consola Sitios de comunidades

En el autor, cuando se publica un sitio de comunidad desde la consola Sitios de comunidades, el efecto es replicar las páginas asociadas y Sling distribuir los grupos de usuarios de la comunidad creados dinámicamente, incluida su pertenencia.

El usuario se crea o edita el Perfil al publicar

Por diseño, los usuarios y perfiles creados en el entorno de publicación (por ejemplo, mediante registro propio, inicio de sesión social o autenticación LDAP) no aparecen en el entorno de creación.
Cuando la topología es un conjunto de servidores de publicación y la sincronización de usuarios se ha configurado correctamente, el perfil de usuario y usuario se sincroniza en el conjunto de servidores de publicación mediante la distribución Sling.

Se crea un nuevo grupo de comunidad en la publicación

Aunque se inicia desde una instancia de publicación, la creación de grupos de comunidad, que da como resultado nuevas páginas de sitio y un nuevo grupo de usuarios, se produce realmente en la instancia de autor.
Como parte del proceso, las nuevas páginas del sitio se replican en todas las instancias de publicación. El grupo de usuarios de la comunidad creado dinámicamente y su pertenencia son Sling distribuidos en todas las instancias de publicación.

Los usuarios o grupos de usuarios se crean con la consola de seguridad

Por diseño, los datos de usuario creados en el entorno de publicación no aparecen en el entorno de creación y viceversa.
Cuando se utiliza la consola Administración de usuarios y seguridad para agregar usuarios nuevos en el entorno de publicación, la sincronización de usuarios sincronizará los usuarios nuevos y su pertenencia a grupos con otras instancias de publicación, si es necesario. La sincronización de usuarios también sincronizará los grupos de usuarios creados mediante la consola de seguridad.

El usuario publica contenido al publicar

Para el contenido generado por el usuario (UGC), se accede a los datos introducidos en una instancia de publicación a través del SRP Configuración de almacenamiento configurado.

Best practices

De forma predeterminada, la sincronización de usuarios está deshabilitada . Habilitar la sincronización de usuarios implica modificar las configuraciones de OSGi existentes . No se deben agregar nuevas configuraciones como resultado de habilitar la sincronización de usuarios.
La sincronización de usuarios depende del entorno de creación para administrar las distribuciones de datos de usuario, aunque los datos de usuario no se hayan creado en el autor.
Requisitos previos
  1. Si ya se han creado usuarios y grupos de usuarios en un editor, se recomienda sincronizar Sincronización manual de usuarios y grupos de usuarios manualmente los datos de usuario con todos los editores antes de configurar y habilitar la sincronización de usuarios.
    Una vez habilitada la sincronización de usuarios, solo se sincronizan los usuarios y grupos recién creados.
  2. Asegúrese de que se ha instalado el código más reciente:
Las siguientes configuraciones son necesarias para habilitar la sincronización de usuarios en comunidades AEM. Asegúrese de que estas configuraciones sean correctas para evitar que la distribución de contenido de sling falle.

Agente de distribución Apache Sling: fábrica de agentes de sincronización

Esta configuración recoge el contenido que se va a sincronizar en los editores. La configuración está en la instancia de Autor. El autor debe realizar un seguimiento de todos los editores que están allí y dónde sincronizar toda la información.
Los valores predeterminados de la configuración son para una sola instancia de publicación. Dado que la sincronización de usuarios resulta útil para sincronizar varias instancias de publicación, como en un conjunto de publicaciones, es necesario agregar más instancias de publicación a la configuración.
¿Cómo se sincroniza el contenido?
La instancia de autor indica el punto final del exportador de los editores. Cada vez que se crea o actualiza un usuario en editores específicos (n), el autor obtiene el contenido de los extremos de sus exportadores y lo sync.translate.html#main-pars-image-1413756164 envía a otros editores (n-1, que es distinto de los editores de los que se obtiene el contenido).
Para configurar los agentes de sincronización de Apache Sling:
  1. Inicie sesión con privilegios de administrador en su instancia de autor de AEM.
  2. Acceda a la consola web . Por ejemplo, https://localhost:4502/system/console/configMgr .
  3. Localice Apache Sling Distribution Agent - Sync Agent Factory .
    • Seleccione la configuración existente para abrirla y editarla (icono de lápiz).
      Verificar nombre: socialpubsync.
    • Seleccione la casilla de verificación Habilitado .
    • Seleccione Usar varias colas.
    • Especifique los extremos de exportador y los extremos de importador (puede agregar más extremos de exportador e importador).
      Estos extremos definen de dónde desea obtener el contenido y desde dónde desea insertar el contenido. El autor obtiene el contenido del extremo del exportador especificado y lo envía a los editores (excepto al editor del que obtuvo el contenido).

Distribución de Adobe Granite: proveedor secreto de transporte de contraseña cifrada

Permite al autor identificar al usuario autorizado, ya que tiene permiso para sincronizar datos de usuario del autor para realizar la publicación.
El usuario autorizado creado en todas las instancias de publicación ayuda a los editores a conectarse con el autor y a configurar la distribución de Sling en el autor. Este usuario autorizado tiene todas las ACL necesarias.
Siempre que se vayan a instalar o recuperar datos de los editores, el autor se conecta con los editores mediante las credenciales (nombre de usuario y contraseña) establecidas en esta configuración.
Para conectar el autor con editores mediante un usuario autorizado:
  1. Inicie sesión con privilegios de administrador en su instancia de autor de AEM.
  2. Acceda a la consola web .
  3. Localice Adobe Granite Distribution - Proveedor secreto de transporte de contraseña cifrada.
  4. Seleccione la configuración existente para abrirla y editarla (icono de lápiz).
    Verificar propiedad socialpubsync - publishUser.
  5. Establezca el nombre de usuario y la contraseña para el usuario sync.translate.html#createauthorizeduser autorizado.
    Por ejemplo, usersync - admin

Agente de distribución Apache Sling: fábrica de agentes de cola

Esta configuración se utiliza para configurar los datos que desea sincronizar entre los editores. Cuando se crean o actualizan datos en rutas especificadas en Allowed Roots , se activa "var/community/distribution/diff" y el replicador creado obtiene los datos de un publicador y los instala en otros editores.
Para configurar los datos (rutas de nodos) para sincronizar:
  1. Inicie sesión con privilegios de administrador en su instancia de autor.
  2. Acceda a la consola web .
  3. Localice Apache Sling Distribution Agent - Queue Agent Factory .
  4. Seleccione la configuración existente para abrirla y editarla (icono de lápiz).
    Verificar nombre: socialpubsync -inverso
  5. Seleccione la casilla de verificación Habilitado y guarde.
  6. Especifique las rutas de nodo que se replicarán en las raíces permitidas .
  7. Repita el procedimiento para cada instancia de publicación .

Distribución de Adobe Granite: Fábrica de observación de diferencias

Esta configuración sincroniza la pertenencia a grupos entre editores. Si al cambiar la pertenencia a un grupo en un publicador no se actualiza su pertenencia a otros editores, asegúrese de que ref:integrantes se agrega a los nombres de propiedades vistos.
Para garantizar la sincronización de miembros:
  1. Inicie sesión con privilegios de administrador en su instancia de autor de AEM.
  2. Acceda a la consola web .
  3. Localice Adobe Granite Distribution - Diff Observer Factory .
  4. Seleccione la configuración existente para abrirla y editarla (icono de lápiz).
    Verificar nombre del agente: socialpubsync -inverso .
  5. Seleccione la casilla de verificación Habilitado .
  6. Especifique rep:miembros como descripción para propertyName en nombres de propiedades vistos y Guardar.

Activador de distribución de Apache Sling: fábrica de activadores programados

Esta configuración le permite configurar el intervalo de sondeo (después de lo cual el autor hace ping a los editores y extrae los cambios) para sincronizar los cambios entre los editores.
El autor sondea a los editores cada 30 segundos (valor predeterminado). Si hay algún paquete presente en la carpeta /var/sling/distribution/packages/ socialpubsync - vlt /shared , entonces recogerá esos paquetes e instalarlos en otros editores.
Para modificar el intervalo de sondeo:
  1. Inicie sesión con privilegios de administrador en su instancia de autor de AEM.
  2. Acceda a la consola web , por ejemplo, https://localhost:4502/system/console/configMgr
  3. Localizar el activador de distribución Sling de Apache - Fábrica de activadores programados
    • Seleccione la configuración existente para abrirla y editarla (icono de lápiz).
      Verificar socialpubsync -schedule-desencadenador
    • Establezca el intervalo en segundos en el intervalo deseado y guárdelo.

Escucha de sincronización de usuarios de AEM Communities

En caso de problemas en la distribución de Sling en los que haya una discrepancia en las suscripciones y que se muestre a continuación, compruebe si están definidas las siguientes propiedades en las configuraciones de escucha de sincronización de usuarios de Comunidades de AEM :
  • NodeTypes
  • IgnorableProperties
  • Nodos ignorables
  • DistributedFolders
Para sincronizar suscripciones, seguimientos y notificaciones
En cada instancia de publicación de AEM:
  1. Inicie sesión con privilegios de administrador.
  2. Acceda a la consola web . Por ejemplo, https://localhost:4503/system/console/configMgr .
  3. Localice el oyente de sincronización de usuarios de AEM Communities .
  4. Seleccione la configuración existente para abrirla y editarla (icono de lápiz)
    Verificar nombre: socialpubsync -schedule-desencadenador
  5. Establezca los siguientes NodeTypes :
    rep:User
    nt:unstructured
    nt:resource
    rep:ACL
    sling:Folder
    sling:OrderedFolder
    Los tipos de nodo especificados en esta propiedad se sincronizarán y la información de notificaciones (blogs y configuraciones seguidos) se sincronizarán entre diferentes editores.
  6. Añada todas las carpetas para sincronizar en DistributedFolders . Por ejemplo,
    segments/scoring
    social/relationships
    activities
  7. Establecer los ignorantes como:
    .tokens
    system
    rep:cache (puesto que utilizamos sesiones adhesivas, no es necesario sincronizar este nodo con diferentes editores).

ID de Sling único

La instancia de creación de AEM utiliza el ID de Sling para identificar de dónde provienen los datos y a qué editores debe (o no necesita) devolver el paquete.
Asegúrese de que todos los editores de un conjunto de servidores de publicación tengan un ID de Sling único. Si el ID de Sling es el mismo para varias instancias de publicación en un conjunto de servidores de publicación, se producirá un error en la sincronización del usuario. Como el autor no sabrá de dónde recuperar el paquete y desde dónde instalarlo.
Para garantizar un ID de Sling único de los editores en el conjunto de publicaciones, en cada instancia de publicación:
  1. Vaya a https:// .
  2. Compruebe el valor de Sling ID .
    Si el ID de Sling de una instancia de publicación coincide con el ID de Sling de cualquier otra instancia de publicación, entonces:
  3. Detenga una de las instancias de publicación que tenga un ID de Sling coincidente.
  4. En el crx-quickstart/launchpad/felix directorio, busque y elimine el archivo denominado sling.id.file.
    Por ejemplo, en un sistema Linux:
    rm -i $(find . -type f -name sling.id.file)
    Por ejemplo, en un sistema Windows:
    Utilice el explorador de Windows y busque sling.id.file
  5. Inicio de la instancia de publicación. Al iniciar se le asignará un nuevo ID de Sling.
  6. Valide que el ID de Sling sea ahora único.
Repita estos pasos hasta que todas las instancias de publicación tengan un ID de Sling único.

Fábrica del generador de paquetes de almacén

Para que las actualizaciones se sincronizen correctamente, es necesario modificar el creador de paquetes de bóveda para la sincronización del usuario. En /home/users , se crea un */rep:cache nodo. Es una memoria caché que se utiliza para encontrar que si consulta en el nombre principal de un nodo, esta memoria caché se puede utilizar directamente.
La sincronización de usuarios se puede detener si se sincronizan rep :cache nodos entre editores.
Para asegurarse de que las actualizaciones se sincronizan correctamente entre editores, en cada instancia de publicación de AEM:
  1. Acceso a la consola web
  2. Localice el paquete de distribución Sling de Apache - Fábrica del generador de paquetes Vault
    Nombre del generador: socialpubsync-vlt.
  3. Seleccione el icono de edición.
  4. Añadir dos Filtros de nodo de paquete:
    • /home/users|-.*/.tokens
    • /home/users|-.*/rep:cache
  5. Gestión de políticas
    • Para sobrescribir los nodos rep:policy existentes con otros nuevos, agregue un tercer filtro de paquete: /home/users|+.*/rep:policy
    • Para evitar que las políticas se distribuyan, establezca: Acl Handling: IGNORE

Solución de problemas de distribución de Sling en comunidades AEM

Si la distribución de Sling falla, pruebe los siguientes pasos de depuración:
  1. Compruebe la existencia de configuraciones agregadas incorrectamente
    Asegúrese de que no se agreguen ni editen varias configuraciones; en su lugar, se deben editar las configuraciones predeterminadas existentes.
  2. Comprobar configuraciones
    Asegúrese de que todas las configuraciones estén correctamente configuradas en la instancia de AEM Author, como se indica en las optimizaciones .
  3. Comprobar permisos de usuario autorizados
    Si los paquetes no están instalados correctamente, compruebe que el usuario 2. Crear usuario autorizado autorizado creado en la primera instancia de Publish tenga las ACL correctas.
    Para validar esto, en lugar de crear un usuario autorizado, cambie la configuración del proveedor secreto de transporte de Adobe Granite Distribution - Encrypted Password Transport Secret en la instancia de autor para utilizar las credenciales de usuario administrador. Ahora intente instalar los paquetes de nuevo. Si la sincronización de usuario funciona correctamente con las credenciales de administrador, significa que el usuario de publicación creado no tenía las ACL adecuadas.
  4. Comprobar la configuración de la fábrica de observación de diferencias
    Si solo los nodos específicos no se sincronizan en la granja de publicaciones (por ejemplo, los miembros del grupo no se sincronizan), asegúrese de que la configuración de Adobe Granite Distribution - Diff Observer Factory esté habilitada y rep: los miembros se configuran en nombres de propiedades miradas.
  5. Compruebe la configuración del escucha de sincronización de usuarios de AEM Communities. Si los usuarios creados están sincronizados pero las suscripciones y los siguientes no funcionan, asegúrese de que la configuración del agente de escucha de sincronización de usuarios de las comunidades AEM tenga:
    • Tipos de nodo: se establece en rep:User, nt:unestructure , nt:resource , rep:ACL , sling:Folder y sling:OrderedFolder .
    • Nodos ignorables establecidos en .tokens , sistema y rep:cache .
    • Carpetas distribuidas: configure las carpetas que desee distribuir.
  6. Comprobar registros generados al crear usuarios en la instancia de Publish
    Si las configuraciones anteriores están correctamente configuradas pero la sincronización de usuarios no funciona, compruebe los registros generados al crear el usuario.
    Compruebe si el orden de los registros es el mismo, como se indica a continuación:
    15.05.2016 18:33:01.523 *INFO* [sling-oak-observation-7422] com.adobe.cq.social.sync.impl.PublisherSyncServiceImpl Handing these paths to the distribution subsystem: [/home/users/C, /home/users/C/Cw-5avWqilmqsNn5hCvK]
    15.05.2016 18:33:01.523 *INFO* [sling-oak-observation-7422] org.apache.sling.distribution.agent.impl.SimpleDistributionAgent [agent][socialpubsync-reverse] REQUEST-START DSTRQ2: ADD paths=[/home/users/C, /home/users/C/Cw-5avWqilmqsNn5hCvK], user=communities-user-admin
    15.05.2016 18:33:01.523 *INFO* [sling-oak-observation-7431] com.adobe.cq.social.sync.impl.PublisherSyncServiceImpl Handing these paths to the distribution subsystem: [/home/users/C/Cw-5avWqilmqsNn5hCvK, /home/users/C/Cw-5avWqilmqsNn5hCvK/profile, /home/users/C/Cw-5avWqilmqsNn5hCvK/rep:policy]
    15.05.2016 18:33:01.523 *INFO* [sling-oak-observation-7431] org.apache.sling.distribution.agent.impl.SimpleDistributionAgent [agent][socialpubsync-reverse] REQUEST-START DSTRQ3: ADD paths=[/home/users/C/Cw-5avWqilmqsNn5hCvK, /home/users/C/Cw-5avWqilmqsNn5hCvK/profile, /home/users/C/Cw-5avWqilmqsNn5hCvK/rep:policy], user=communities-user-admin
    15.05.2016 18:33:01.757 *INFO* [sling-oak-observation-7431] org.apache.jackrabbit.vault.packaging.impl.JcrPackageDefinitionImpl unwrapping package sling/distribution:socialpubsync-vlt_1463337181554_ebb27ad9-a861-4405-9342-d64c916654e2:0.0.1
    15.05.2016 18:33:01.820 *INFO* [sling-oak-observation-7422] org.apache.jackrabbit.vault.packaging.impl.JcrPackageDefinitionImpl unwrapping package sling/distribution:socialpubsync-vlt_1463337181554_58811273-5861-48fe-95d2-4aff367b99c3:0.0.1
    15.05.2016 18:33:02.023 *INFO* [sling-oak-observation-7430] com.adobe.cq.social.sync.impl.PublisherSyncServiceImpl Handing these paths to the distribution subsystem: [/home/users/C/Cw-5avWqilmqsNn5hCvK/profile]
    15.05.2016 18:33:02.023 *INFO* [sling-oak-observation-7430] org.apache.sling.distribution.agent.impl.SimpleDistributionAgent [agent][socialpubsync-reverse] REQUEST-START DSTRQ4: ADD paths=[/home/users/C/Cw-5avWqilmqsNn5hCvK/profile], user=communities-user-admin
    15.05.2016 18:33:02.273 *INFO* [sling-oak-observation-7430] org.apache.jackrabbit.vault.packaging.impl.JcrPackageDefinitionImpl unwrapping package sling/distribution:socialpubsync-vlt_1463337182039_f34f4fa6-10b9-42eb-8740-4da9d4d38f99:0.0.1
    
    
Para depurar:
  1. Deshabilitar la sincronización de usuarios:
  2. En la instancia de creación de AEM, inicie sesión con privilegios de administrador.
    1. Acceda a la consola web . Por ejemplo, https://localhost:4502/system/console/configMgr .
    2. Localice la configuración Apache Sling Distribution Agent - Sync Agent Factory .
    3. Anule la selección de la casilla de verificación Habilitado .
      Al desactivar la sincronización de usuarios en la instancia de autor, los extremos (exportador e importador) se desactivan y la instancia de autor es estática. El autor no pega ni captura los paquetes vlt .
      Ahora, si se crea un usuario en una instancia de publicación, el paquete vlt se crea en el nodo /var/sling/distribution/packages/ socialpubsync - vlt /data . Y si el autor envía estos paquetes a otro servicio. Puede descargar y extraer estos datos para comprobar qué propiedades se insertan en otros servicios.
  3. Vaya a un editor y cree un usuario en el editor. Como resultado, se crean eventos.
  4. Compruebe el orden de los registros , creados al crearlos.
  5. Compruebe si se ha creado un paquete vlt en /var/sling/distribution/packages/socialpubsync-vlt/data .
  6. Ahora, habilite la sincronización de usuarios en la instancia de creación de AEM.
  7. En el editor, cambie los extremos del exportador o del importador en Apache Sling Distribution Agent - Sync Agent Factory . Podemos descargar y extraer datos del paquete para comprobar qué propiedades se insertan en otros editores y qué datos se pierden.