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 su perfil de miembro.
Datos de usuario es un término utilizado para referirse a usuarios , perfiles de usuario 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 creación.
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 de creación están pensados para permanecer en el entorno de creación 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 elige el detector de eventos change. 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

En la instancia de creación de AEM:
  1. Inicie sesión con privilegios de administrador.
  2. Acceda a la consola web .
  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 desde el 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 a un autor con editores mediante un usuario autorizado

En la instancia de creación de AEM:
  1. Inicie sesión con privilegios de administrador.
  2. Acceda a la consola web .
  3. Localice Adobe Granite Distribution: Proveedor de clave cifrada de transporte secreto.
  4. Seleccione la configuración existente para abrirla y editarla (icono de lápiz).
    Verificar propiedad name: socialpubsync \- publishUser .
  5. Establezca el nombre de usuario y la contraseña para el usuario sync.translate.html#createauthorizeduserautorizado.
    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

En la instancia de publicación de AEM:
  1. Inicie sesión con privilegios de administrador.
  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 proceso para cada publish instancia.

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

En cada instancia de publicación de AEM:
  1. Inicie sesión con privilegios de administrador.
  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 :members ​como description para propertyName en los nombres de propiedades ​miradas y Save.

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 y los instalará en otros editores.

Para modificar el intervalo de sondeo

En la instancia de creación de AEM:
  1. Inicie sesión con privilegios de administrador.
  2. Acceda a la consola web , por ejemplo, http://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 Name: \-schedule- socialpubsync
    • Establezca el intervalo en segundos en el intervalo deseado y guárdelo.

Escucha de sincronización de usuarios de AEM Communities

Para problemas en la distribución de Sling en los que hay discrepancia en las suscripciones y que se muestran a continuación, compruebe si se han establecido 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, http://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. Configure lo siguiente NodeTypes :
    rep:Usuario
    nt :sin estructurar
    nt :medio
    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. Agregue todas las carpetas para sincronizar en DistributedFolders . Por ejemplo,
    segmentos/puntuación
    social/relaciones
    actividades
  7. Configure el ignorablenodes en:
    .tokens
    sistema
    rep :cache (ya que usamos 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 servidores de publicación

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:
    use windows explorer and search for _sling.id.file_
  5. Inicie 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 caché que se utiliza para encontrar que si consultamos el nombre principal de un nodo, esta 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. Localice el Apache Sling Distribution Packaging - Vault Package Builder Factory Builder name : socialpubsync-vlt.
  2. Seleccione el icono de edición.
  3. Agregar dos filtros de paquete:
    • /home/users|-.*/.tokens
    • /home/users|**+**.*/rep:cache
  4. Gestión de políticas
    • Para sobrescribir :policy los nodos existentes de rep con otros nuevos, agregue un tercer filtro de paquete:
      /home/users|**+**.*/rep:policy
    • Para evitar que las directivas se distribuyan, establezca
      Administración de llamada: 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 si hay 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. Compruebe las 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. Compruebe los 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. Compruebe la configuración de la fábrica de observación de Diff. 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:integrantes se definan en los 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 están funcionando, asegúrese de que la configuración del agente de escucha de sincronización de usuarios de AEM Communities tenga:
    • Tipos de nodos: definidos 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. Compruebe los registros generados al crear el usuario en la instancia de publicación. 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, http://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.