技术文章 - CS324873
由于 TLSv1.3 握手后行为发生改变,Windchill 与 ThingWorx Navigate 连接失败,并出现错误“SSL_verify_client_post_handshake:未收到扩展名”
已修改: 05-Aug-2025
适用于
- Windchill PDMLink 11.0 M030-CPS19 to 12.1.2.4
- Windchill Navigate (formerly ThingWorx Navigate) 8.5.0 to 10.0
- ThingWorx Platform 8.5 to 10.0
- Java 11
- Apache 2.4.36+ with OpenSSL 1.1.1 (required for TLSv1.3 support)
说明
- ptc-windchill-integration-connector在ThingWorx Composer中的监控中显示失败状态
- 成功登录ThingWorx Composer或Windchill Navigate后显示空白页
- ptc-windchill-integration-connector ValidateConnection服务失败,错误代码为403-Forbidden :
- 由于 TLSv1.3 握手后行为发生改变,Windchill 与 Thingworx Navigate 连接失败
- Windchill 进行 CAC PKI 身份验证时,身份验证失败,错误代码为 403 Forbidden
- 浏览器错误:
Forbidden - You don't have permission to access this resource. Reason: Cannot perform Post-Handshake Authentication
- 对于Windchill ,将OpenSSL更新到 1.1.1x 版本后, Windchill Apache [开箱即用] 将在 Chrome 和 Firefox 浏览器中使用 TLSv1.3;但是 Chrome 和 Firefox 不支持握手后身份验证
- 在ThingWorx Navigate中执行GetEndpointDefinition 服务时 配置了 Windchill 身份验证(Windchill 作为 IdP)的连接失败, ThingWorx Navigate中的浏览器出现错误
- 此行为在所有浏览器中都会发生
- 将ThingWorx Java 从 Oracle JDK 更改为 Amazon Corretto JDK(或反之亦然)后,HTTP 操作失败,状态为 [403 - 禁止]错误
- 在Thingworx 中搜索部件时出错,导航如下 -
We can’t complete your request due to connection problems
- <ThingworxStorage>/logs/ApplicationLog.log中出现错误:
Unable to execute service GetEndpointDefinition on WindchillSwaggerConnectorThing: Your route exchange has failed. HTTP operation failed with status [403 - Forbidden]
- 错误 <Windchill>/HTTPServer/logs/error.log:
[ssl:error] [pid 18516:tid 3016] [client <IP Address>:<Port>] AH10158: cannot perform post-handshake authentication
[ssl:error] [pid 18516:tid 3016] SSL Library Error: error:14268117:SSL routines:SSL_verify_client_post_handshake:extension not received
- <Windchill>/HTTPServer/logs/access.log 中出现错误:
<IP Address> - - [TIME/DATE] "GET /Windchill/sslClientAuth/servlet/rest/swagger.json?wt.effectiveUid=Administrator HTTP/1.1" 403 258 0- <ThingworxNavigate>\IRLogs\IntegrationRuntime-<serial>.log 中出现错误:
[ClientProcessor-4] ERROR c.t.i.r.IntegrationEngine - Exchange process failed with exception thrown : Your route exchange has failed. HTTP operation failed with status [403 - Forbidden] java.lang.RuntimeException: Your route exchange has failed. HTTP operation failed with status [403 - Forbidden] at com.twx.integration.route.exceptions.ExceptionHelper.convertToRuntimeException(ExceptionHelper.java:77) at com.twx.integration.route.IntegrationEngine.dispatchRoute(IntegrationEngine.java:159) at com.twx.integration.client.things.IntegrationRuntimeServer.Invoke(IntegrationRuntimeServer.java:72) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at com.thingworx.common.processors.ReflectionProcessor.processService(ReflectionProcessor.java:261) at com.thingworx.communications.client.things.VirtualThing.invokeService(VirtualThing.java:1120) at com.thingworx.communications.client.things.VirtualThing.handleServiceRequest(VirtualThing.java:1028) at com.thingworx.communications.client.ConnectedThingClient.handleRequest(ConnectedThingClient.java:315) at com.thingworx.communications.client.processor.ClientProcessorTask.run(ClientProcessorTask.java:55) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829)
这是文章 324873 的 PDF 版本,可能已过期。最新版本 CS324873