Configuraciones de alta disponibilidad e inicio de sesión único
ThingWorx soporta el inicio de sesión único en configuraciones de alta disponibilidad. Sin embargo, hay algunas complejidades de configuración adicional que se deben tener en cuenta.
◦ PingFederate se debe configurar por separado para cada servidor de alta disponibilidad (HA) de ThingWorx. Independientemente de si cada servidor está en el mismo ordenador físico, pero utiliza diferentes puertos, o en ordenadores diferentes con el mismo puerto, todos los ordenadores requieren una configuración en cada uno de los clientes de OAuth de PingFederate que se utilicen. Además, se requiere una conexión de proveedor de servicio PingFederate por servidor.
◦ Si existe más de un servidor de ThingWorx en el mismo ordenador, pero cada uno tiene un puerto configurado distinto, es necesario utilizar la variable de entorno THINGWORX_SSO_SETTINGS para definir un directorio ssoSecurityConfig específico para cada servidor. Cada directorio necesita su propio fichero sso-settings.json, en el que se incluye el objeto clientBaseURL, y metadataEntityBaseUrl en el que se incluye el nombre de dominio completo con el puerto de ese servidor.
◦ A cualquier URL que se utilice para acceder al contenido de ThingWorx se debe acceder mediante un VIP o proxy como HAProxy. Si se produce la conmutación por error de HA, las aplicaciones acceden al contenido mediante el ordenador del servidor proxy en un puerto específico. El proxy es responsable de redirigir a otros ordenadores o puertos de la arquitectura de HA en función del ordenador que esté disponible.
Los parámetros de la sección AccessTokenPersistenceSettings del fichero sso-settings.json se deben configurar para utilizar el servidor o la configuración de PostgreSQL que se utiliza para el entorno de HA con las instalaciones de ThingWorx señalando al mismo servidor PostgreSQL. Por lo tanto, en la conmutación por error, los tokens de acceso (aprobación de concesiones) pueden transferirse desde una instancia de ThingWorx de HA hasta el servidor secundario.