Single Sign-On und Hochverfügbarkeitskonfigurationen
ThingWorx unterstützt Single Sign-On in Hochverfügbarkeitskonfigurationen, allerdings müssen einige zusätzliche komplexe Konfigurationsschritte berücksichtigt werden.
◦ PingFederate muss für jeden ThingWorx Hochverfügbarkeitsserver (HA) separat konfiguriert werden. Unabhängig davon, ob sich die Server auf demselben physischen Rechner befinden, aber verschiedene Ports verwenden, oder auf verschiedenen Rechnern mit demselben Port, muss für alle Rechner eine Konfiguration auf jedem der verwendeten PingFederate-OAuth-Clients vorhanden sein. Darüber hinaus ist eine PingFederate-Dienstanbieterverbindung pro Server erforderlich.
◦ Wenn mehrere ThingWorx Server auf demselben Rechner vorhanden sind, aber für jeden ein anderer Port konfiguriert ist, muss die Umgebungsvariable THINGWORX_SSO_SETTINGS verwendet werden, um für jeden Server ein bestimmtes ssoSecurityConfig-Verzeichnis festzulegen. Jedes Verzeichnis benötigt eine eigene sso-settings.json-Datei, die die clientBaseURL und die metadataEntityBaseUrl mit dem vollständig qualifizierten Domänennamen enthält, wobei der Port des betreffenden Servers angegeben ist.
◦ Alle URLs, die verwendet werden, um auf Inhalte in ThingWorx zuzugreifen, sollten über eine VIP oder einen Proxy wie HAProxy zugänglich sein. Bei einem HA-Failover greifen die Anwendungen auf den Inhalt über den Proxy-Server-Rechner auf einem bestimmten Port zu. Dieser Proxy ist für das Umleiten an andere Rechner oder Ports in der HA-Architektur verantwortlich, je nachdem, welcher Rechner verfügbar ist.
Die Parameter im Abschnitt AccessTokenPersistenceSettings der Datei sso-settings.json sollten so konfiguriert werden, dass die PostgreSQL-Konfiguration/der PostgreSQL-Server der HA-Umgebung für die ThingWorx Installationen verwendet wird, die auf denselben PostgreSQL-Server verweisen. Auf diese Weise können die Zugriffs-Token (Gewährungsgenehmigung) bei einem Failover von einem ThingWorx HA-Server an den zweiten übertragen werden.