PingFederate als zentraler Authentifizierungsserver > Beispiele für SSO-Konfigurationen > Beispiel: PingFederate als Identitätsanbieter und Windchill DS als Datenspeicher
Beispiel: PingFederate als Identitätsanbieter und Windchill DS als Datenspeicher
Dieses Beispiel enthält detaillierte Schritte zum Konfigurieren einer SSO-Umgebung, in der ThingWorx für Single Sign-On konfiguriert ist, mit PingFederate als zentralem Autorisierungsserver (CAS) und Identitätsanbieter (IdP) und Windchill DS als Datenspeicher.
In der folgenden Tabelle sind die konfigurierten Anwendungen und ihre jeweilige Rolle in diesem Beispiel aufgeführt:
Rolle
Anwendung
Dienstanbieter
ThingWorx
Autorisierungsserver
PingFederate
Identitätsanbieter
PingFederate (von Windchill DS unterstützt)
* 
Mit Windchill 12.0.1.0 wurde Windchill DS aus dem Technologiestapel entfernt. Weitere Informationen finden Sie hier. Sie können Ihr LDAP V3 anstelle von Windchill DS verwenden.
PTC stellt Automatisierungsskripts für die Konfiguration von PingFederate bereit, die in diesem Beispiel erläutert wird. Weitere Informationen finden Sie unter PingFederate automatisch als zentralen Autorisierungsserver konfigurieren.
In dem folgenden Diagramm ist die Konfiguration dargestellt, die in diesem Beispiel erläutert wird.
Teil A: Voraussetzungen 
Laden Sie die Automatisierungsskripts herunter, und extrahieren Sie sie in einen Ordner auf Ihrem Rechner.
Stellen Sie sicher, dass Sie über eine aktuelle Installation von ThingWorx verfügen.
Halten Sie den ThingWorx Server nach der Installation an.
Stellen Sie sicher, dass Sie Windchill DS eingerichtet haben.
Installieren Sie PingFederate, und starten Sie PingFederate.
* 
Installieren Sie die entsprechende Java-Version für die PingFederate-Version. Legen Sie auf dem PingFederate-Rechner die Umgebungsvariable JAVA_HOME fest, und aktualisieren Sie die Variable PATH, um Java entsprechend einzuschließen.
Teil B: Vor dem Ausführen der Skripts 
Schritt 1: Globales PingFederate-SSL-Zertifikat erstellen und exportieren
1. Melden Sie sich bei PingFederate als Administrator an, und navigieren Sie zu Security > SSL Server Certificates.
2. Klicken Sie auf Create New, um das globale SSL-Zertifikat zu erstellen, und gehen Sie wie folgt vor:
a. Geben Sie im Feld Common Name den FQDN des PingFederate-Rechners an.
b. Machen Sie weitere Angaben auf der Seite, und klicken Sie auf Next.
c. Klicken Sie auf Done und dann auf Save.
d. Klicken Sie auf SSL Server Certificates.
e. Wählen Sie für das SSL-Zertifikat, das Sie erstellt haben, in der Liste Select Action die Option Activate Default for Runtime Server aus, und wählen Sie dann Activate Default for Admin Console aus. Klicken Sie auf Save.
Dieses SSL-Zertifikat ist für die Verwaltungskonsole und den Laufzeitserver als default gekennzeichnet.
3. Gehen Sie für das Zertifikat localhost wie folgt vor:
a. Wählen Sie in der Liste Select Action die Option Deactivate for Runtime Server aus, und wählen Sie dann Deactivate for Admin Console aus.
b. Löschen Sie das Zertifikat localhost, und klicken Sie auf Save.
4. Gehen Sie folgendermaßen vor, um das globale PingFederate-SSL-Zertifikat zu exportieren:
a. Klicken Sie für das Zertifikat, das Sie erstellt haben, auf Export.
b. Wählen Sie Certificate Only aus, und klicken Sie auf Next.
c. Klicken Sie auf Export.
Das Zertifikat wird in den Standardordner Downloads exportiert.
d. Klicken Sie auf Done und dann auf Save.
Weitere Informationen finden Sie unter SSL-Zertifikat für PingFederate konfigurieren.
Schritt 2: Zertifikatdateien im Ordner input der automatisierten Konfiguration von PingFederate speichern
Zertifikate sind als Eingabe für den automatisierten Konfigurationsprozess erforderlich. Sie müssen die folgenden Zertifikatdateien im Ordner input des automatisierten Konfigurationstools speichern. Den Ordner input finden Sie unter sso-config-pingfed-X.Y/input, wobei X.Y die PingFederate-Version angibt.
Kopieren Sie die globale PingFederate-Zertifikatdatei (.crt), die Sie in den Ordner Downloads exportiert haben.
Um die Datei thingworx.cer zu erstellen und in den Ordner input zu kopieren, gehen Sie wie folgt vor:
a. Erstellen Sie im Ordner <ThingWorx Installationsordner>/ThingworxPlatform den Ordner ssoSecurityConfig.
b. Erstellen Sie einen Keystore vom Typ JKS, nennen Sie ihn sso-keystore.jks, und speichern Sie ihn wie folgt im Ordner ssoSecurityConfig:
Generieren Sie ein Schlüsselpaar.
Geben Sie den allgemeinen Namen des Zertifikats als ThingWorx an.
c. Exportieren Sie die Zertifikatkette in den Ordner ssoSecurityConfig.
Die folgenden Dateien sollten sich im Ordner ssoSecurityConfig befinden:
sso-keystore.jks
thingworx.cer
d. Kopieren Sie die Datei thingworx.cer in den Ordner sso-config-pingfed-X.Y/input.
Die folgenden Dateien müssen sich im Ordner input befinden:
<Exportiertes_SSL_Zertifikat-von_PingFederate>.crt
thingworx.cer
Schritt 3: Datei user.properties aktualisieren
Legen Sie die Benutzereigenschaften entsprechend Ihrem Konfigurations-Setup fest.
Schritt 4: Datei default.properties aktualisieren
Aktualisieren Sie die Standardeigenschaften entsprechend Ihrem Konfigurations-Setup.
Teil C: Automatisierungsskripts ausführen 
1. Stellen Sie sicher, dass PingFederate ausgeführt wird.
Wählen Sie für die Konfiguration in diesem Beispiel 1. PingFederate as IdP – LDAP aus, während die Skripts ausgeführt werden.
Teil D: Generierte Artefakte verwenden 
Schritt 1: Artefakte in den Ordner ssoSecurityConfig kopieren
1. Kopieren Sie die folgenden Dateien aus dem Ordner output der automatischen Konfiguration von PingFederate unter sso-config-pingfed-X.Y in den Ordner /ThingworxPlatform/ssoSecurityConfig:
pingfed_idp_metadata.xml
pingfed_signing_certificate.crt
pingfed_ssl_server_certificate.crt
2. Benennen Sie pingfed_idp_metadata.xml in sso-idp-metadata.xml um.
Weitere Informationen finden Sie unter Generierte Artefakte verwenden.
Schritt 2: Signaturzertifikat auf Anwendungsebene in den ThingWorx Keystore importieren
Importieren Sie die Datei pingfed_signing_certificate.crt in die Datei sso-keystore.jks im Ordner /ThingworxPlatform/ssoSecurityConfig. Weitere Informationen finden Sie im Abschnitt pingfed_signing_certificate.crt unter Generierte Artefakte verwenden.
Schritt 3: Zertifikate auf Transportebene importieren
ThingWorx SSL-Zertifikat
1. Importieren Sie das ThingWorx SSL-Zertifikat in die Java-cacerts-Datei des PingFederate-Rechners.
2. Starten Sie PingFederate neu.
PingFederate-SSL-Zertifikat
Importieren Sie pingfed_ssl_server_certificate.crt (die PingFederate-SSL-Zertifikatdatei) in die Java-cacerts-Datei des ThingWorx Rechners.
Weitere Informationen finden Sie im Abschnitt pingfed_ssl_server_certificate.crt unter Generierte Artefakte verwenden.
Teil E (Optional): Gruppenzuordnung konfigurieren 
* 
Stellen Sie sicher, dass Sie statische Gruppen in Windchill DS definiert haben, bevor Sie fortfahren.
Führen Sie die folgenden Schritte in PingFederate aus:
1. Gehen Sie zu System > Password Credential Validators, und wählen Sie Ihren Instance Name aus.
2. Wählen Sie auf der Seite, die geöffnet wird, die Registerkarte Extended Contract aus.
3. Fügen Sie im Feld Extend the Contract die Option isMemberOf hinzu, und klicken Sie auf Add.
4. Klicken Sie auf Next, um die Seite Summary anzuzeigen.
5. Prüfen Sie die Änderungen auf der Seite Summary, die geöffnet wird, und klicken Sie auf Save.
6. Gehen Sie zu AUTHENTICATION > IdP Adapters, und wählen Sie Ihren Instance Name aus.
7. Wählen Sie auf der Seite, die geöffnet wird, die Registerkarte Extended Contract aus.
8. Fügen Sie im Feld Extend the Contract die Option isMemberOf hinzu, und klicken Sie auf Add.
9. Klicken Sie auf Next, um die Seite Adapter Attributes zu öffnen. Auf dieser Seite müssen Sie keine Aktualisierungen vornehmen.
10. Klicken Sie auf Next, um zur Seite Adapter Contract Mapping zu wechseln, und wählen Sie Configure Adapter Contract aus.
11. Klicken Sie auf der Seite Attribute Sources & User Lookup auf Add Attribute Source.
a. Führen Sie auf der Seite Data Store die folgenden Schritte aus:
i. Fügen Sie für ATTRIBUTE SOURCE ID den Wert isMemberOf hinzu.
ii. Fügen Sie für ATTRIBUTE SOURCE DESCRIPTION den Wert isMemberOf hinzu.
iii. Wählen Sie für ACTIVE DATA STORE Ihren den Windchill Datenspeicher aus.
iv. DATA STORE ist bereits mit dem Wert LDAP vorausgefüllt.
v. Klicken Sie auf Next.
b. Führen Sie auf der Seite LDAP Directory Search die folgenden Schritte aus:
i. Fügen Sie für BASE DN den Wert o=ptc hinzu.
ii. SEARCH SCOPE ist bereits mit dem Wert Subtree vorausgefüllt.
iii. Für Attributes to return from search wählen Sie Folgendes aus:
i. Für ROOT OBJECT CLASS wählen Sie die Option <Show All Attributes> aus.
ii. Für ATTRIBUTE wählen Sie den Wert isMemberOf aus, und klicken Sie auf Add Attribute.
iii. Klicken Sie auf Next.
c. Auf der Seite LDAP Filter führen Sie die folgenden Schritte aus:
i. Für Filter fügen Sie isMemberOf=${isMemberOf} hinzu.
ii. Klicken Sie auf Next.
d. Prüfen Sie die Änderungen auf der Seite Summary, die geöffnet wird, und klicken Sie auf Save.
12. Öffnen Sie APPLICATIONS > SP Connections, und wählen Sie Ihren Connection Name aus.
13. Wählen Sie auf der Seite, die geöffnet wird, die Option Attribute Contract aus, um die Seite Attribute Contract zu öffnen, und führen Sie die folgenden Schritte aus:
a. Für Extend the Contract, fügen Sie group hinzu.
b. Für Attribute Name Format wählen Sie die Option mit unspecified aus.
c. Klicken Sie auf Hinzufügen.
d. Klicken Sie auf Weiter.
14. Wählen Sie auf der Seite Authentication Source Mapping, die geöffnet wird, Ihre Adapter Instance Name aus.
15. Führen Sie auf der Seite Attribute Contract Fulfilment, die geöffnet wird, die folgenden Schritte für den group Attributvertrag aus, den Sie in Schritt 12 erstellt haben.
a. Wählen Sie für Source die Option Adapter aus.
b. Wählen Sie für Value die Option isMemberOf aus.
c. Klicken Sie auf Save.
* 
Beachten Sie den Zuordnungsnamen (in diesem Beispiel group), da Sie ihn im ThingWorx SSO-Authentifikator benötigen. Weitere Informationen finden Sie im Thema Single Sign-On-Authentifizierung im ThingWorx Hilfe-Center.
Teil F: ThingWorx für Single Sign-On konfigurieren 
1. Stellen Sie sicher, dass der ThingWorx Server angehalten wurde.
2. Gehen Sie wie folgt vor, um ThingWorx für Single Sign-on zu konfigurieren:
ssoSecurityConfig muss die folgenden Dateien enthalten:
3. Starten Sie den ThingWorx Server.
War dies hilfreich?