====== Handbuch Tc 12 Security Services ======
{{:tc_sso_001.png?direct&400|}}
Oktober 2020
Patrick Granwehr
Christoph Bühler
**Achtung:**\\ Dies ist nur ein Leitfaden. Bitte zusätzlich noch die originalen Dokumente mit einbeziehen…
{{:tc_sso_002.png?direct&300|}}
===== Impressum =====
avasis AG\\
Gemperenstrasse 26\\
CH-9442 Berneck\\
Tel.: +41 71 737 99 22
Diese Unterlagen sind urheberrechtlich geschützt. Alle Rechte, auch die der Übersetzung, des Nachdruckes und Vervielfältigung der Unterlagen oder Teilen daraus, vorbehalten. Kein Teil der Unterlagen darf ohne Genehmigung von avasis AG in irgendeiner Form (Fotokopien, Mikrofilm oder ein anderes Verfahren), auch nicht für Zwecke der Unterrichtsgestaltung, reproduziert oder unter Verwendung elektronischer Systeme verarbeitet oder vervielfältigt oder Dritten zugänglich gemacht werden.
===== 1. Vorbedingungen Clientinstallation =====
Wenn die Clientumgebung schonaufgesetzt ist muss nur noch die Anpassung für SSO gemacht werden.\\
(Wird in diesem Dokument beschrieben).
Dies kann auch später mit der SSO Konfiguration nach der web_tier Konfiguration gemacht werden.
===== 2. 4-tier Client installation auf tccs umstellen =====
Dieser Schritt ist nur notwendig, falls dieser nicht schon bei Grundinstallation des 4-tier RichClient gemacht wurde.
==== 2.1 Feature Maintenance ====
Client Communication System
Use configurations and Environments\\
{{::tc_sso_symbol_000.png?nolink|}} Use configurations and Environments
{{::tc_sso_003.png?direct|}}
==== 2.2 Client Communication System Switch ====
{{::tc_sso_symbol_001.png?nolink|}} Use Configuration and Environments
{{::tc_sso_004.png?direct|}}
==== 2.3 Configuration Selection for Client Communication System ====
{{::tc_sso_symbol_000.png?nolink|}} Shared (non-existing, modifiable)
{{::tc_sso_005.png?direct|}}
==== 2.4 Forward Proxy Settings ====
{{::tc_sso_symbol_000.png?nolink|}} Do not use forward proxy
{{::tc_sso_006.png?direct|}}
==== 2.5 Environment Settings for Client Communication System ====
**Add...**
* Name: tcprod
* URI: http://avademo14:7070/tc
* Tag:
* SSO App ID:
* SSO Login URL:
{{::tc_sso_007.png?direct|}}
**Add...**
* Name: TST SSO
* URI: http://eTC-TST-WEB.hima.com:7070/tc
* Tag:
* SSO App ID: tctst
* SSO Login URL: http://eTC-TST-WEB.hima.com:10090/tss-logservice/tccs
{{::tc_sso_007-2.png?direct|}}
==== 2.6 Reverse Proxy Settings ====
* {{::tc_sso_symbol_001.png?nolink|}} Skip reverse proxy criteria check
{{::tc_sso_008.png?direct|}}
==== 2.6 Kerberos Authentication Settings ====
**Next...**
{{::tc_sso_009.png?direct|}}
==== 2.7 Secure Socket Layer (SSL) Settings ====
* {{::tc_sso_symbol_000.png?nolink|}} Use Internet Explorer Certificate Store (Recommended)
{{::tc_sso_010.png?direct|}}
==== 2.8 Client Tag Filter ====
**Next...**
{{::tc_sso_011.png?direct|}}
**Confirmation**
{{::tc_sso_012.png?direct|}}
{{::tc_sso_013.png?direct|}}
**close**
==== 2.9 Ergebnis ====
In C:\plm\tc12\portal\plugins\configuration_12000.2.0\client_specific.properties
{{::tc_sso_014.png?direct|}}
Siemens Ordner in C:\ProgramData\
{{::tc_sso_015.png?direct|}}
===== 3. IIS auf Webserver konfigurieren =====
Die IIS Webserverkonfiguration wird wegen der Verifizierung Kerberos authentication benötigt.
==== 3.1 IIS installieren ====
=== 3.1.1 Configure Microsoft IIS ===
{{::tc_sso_016.png?direct|}}
{{::tc_sso_017.png?direct|}}
{{::tc_sso_018.png?direct|}}
===== 4. C:\plm\SSO einrichten =====
1. Ordner SSO von ... \avaCentralRepository\avaSSO\c\plm\SSO nach c:\plm kopieren
{{::tc_sso_019.png?direct|}}
2. Pfade prüfen in: "C:\plm\SSO\bin\isapi_redirect.properties"
{{::tc_sso_020.png?direct|}}
3. In "C:\plm\SSO\conf\workers.properties“ host anpassen
{{::tc_sso_021.png?direct|}}
===== 5. Modify Tomcat server.xml =====
In "C:\plm\webapp\apache-tomcat-9.0.16\conf\server.xml“ anpassen:
{{::tc_sso_022.png?direct|}}
===== 6. IIS konfigurieren =====
1. Configuration Editor
{{::tc_sso_023.png?direct|}}
{{::tc_sso_024.png?direct|}}
2. Website hinzufügen
{{::tc_sso_025.png?direct|}} {{::tc_sso_026.png?direct|}}
3. Remove NTLM
{{::tc_sso_027.png?direct|}}
RMB Windows Authentication, Providers
{{::tc_sso_028.png?direct|}} wird {{::tc_sso_029.png?direct|}}
4. Virtuelle Verzeichnis hinzufügen
{{::tc_sso_030.png?direct|}}
{{::tc_sso_031.png?direct|}}
{{::tc_sso_032.png?direct|}}
5. ISAPI and CGI Restrictions
{{::tc_sso_033.png?direct|}}
{{::tc_sso_034.png?direct|}}
{{::tc_sso_035.png?direct|}}
6. ISAPI-Filter
{{::tc_sso_036.png?direct|}}
{{::tc_sso_037.png?direct|}}
{{::tc_sso_038.png?direct|}}
{{::tc_sso_039.png?direct|}}
7. Default Web Site deaktivieren
Bleibt auch bei Reboot gestoppt...\\
{{::tc_sso_040.png?direct|}}
IIS testen: http://avademo14:10090/ IIS wird auf Tomcat umgeleitet\\
{{::tc_sso_041.png?direct|}}
===== 7. Installing Security Services =====
==== 7.1 SSO Sources vorbereiten ====
In aktuell installiertem Patch, z.B.\\
…\Tc12.2.0_patch_8_wntx64\wntx64\additional_applications\sso\TcSecurityServices12.2_20200318.zip\\
entpacken:
{{::tc_sso_042.png?direct|}}
Folgendes ausführen:\\
...\wntx64\additional_applications\sso\TcSecurityServices12.2_xx\TcSecurity\default\INSTALL_SSO.EXE\\
...\wntx64\additional_applications\sso\TcSecurityServices12.2_xx\TcSecurity\de_de\INSTALL_SSO_DE_DE.EXE
Ergebnis: icd Folders
{{::tc_sso_043.png?direct|}}
==== 7.2 SSO ICD kopieren ====
Start "C:\plm\web_tier\insweb.bat«
{{::tc_sso_044.png?direct|}}
Zuvor extrahierte ICD einlesen
{{::tc_sso_045.png?direct|}}
===== 8. Tss-logiservice erstellen =====
==== 8.1 Create the Login Service ====
1. Start the Web Application Manager
* c:\plm\web_tier\insweb.bat
{{::tc_sso_046.png?direct|}}
Java must be installed…
Teamcenter Web-Anwendungs-Manager\\
* Select: **Hinzufügen…**
{{::tc_sso_047.png?direct|}}
2. Add Web Application
* Name: tss-loginservice\\
* Staging Location: c:\plm\web_tier\tss-loginservice\\
* Advanced Web Application Options…
Zu verwendende Datei: tss-loginservice
{{::tc_sso_048.png?direct|}}
3. Disk Locations for Install Images
* Add…
{{::tc_sso_049.png?direct|}}
{{::tc_sso_050.png?direct|}}
4. Solution Typ: -> Thin Client
{{::tc_sso_051.png?direct|}}
5. Selected Solutions
{{::tc_sso_052.png?direct|}}
* Select the following:
* **Security Services Login Service Web Application** (required)
* **Language** (optional)
{{::tc_sso_053.png?direct|}}
* Confirm with: OK
6. Terminate Add Web Application
* Check entries…
{{::tc_sso_054.png?direct|}}
* Confirm with: OK
7. Progress:
* Confirm with: OK
{{::tc_sso_055.png?direct|}}
{{::tc_sso_056.png?direct|}} {{::tc_sso_057.png?direct|}}
===== 9. Tss-idservice erstellen =====
==== 9.1 Create the Identity Service ====
1. Start the Web Application Manager
* c:\plm\web_tier\**insweb.bat**
{{::tc_sso_058.png?direct|}}
Teamcenter Web-Anwendungs-Manager
* Select: **Hinzufügen…**
{{::tc_sso_059.png?direct|}}
Add Web Application
* Name: tss-idservice
* Staging Location: c:\plm\web_tier\tss-idservice
* Advanced Web Application Options…
Zu verwendende Datei: tss-idservice
{{::tc_sso_060.png?direct|}}
2. Disk Locations for Install Images
* Add…
{{::tc_sso_062.png?direct|}}
3. Solution Typ: -> Thin Client
{{::tc_sso_063.png?direct|}}
4. Selected Solutions
{{::tc_sso_064.png?direct|}}
Select the following:
* **TC Security Services Identity Service Web Application** (requiered)
* **Language** (optional)
{{::tc_sso_065.png?direct|}}
* Confirm with: OK
Terminate Add Web Application
* Check entries…
{{::tc_sso_066.png?direct|}}
* Confirm with: OK
5. Progress:
{{::tc_sso_067.png?direct|}}
* Confirm with: **OK**
{{::tc_sso_068.png?direct|}} {{::tc_sso_069.png?direct|}}
===== 10. Tss-loginservices anpassen =====
==== 10.1 LdapAdmin ====
=== 10.1.1 Mit LdapAdmin Loginuser überprüfen ===
{{::tc_sso_070.png?direct|}} {{::tc_sso_071.png?direct|}}
{{::tc_sso_072.png?direct|}} {{::tc_sso_073.png?direct|}}
=== 10.1.2 tss-loginservice anpassen, Modify Tables ===
{{::tc_sso_074.png?direct|}} {{::tc_sso_075.png?direct|}}
{{::tc_sso_076.png?direct|}} {{::tc_sso_077.png?direct|}}
=== 10.1.3 tss-loginservice anpassen, Modify Context Parameters ===
{{::tc_sso_078.png?direct|}}
|**tcsso.login_service.sso_service_url:**|http://avademo14.hawaii.com:7070/tss-idservice|
|**identityServicePassword:**|sicheres Passwort eingeben: 1nFodbAA|
|**tcsso.behind_sso_gateway:**|true|
|**tcsso.gateway.field.type:**|remote_user|
|**tcsso.gateway.field.name:**|REMOTE_USER|
|**tcsso.login_service.enable_session_agent_applet:**|false|
|**tcsso.login_service.enableCsrf:**|false|
{{::tc_sso_079.png?direct|}} {{::tc_sso_080.png?direct|}}
==== 10.2 Tss-idservices anpassen ====
=== 10.2.1 tss-idservice anpassen, Modify Tables ===
{{::tc_sso_081.png?direct|}} {{::tc_sso_082.png?direct|}}
{{::tc_sso_083.png?direct|}} {{::tc_sso_084.png?direct|}}
|**Application ID:**|tcprod (SID...)|
|**Application Root URL:**|http://avademo14.hawaii.com:7070/|
|**LDAP UserName Attribute:**|sAMAccountName|
|**Trusted Application:**|false|
|**Strip Domain Name:**|true|
{{::tc_sso_085.png?direct|}}
=== 10.2.2 tss-idservice anpassen, Modify Tables ===
{{::tc_sso_086.png?direct|}}
{{::tc_sso_087.png?direct|}} {{::tc_sso_088.png?direct|}}
|**User Supplied Name:**|infodba (Domänenbenutzer welcher abfragen darf ob TC-User Mitglied in Domäne ist)|
|**LDAP Domain Name or BaseDN:**|hawaii.com|
{{::tc_sso_089.png?direct|}}
=== 10.2.3 tss-idservice anpassen, Modify Tables ===
{{::tc_sso_090.png?direct|}} {{::tc_sso_091.png?direct|}}
{{::tc_sso_092.png?direct|}}
{{::tc_sso_093.png?direct|}}
|**Primary LDAP:**|Y|
|**LDAP Host:**|avademo14.hawaii.com|
|**LDAP Port Number:**|389|
|**LDAP Port Number Override?:**|N|
|**LDAP Connect Type:**|ldap|
|**Max LDAP Connections:**|20|
|**Query DN:**|infodba@hawaii.com|
|**Query DN Password:**|infodba (Passwort User)|
|**UserObjectClass:**|user|
|**Fall back to User Attribute:**|Y|
|**User Attribute:**|sAMAccountName|
|**LDAP Connection Setup Delay:**|-1|
|**LDAP Connection Timeout:**|0|
=== 10.2.4 tss-idservice anpassen, Modify Context Parameters ===
{{::tc_sso_094.png?direct|}}
|**identityServicePassword:**|sicheres Passwort eingeben: 1nFodbAA (gleiches wie bei loginservice!!!)|
|**tcsso.LogLevel**|Authentication failures|
|**tcsso.AuthLogDir**|c:\plm\SSO\log|
{{::tc_sso_095.png?direct|}} {{::tc_sso_096.png?direct|}}
{{::tc_sso_097.png?direct|}}
=== 10.2.5 Deploy war-Files ===
Kopieren
{{::tc_sso_098.png?direct|}} {{::tc_sso_099.png?direct|}}
nach
{{::tc_sso_100.png?direct|}}
===== 11. TCServer Manager changes =====
==== 11.1 tcenvpre.bat ====
In Ordner C:\plm\tc12\pool_manager\confs\tcprod eine Datei mit folgendem Namen erstellen:
**tcenvpre.bat**
Inhalt:
set TC_SSO_APP_ID=tcprod
set TC_SSO_Service=http://avademo14.hawaii.com:7070/tss-idservice
set TC_TMP_DIR=C:\temp\ServerManagerSSO
if not exist %TC_TMP_DIR% mkdir %TC_TMP_DIR%
{{::tc_sso_101.png?direct|}}
===== 12. TCServer Manager changes =====
==== 12.1 4-tier Client installation auf tccs umstellen ====
Feature Maintenance
{{::tc_sso_102.png?direct|}}
Environment Settings for Client Communication System
{{::tc_sso_103.png?direct|}}
Anpassen:
|**Name:**|tcprod|
|**URI:**|http://avademo14:7070/tc|
|**Tag:**| |
|**SSO App ID:**|tcprod|
|**SSO Login URL:**|http://avademo14.hawaii.com:10090/tss-loginservice/tccs|
Kerberos Authentication Settings
* {{:tc_sso_symbol_001.png?nolink|}} Support Kerberos authentication
* {{:tc_sso_symbol_000.png?nolink|}} Use default settings
{{::tc_sso_104.png?direct|}}
==== 12.2 Richclient 4-tier ====
Einmal anmelden:
Sollte nun ohne Passworteingabe funktionieren
===== 13. AWC auf SSO umstellen =====
1. Datei **"C:\plm\tc12\aws2\stage\out\activeworkspace\site\WEB-INF\web.xml"** anpassen
Am besten Firmenwebsite eintragen
{{::tc_sso_105.png?direct|}}
2. In **C:\plm\tc12\aws2\stage\components\activeworkspace\repo\kit\tc-aw-solution\src_j2ee\WEB-INF\web.xml**\\
gleiche Anpassung:\\
**Das erstere wird beim compilen überschrieben**
3. TEM: Feature Maintenance, Update Active Workspace client settings
{{::tc_sso_106.png?direct|}} {{::tc_sso_107.png?direct|}}
|**{{::tc_sso_000.png?direct|}} Enable TcSS Suport**|
|**Tcss Application ID:**|tcprod|
|**TcSS Login URL:**|http://avademo14.hawaii.com:10090/tss-loginservice|
War-File deployen…
4. Fehlermeldung im IE
{{::tc_sso_108.png?direct|}}
Lösung:
{{::tc_sso_109.png?direct|}}
===== 14. Office integration auf SSO umstellen =====
==== 14.1 Neu installieren ====
{{::tc_sso_110.png?direct|}} {{::tc_sso_111.png?direct|}} {{::tc_sso_112.png?direct|}} {{::tc_sso_113.png?direct|}}
{{::tc_sso_114.png?direct|}} {{::tc_sso_115.png?direct|}} {{::tc_sso_116.png?direct|}}
===== 15. Teamcenter Visualization auf SSO umstellen =====
{{::tc_sso_117.png?direct|}} {{::tc_sso_118.png?direct|}}
|**SSO App ID:**|tcprod|
|**SSO Login URL:**|http://avademo14.hawaii.com:10090/tss-loginservice/tccs|
===== 16. Solid Edge SEEC =====
{{::tc_sso_119.png?direct|}}
|**SSO App ID:**|tcprod|
|**SSO Login URL:**|http://avademo14.hawaii.com:10090/tss-loginservice/tccs|
===== 17. Solid Works Integration auf SSO umstellen =====
{{::tc_sso_120.png?direct|}}
|**SSO App ID:**|tcprod|
|**SSO Login URL:**|http://avademo14.hawaii.com:10090/tss-loginservice/tccs|
===== 18. Zweiter Strang NOSSO =====
* Nur für administrative Zwecke und **nicht für Testing**
* Benutzer infodba und dcproxy (müssen so nicht in Domain erfasst werden)
* Hintergrunddienste die nicht über SSO laufen dürfen
* Kein AWC (nur SSO)
==== 18.1 Web_tier, TcWebTier für SSO umbenennen ====
Ordner C:\plm\web_tier\TcWebTier in C:\plm\web_tier\tcwebtier-sso umbenennen
{{::tc_sso_121.png?direct|}}
In "C:\plm\web_tier\tcwebtier-sso\webapp.dat"
{{::tc_sso_122.png?direct|}} {{::tc_sso_123.png?direct|}}
In "C:\plm\web_tier\tcwebtier-sso\webapp_root\WEB-INF\web.xml"
{{::tc_sso_124.png?direct|}}
In "C:\plm\web_tier\webapps.dat"
{{::tc_sso_125.png?direct|}}
Insweb starten und prüfen.
{{::tc_sso_126.png?direct|}}
==== 18.2 tcwebtier_NOSSO ====
C:\plm\web_tier\tcwebtier-sso nach C:\plm\web_tier\tcwebtier-nosso kopieren
{{::tc_sso_127.png?direct|}}
In "C:\plm\web_tier\tcwebtier-nosso\webapp.dat«
{{::tc_sso_128.png?direct|}}
In "C:\plm\web_tier\tcwebtier-nosso\webapp_root\WEB-INF\web.xml"
{{::tc_sso_129.png?direct|}}
In "C:\plm\web_tier\webapps.dat"
{{::tc_sso_130.png?direct|}}
Insweb starten und prüfen.
{{::tc_sso_131.png?direct|}}
==== 18.3 tcwebtier_NOSSO anpassen ====
C:\plm\web_tier\insweb.bat
{{::tc_sso_132.png?direct|}} {{::tc_sso_133.png?direct|}}
Ports jeweils an zweiter Stelle um einen Zähler erhöhen:
{{::tc_sso_134.png?direct|}}
{{::tc_sso_135.png?direct|}}
War-File nach instance_NOSSO deployen
{{::tc_sso_136.png?direct|}}
{{::tc_sso_137.png?direct|}}
===== 19. Tomcat: mehrere Instanzen erstellen =====
==== 19.1 Create 2 new different folders in different locations ====
These folders are for storing the instance specific configuration and other data such as logs, temp data
{{::tc_sso_138.png?direct|}}
==== 19.2 Copy the ‘conf’ folder into instances folder from server folder ====
This step is necessary to have different configuration for each instance. Any instance specific configuration related changes should be done in related instance folder only.
{{::tc_sso_139.png?direct|}}
==== 19.3 Zusätzliche Folder erstellen ====
{{::tc_sso_140.png?direct|}}
==== 19.4 Create instance specific startup.bat and shutdown.bat ====
{{::tc_sso_141.png?direct|}} {{::tc_sso_142.png?direct|}}
==== 19.5 Inhalt von webapps Folder in Instanzen kopieren ====
{{::tc_sso_143.png?direct|}}
==== 19.6 War-files in instance_SSO verschieben (deployte Ordner warden automatisch gelöscht) ====
{{::tc_sso_144.png?direct|}}
==== 19.7 Server.xml anpassen ====
C:\plm\webapp\apache-tomcat-9.0.16\instance_SSO\conf\server.xml\\
Ports belassen
C:\plm\webapp\apache-tomcat-9.0.16\instance_NOSSO\conf\server.xml\\
Ports an zweiter Stelle um einen Zähler hochstellen
==== 19.8 Tomcat: Dienste anpassen ====
Bestehenden Tomcatdienst stoppen und deaktivieren
{{::tc_sso_145.png?direct|}}
Nicht mehr verwendete Ordner umbenennen
{{::tc_sso_146.png?direct|}}
Dienst für die beiden neuen Instanzen erstellen
{{::tc_sso_147.png?direct|}}
Für instance_SSO\\
Cmd\\
set CATALINA_BASE=C:\plm\webapp\apache-tomcat-9.0.16\instance_SSO
cd C:\plm\webapp\apache-tomcat-9.0.16\bin
service.bat install instance_SSO
{{::tc_sso_148.png?direct|}}
Für instance_NOSSO\\
Cmd\\
set CATALINA_BASE=C:\plm\webapp\apache-tomcat-9.0.16\instance_NOSSO
cd C:\plm\webapp\apache-tomcat-9.0.16\bin
service.bat install instance_NOSSO
{{::tc_sso_149.png?direct|}}
{{::tc_sso_150.png?direct|}}
===== 20. Zweiter Poolmanager =====
Bestehenden poolmanager kopieren:\\
C:\plm\tc12\pool_manager\confs\tcprod\\
Nach\\
C:\plm\tc12\pool_manager\confs\tcprod_NOSSO
{{::tc_sso_151.png?direct|}}
{{::tc_sso_152.png?direct|}}
Anpassungen unter tcprod_NOSSO:
{{::tc_sso_153.png?direct|}}
**Add 2nd Server Manager in Console**
JMX Configuration Panel
{{::tc_sso_154.png?direct|}} {{::tc_sso_155.png?direct|}}
Dienst für zweiten Server Manager erstellen und Dienstuser anpassen
{{::tc_sso_156.png?direct|}}
{{::tc_sso_157.png?direct|}}
{{::tc_sso_158.png?direct|}}
**Create 2nd NOSSO Active Workspace Client**
Nicht machen da zwei WAR files\\
Handling nicht zumutbar!
Es muss definiert werden dass AWC entweder mit oder ohne SSO läuft!
Geht ab AWC4.3 und neuer nicht mehr wegen Microservices.\\
Hosting-Prefs müssten jeweils für mit und ohne SSO konfiguriert werden (wie?)
{{::tc_sso_159.png?direct|}}
**Visualization Server Pool Assigner Setting auf NOSSO**
{{::tc_sso_160.png?direct|}} {{::tc_sso_161.png?direct|}}
**Indexer Settings**
In "C:\plm\tc12\TcFTSIndexer\conf\TcFtsIndexer.properties"
{{::tc_sso_162.png?direct|}}
**Dispatcher Client configuration**
In "C:\plm\tc12\TcFTSIndexer\conf\TcFtsIndexer.properties"
{{::tc_sso_163.png?direct|}}
===== 21. Client NOSSO =====
==== 21.1 4-tier Client installation auf tccs umstellen ====
Feature Maintenance
{{::tc_sso_164.png?direct|}}
Environment Settings for Client Communication System
Add...
|Name:|tcprod_NOSSO|
|URI:|http://avademo14:7170/tc|
|Tag:| |
|SSO App ID:| |
|SSO Login URL:| |
{{::tc_sso_165.png?direct|}}
Kerberos Authentication Settings
* {{:tc_sso_symbol_001.png?nolink&20|}} Support Kerberos authentication
* {{:tc_sso_symbol_000.png?nolink&20|}} Use default settings
{{::tc_sso_166.png?direct|}}
{{::tc_sso_167.png?direct|}}
{{::tc_sso_168.png?direct|}}