추가 구성 > 클러스터형 Windchill 환경으로 ThingWorx Navigate 구성
클러스터형 Windchill 환경으로 ThingWorx Navigate 구성
클러스터형 Windchill 환경과 함께 ThingWorx Navigate를 사용할 수 있습니다. 부하 분산 장치의 URL을 사용하여 ThingWorx NavigateWindchill에 연결합니다. 사용할 URL은 다음 조건에 따릅니다.
ThingWorx Navigate 구성 -SSO( Single Sign-on) 또는 Windchill 인증
Windchill 기본 구성 - HTTP 또는 HTTPS 프로토콜
이 항목에는 클러스터형 환경과 ThingWorx Navigate의 구성 예에 대한 기본 정보가 포함되어 있습니다.
* 
ThingWorx Navigate 구성에서 Windchill 클러스터를 사용할 경우 고려해야 할 보안 요소들이 있습니다. 생산 환경에서 클러스터 구성을 사용하기 전에 아래 세부 정보를 반드시 검토하십시오.
Windchill 클러스터로 구성된 ThingWorx Navigate 다이어그램
Windchill 클러스터: 개요
클러스터를 사용함으로써 얻을 수 있는 가장 주된 이점은 성능, 확장성 및 신뢰도의 향상입니다. 클러스터에는 다음 구성 요소들이 있습니다.
단일 데이터베이스 인스턴스에 연결되어 있으며 부하 분산 라우터가 앞에 있는 두 개 이상의 응용 프로그램 계층 호스트
부하 분산 라우터 - Windchill 사용자와 ThingWorx Navigate 사용자를 포함하여 클라이언트로부터 요청을 받습니다. 부하 분산 장치는 이러한 요청을 Windchill 인스턴스 중 하나에 분산시킵니다. 따라서 서버의 작동이 중단되거나 트래픽이 많더라도 사용자들은 영향을 덜 받습니다.
나머지 네트워크에는 이 라우터가 단일 Windchill 서버로 나타납니다. 자체 호스트 이름이 있으며 항상 HTTPS 프로토콜을 사용해야 합니다.
클러스터에 관한 보다 자세한 정보는 Windchill 도움말 센터에서 "클러스터 Windchill 환경 설치 및 구성"을 확인하십시오.
다음 단원에는 ThingWorx Navigate에 대한 각 인증 구성에 대해 Windchill 클러스터를 구성하는 방법의 4가지 예가 나와 있습니다. ThingWorx Navigate에는 보안성이 가장 뛰어난 구성인 Single Sign-on을 권장합니다. 다른 구성을 사용하려면 완전한 솔루션이 구성될 수 있도록 추가적인 설정과 보안 고려 사항이 필요합니다.
HTTPS 및 OAuth로 구성된 Windchill 클러스터를 사용한 ThingWorx Navigate Single Sign-on(권장)
보안성이 가장 뛰어난 설정입니다. 구성 세부 정보는 다음과 같습니다.
ThingWorx Navigate 인증 유형 - SSO
부하 분산 장치 프로토콜 - HTTPS
Windchill 서버 - HTTPS 및 OAuth 구성됨. SAML 인증은 선택 사항입니다.
Windchill은 HTTPS이기 때문에 부하 분산 장치에서 SSL 인증서 종료가 발생하지 않습니다.
ThingWorx Composer의 다음 위치에서 부하 분산 장치 URL을 확인합니다.
ptc-windchill-integration-connector기본 URL[https]://[LB-host]:[port]/[windchill-web-app]/oauth입니다.
ptc-windchill-integration-connector-proxy의 경우:
기본 URL - [https]://[LB-host]
연결 URL 테스트 - [https]://[LB-host]:[port]/[windchill-web-app]/oauth/servlet/WindchillAuthGW/wt.httpgw.HTTPServer/echo
HTTP 및 OAuth로 구성된 Windchill 클러스터를 사용한 ThingWorx Navigate Single Sign-on
구성 세부 정보는 다음과 같습니다.
ThingWorx Navigate 인증 유형 - SSO
부하 분산 장치 프로토콜 - HTTPS
Windchill 서버 - HTTP 및 OAuth 구성됨. SAML 인증은 선택 사항입니다.
Windchill은 HTTP이기 때문에 부하 분산 장치에서 SSL 인증서 종료가 발생합니다.
ThingWorx Composer에서 부하 분산 장치의 URL을 확인합니다.
ptc-windchill-integration-connector기본 URL[https]://[LB-host]:[port]/[windchill-web-app]/oauth입니다.
ptc-windchill-integration-connector-proxy의 경우:
기본 URL - [https]://[LB-host]
연결 URL 테스트 - [https]://[LB-host]:[port]/[windchill-web-app]/oauth/servlet/WindchillAuthGW/wt.httpgw.HTTPServer/echo
HTTPS로 구성된 Windchill 클러스터와 함께 Windchill 인증을 사용한 ThingWorx Navigate
* 
양방향 SSL 구성에서 인증서를 사용하면 암호화와 보안 데이터 전송이 보장됩니다. 이 과정은 ThingWorx/ThingWorx NavigateWindchill 사이의 연결 및 커뮤니케이션을 확인하기 위해 양쪽을 모두 검증함으로써 구현됩니다.
저희는 ID 공급자로 Windchill만 지원하기 때문에 자격 증명은 ThingWorxWindchill에만 국한되어 공유됩니다.
구성 세부 정보는 다음과 같습니다.
ThingWorx Navigate 인증 유형 - 양방향 SSL을 통한 Windchill 인증
부하 분산 장치 프로토콜 - HTTPS
부하 분산 장치 유형 - 계층 4
Windchill 서버 - HTTPS 및 양방향 SSL 구성됨.
Windchill은 HTTPS이기 때문에, 부하 분산 장치에서 SSL 인증서 종료가 발생하지 않습니다.
ThingWorx Composer에서 부하 분산 장치의 URL을 확인합니다. ptc-windchill-connectorptc-windchill-connector-proxy의 경우 올바른 형식은 다음과 같습니다.
https://<loadbalancer_host>:port>/Windchill/sslClientAuth
* 
OSI 계층 4에서 작동하는 부하 분산 장치만 이 구성을 지원할 수 있습니다.
OSI 계층 7에서 작동하는 부하 분산 장치를 사용하는 경우 아래 설명된 신뢰할 수 있는 호스트 구성과 함께 Windchill 인증을 사용해야 합니다.
HTTP로 구성된 Windchill 클러스터와 함께 Windchill 인증을 사용한 ThingWorx Navigate
* 
이 대체 구성은 권장되지 않으며, 데모와 개념 증명 목적으로만 사용해야 합니다. 이 구성은 SSO 또는 SSL 없이 ThingWorx NavigateWindchill을 연결합니다. 대신 신뢰할 수 있는 호스트 속성이 구성되어 있습니다.
신뢰할 수 있는 호스트를 사용할 경우 ThingWorxWindchill 사이의 연결이 개방되어 식별된 신뢰할 수 있는 호스트의 IP 주소로부터의 모든 커뮤니케이션을 허용하게 됩니다. 이 구성은 메시지 가로채기(MIM: Man in the Middle) 공격을 받을 위험성이 있습니다. 이 연결을 통해 중요 정보가 노출됩니다.
또한, 시스템이 방화벽으로 보호되고 있더라도 내부 공격과 잘못된 네트워크 구성으로 인한 위험이 존재합니다. 공격자가 이러한 네트워크 경계 중 하나에 침투하게 될 경우, 공유 중인 암호화되어 있지 않은 정보를 직접 볼 수 있습니다. 이 구성은 기존 Windchill 제품과 ThingWorx Navigate 구성에 추가적인 위험을 제공합니다.
이 설정을 사용함으로써 발생할 수 있는 위험을 받아들일지 여부를 판단하는 것은 사용자의 책임입니다. PTC에서는 이 구성을 권장하지 않으며 신뢰할 수 있는 호스트 옵션을 사용하여 구성된 시스템에 대한 모든 보안 침해나 공격에 어떠한 책임도 지지 않습니다.
구성 세부 정보는 다음과 같습니다.
ThingWorx Navigate 인증 유형 - Windchill 인증
부하 분산 장치 프로토콜 - HTTPS
Windchill 서버 - HTTP 및 trustedHost 속성 구성됨. 이 속성 구성 지침은 아래에 나와 있습니다.
Windchill은 HTTP이기 때문에 부하 분산 장치에서 SSL 인증서 종료가 발생합니다.
Windchill에서 데이터를 가져오고 WindchillThingWorx Navigate 간의 연결을 설정하는 추가 단계입니다.
ThingWorx Navigate 구성 도구에서 Windchill에 대한 필드에 이 URL을 입력합니다.
https://<loadbalancer_host>:port>/Windchill/trustedAuth
이외에도 Windchill 측에서 수행해야 할 몇 가지 수동 단계가 있습니다. ThingWorx 서버의 IP 주소와 부하 분산 장치를 신뢰할 수 있는 호스트로 설정해야 합니다. 이 방법을 통해 부하 분산 장치를 사용하여 Windchill로의 ThingWorx Navigate 연결을 안전하게 보호할 수 있습니다.
또한 부하 분산 장치를 통해 신뢰할 수 없는 클라이언트 호스트가 Windchill /trustedAuth/ URL 패턴에 도달할 수 없도록 방지함으로써 보안을 향상시킵니다.
Windchill 측에서 다음 단계를 수행하십시오.
1. Windchill 메서드 서버를 중지합니다.
2. WT_HOME/codebase/WEB-INF/web.xml로 이동한 다음 이 파일을 텍스트 편집기에서 엽니다.
3. TrustedSSLAuthFilterTrustedAuthFilter 섹션을 찾은 다음 매개 변수 clientHostHeader를 아래와 같이 두 섹션 모두에 추가합니다. 예를 들면 다음과 같습니다.
<filter>
<description>Filter allowing a trusted SSL certificate to specify the remote user for the request</description>
<filter-name>TrustedSSLAuthFilter</filter-name>
<filter-class>wt.httpgw.filter.TrustedAuthFilter</filter-class>
<init-param>
<param-name>trustTrustedHosts</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>clientHostHeader</param-name>
<param-value>X-Forwarded-For</param-value>
</init-param>
</filter>
<filter>
<description>Filter allowing a trusted client to specify the remote user for the request</description>
<filter-name>TrustedAuthFilter</filter-name>
<filter-class>wt.httpgw.filter.TrustedAuthFilter</filter-class>
<init-param>
<param-name>clientHostHeader</param-name>
<param-value>X-Forwarded-For</param-value>
</init-param>
</filter>
4. 매개 변수 TrustedHostFilter를 동일한 파일에 추가합니다. 예를 들면 다음과 같습니다.
<filter>
<description>Filter allowing a trusted client to specify the remote user for the request</description>
<filter-name>TrustedHostFilter</filter-name>
<filter-class>wt.servlet.TrustedHostFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>TrustedHostFilter</filter-name>
<url-pattern>/trustedAuth/*</url-pattern>
</filter-mapping>
5. web.xml을 저장하고 닫습니다.
6. 이제 명령 프롬프트에서 Windchill 셸을 엽니다.
7. wt.auth.trustedHosts가 아직 추가되지 않았으면 아래 속성을 xconf.properties에 추가합니다.
<Property name="wt.auth.trustedHosts" overridable="true"
targetFile="codebase/wt.properties"
value="<TWXHost_IP> <LBHost_IP>">
TWXHostThingWorx 호스트 이름이고 LBHost는 부하 분산 장치 호스트 이름입니다.
8. xconfmanager -p를 실행합니다.
9. wt.properties 파일에 wt.auth.trustedHosts가 설정되어 있지 않은 경우 다음 xconfmanager 명령을 사용하여 속성을 설정합니다. 또는 wtproperties에서 속성을 직접 추가합니다.
xconfmanager --set wt.auth.trustedHosts==<TWXHost_IP> <LBHost_IP> -t codebase/wt.properties -p
TWXHostThingWorx 호스트 이름이고 LBHost는 부하 분산 장치 호스트 이름입니다.
10. Windchill 메서드 서버를 시작합니다.
Windchill이 이제 trustedHost 속성으로 구성되었습니다.
* 
xconfmanager를 사용할 때 추가 도움이 필요한 경우 Windchill 도움말 센터에서 "Using the xconfmanager Utility" 항목을 검색하십시오.
WindchilltrustedAuth 옵션을 사용해야 하며, 이 경우 커넥터 및 커넥터 프록시 설정에서 몇 가지 업데이트가 필요합니다.
1. ThingWorx Composer에서 ptc-windchill-connector를 엽니다.
2. 구성을 클릭한 다음 기본 URL 옆에 다음 URL을 입력합니다.
[https]://[LB-host]:[port]/[windchill-web-app]/trustedAuth
3. 저장을 클릭합니다.
4. ptc-windchill-connector-proxy를 연 다음 구성을 클릭합니다.
5. 연결 URL 테스트 옆에 다음 URL을 입력합니다.
[https]://[LB-host]:[port]/[windchill-web-app]/trustedAuth/servlet/WindchillAuthGW/wt.httpgw.HTTPServer/echo
6. 저장을 클릭합니다.
이제 Windchill 클러스터 구성이 완료되었습니다.
도움이 되셨나요?