具有客户端证书的G型RFC-TLS握手错误

2020-09-06 17:55发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


专家,

我需要使用" G"类型的RFC连接第三方门户,并使用客户端证书进行身份验证。 我在STRUST的SAPSSLC(SSL客户端证书标准)中添加了客户端身份验证证书。 当我尝试测试连接时,正在建立连接,但是在身份验证期间,它会收到SSL握手错误。 我已在ICM中启用了3级跟踪,并进行了分析,但没有明确的原因找到为什么客户端证书在第三方门户网站端被拒绝的原因。

我知道,第三方提供商必须将ABAP系统添加为受信任的系统,但是如果第三方提供商已经这样做,则尚未获得此确认。 看来SAP没有从SAPSSLC.PSE向3rd Party发送正确的客户端证书? 有人对此有意见吗?

我在ICM 3级跟踪中遇到以下错误:

hr 42792] CCL [SSL]:Cli-000018D4:服务器请求的客户端身份验证 [shr3_decode_certificate_request] [Thr 42792] CCL [SSL]:Cli-000018D4:服务器支持3种客户端证书类型 )[ssl3_decode_certificate_request] [Thr 42792] CCL [SSL]:Cli-000018D4:证书类型<0>:rsa_sign(1)[ssl3_log_certificate_type] [Thr 42792] CCL [SSL]:Cli-000018D4:证书类型<1>:dss_sign (2)[ssl3_log_certificate_type] [Thr 42792] CCL [SSL]:Cli-000018D4:证书类型<2>:ecdsa_sign(64)[ssl3_log_certificate_type] [Thr 42792] CCL [SSL]:Cli-000018D4:服务器已发送 0个用于客户端身份验证的受信任CA名称 [ssl3_decode_certificate_request] [Thr 42792] SSL:SSL_read(netin = 35)握手,已处理= 35 [Thr 42792] SSL:SiRecv(sock = 27340)== 0( SI_OK)(in = 1,最大值= 16)[Thr 42792] CCL [SSL]:Cli-000018D4:组装证书消息:服务器未提交CA名称。 [ssl3_check_for_ca] [Thr 42792] CCL [ SSL]:Cli-000018D4:发送自己的c 证书 [ssl3_output_cert_chain] [Thr 42792] CCL [SSL]:Cli-000018D4:自己的TLS证书:[Thr 42792]主题:CN = ,O = <组织名称>,ST =" Vendersgade 28,1. tv。",L =城市,[Thr 42792]发行者:CN = GlobalSign扩展验证CA-SHA256-G3,O = GlobalSign nv-sa,C = BE [Thr 42792]序列号:28:A2: D9:0A:4D:A2:31:19:57 :: E6 [Thr 42792] [ssl3_output_cert_chain] [Thr 42792] CCL [SSL]:Cli-000018D4:CA证书:[Thr 42792]主题:CN = GlobalSign扩展验证 CA-SHA256-G3,O = GlobalSign nv-sa,C = BE [Thr 42792]颁发者:CN = GlobalSign,O = GlobalSign,OU = GlobalSign根CA-R3 [Thr 42792]序列号:48:A4:02: DD:27:92:0D:A2:08:D1:99:7B [Thr 42792] [ssl3_output_cert_chain] [Thr 42792] SSL:SSL_read(netin = 9)握手,已处理= 9 [Thr 42792] SSL:SiSend(sock = 27340)== 0(SI_OK)(out = 3378 of 3378)[Thr 42792] SSL:SiRecv(sock = 27340)== 13(SI_ETIMEOUT)(in = 0,max = 16)[Thr 42792]> SSL: SiSelect(sock = 27340,evt = R,timeout = 79502 ms)[Thr 42792] 05月16日星期四: 33:29:738 2019 [Thr 42792] (收到来自对等方的致命TLS握手失败警报消息):收到了[Thr 42792] CCL [ SSL]:Cli-000018D4:错误0xA0600266:[Thr 42792]从对等体[Thr 42792]接收到致命的TLS握手失败警报消息[Thr 42792] [Thr 42792] SSL:SSL_read(netin = 7)握手 ,已处理= 7 [Thr 42792] SSL_get_state()== 0x21d0" TLS读取完成A" [Thr 42792] ***从SSL_read()到secussl_read()期间发生错误== SSL_ERROR_SSL [Thr 42792] cli SSL会话PSE" S: \ usr \ sap \ \ DVEBMGS00 \ sec \ SAPSSLC.pse" [Thr 42792]会话密码套件= 214:PFS:HIGH:MEDIUM :: EC_P256:EC_HIGH [Thr 42792]客户端SSL_CTX 0000014B8720D960 pvflags = 960(TLSv1.2 ,TLSv1.1,TLSv1.0,SSLv3)[Thr 42792] secussl_read:SSL_read()失败(536875072/0x20001040)[Thr 42792] =>"已收到 来自对等方的致命TLS握手失败警报消息" [Thr 42792] >> Secu-SSL Errorstack的开始---------- >> [Thr 42792] 0x20001040 SAPCRYPTOLIB SSL_read [Thr 42792] SSL API错误[ [Thr 42792]从对等体[Thr 42792]接收到致命的TLS握手失败警报消息[Thr 42792]从对等体[Thr 42792]接收到致命的TLS握手失败警报消息[Thr 42792] 0xa0600266 SSL ssl3_connect [Thr 42792]接收到致命消息 来自对等方的TLS握手失败警报消息[Thr 42792] 0xa0600266 SSL ssl3_read_bytes [Thr 42792]从对等方[Thr 42792]接收到致命的TLS握手失败警报消息<< Secu-SSL Errorstack结束-------- -[Thr 42792] 服务器的受信任CA列表(来自初始CertRequest消息):[ Thr 42792]#1" CN = GlobalSign,O = GlobalSign,OU = GlobalSign根CA-R3 " [Thr 42792]#2" CN =警告-虚假列表-收到无效的证书请求" [Thr 42792]目标主机名=" <第三方门户URL>" [Thr 42792] SSL NI-hdl 122:local = :61772对等体= <第三方门户IP>:443 [Thr 42792] <<-错误:SapSSLSessionStartNB(sssl_hdl = 14b886f9eb0)== SSSLERR_SSL_READ [Thr 42792]->> SapSSLSessionLastError(sssl_hdl = 14b886f9eb0,&rc = 47edb9ecec,&rc_name = 47edb9ed00,&rc_desc = 47edb9ecf8,&rc_detail = 47 [Thr 42792] DpSesGetWorkerType:return workerType DIA for T20_U945S包含请求20的T0_U945 [Thr:42] 0 DIA [Thr 42792] DpSesGetTasks:为T20_U945_M0找到1个打开的任务[Thr 42792] DpSesGetWorkerType:返回T20_U945 [Thr 42792]的workerType DIA:RqQQueueGetNumberOfRequests:队列67中的队列包含0个类型为DIA [Thr 42P]的请求:Tp_p945 T20_U945_M1的0个打开的任务[Thr 42792] ***错误=>与<第三方门户URL>:443的SSL握手失败:SSSLERR_SSL_READ(-58)[Thr 42792] SAPCRYPTO:SSL_read()失败[Thr 42792] [Thr 42792 ] SapSSLSessionStartNB()== SSSLERR_SSL_READ [Thr 42792] SSL:SSL_read()失败 d(536875072/0x20001040)[Thr 42792] =>"从对等方接收到致命的TLS握手失败警报消息" [Thr 42792] SSL:SSL_get_state()== 0x21d0" TLS读取完成A" [Thr 42792] SSL NI- hdl 122:本地= :61772对等体= <第三方网关IP>:443 [Thr 42792] cli SSL会话PSE" S:\ usr \ sap \ \ DVEBMGS00 \ sec \ SAPSSLC.pse" [Thr 42792]会话ciphersuites = 214:PFS:HIGH:MEDIUM :: EC_P256:EC_HIGH [Thr 42792]客户端SSL_CTX 0000014B8720D960 pvflags = 960(TLSv1.2,TLSv1.1,TLSv1.0,SSLv3)[Thr 42792]目标主机名=" <第三方门户URL>" [Thr 42792] >> SecuSSL ErrStack:---- [Thr 42792] 0x20001040 SAPCRYPTOLIB SSL_read [Thr 42792] SSL API错误[Thr 42792]从对等方收到致命的TLS握手失败警报消息[ [Thr 42792] 0xa0600266 SSL ssl3_read_bytes [Thr 42792]从对等体[Thr 42792]接收到致命的TLS握手失败警报消息[Thr 42792] 0xa0600266 SSL ssl3_connect [Thr 42792]从对等体[Thr 42792]接收到致命的TLS握手失败警报消息 _read_bytes [Thr 42792]从对等体[Thr 42792] << [Thr 42792] [Thr 42792]收到致命的TLS握手失败警报消息,[001b6ef3} {root-id = 000D3A3DE7111EE99DF7B0F0DFE5894F} [icxxconn.c 2419] [Thr 42792] GUI T20_U945_M0,001,<用户ID>,COMPUTER12,时间= 09:33:28,W6,程序= RSHTTPPIN,高优先级,内存= 0,任务[Thr 42792]角色:客户端,协议:HTTPS,本地::61772,对等方:<3rd party portal IP>:443

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


专家,

我需要使用" G"类型的RFC连接第三方门户,并使用客户端证书进行身份验证。 我在STRUST的SAPSSLC(SSL客户端证书标准)中添加了客户端身份验证证书。 当我尝试测试连接时,正在建立连接,但是在身份验证期间,它会收到SSL握手错误。 我已在ICM中启用了3级跟踪,并进行了分析,但没有明确的原因找到为什么客户端证书在第三方门户网站端被拒绝的原因。

我知道,第三方提供商必须将ABAP系统添加为受信任的系统,但是如果第三方提供商已经这样做,则尚未获得此确认。 看来SAP没有从SAPSSLC.PSE向3rd Party发送正确的客户端证书? 有人对此有意见吗?

我在ICM 3级跟踪中遇到以下错误:

hr 42792] CCL [SSL]:Cli-000018D4:服务器请求的客户端身份验证 [shr3_decode_certificate_request] [Thr 42792] CCL [SSL]:Cli-000018D4:服务器支持3种客户端证书类型 )[ssl3_decode_certificate_request] [Thr 42792] CCL [SSL]:Cli-000018D4:证书类型<0>:rsa_sign(1)[ssl3_log_certificate_type] [Thr 42792] CCL [SSL]:Cli-000018D4:证书类型<1>:dss_sign (2)[ssl3_log_certificate_type] [Thr 42792] CCL [SSL]:Cli-000018D4:证书类型<2>:ecdsa_sign(64)[ssl3_log_certificate_type] [Thr 42792] CCL [SSL]:Cli-000018D4:服务器已发送 0个用于客户端身份验证的受信任CA名称 [ssl3_decode_certificate_request] [Thr 42792] SSL:SSL_read(netin = 35)握手,已处理= 35 [Thr 42792] SSL:SiRecv(sock = 27340)== 0( SI_OK)(in = 1,最大值= 16)[Thr 42792] CCL [SSL]:Cli-000018D4:组装证书消息:服务器未提交CA名称。 [ssl3_check_for_ca] [Thr 42792] CCL [ SSL]:Cli-000018D4:发送自己的c 证书 [ssl3_output_cert_chain] [Thr 42792] CCL [SSL]:Cli-000018D4:自己的TLS证书:[Thr 42792]主题:CN = ,O = <组织名称>,ST =" Vendersgade 28,1. tv。",L =城市,[Thr 42792]发行者:CN = GlobalSign扩展验证CA-SHA256-G3,O = GlobalSign nv-sa,C = BE [Thr 42792]序列号:28:A2: D9:0A:4D:A2:31:19:57 :: E6 [Thr 42792] [ssl3_output_cert_chain] [Thr 42792] CCL [SSL]:Cli-000018D4:CA证书:[Thr 42792]主题:CN = GlobalSign扩展验证 CA-SHA256-G3,O = GlobalSign nv-sa,C = BE [Thr 42792]颁发者:CN = GlobalSign,O = GlobalSign,OU = GlobalSign根CA-R3 [Thr 42792]序列号:48:A4:02: DD:27:92:0D:A2:08:D1:99:7B [Thr 42792] [ssl3_output_cert_chain] [Thr 42792] SSL:SSL_read(netin = 9)握手,已处理= 9 [Thr 42792] SSL:SiSend(sock = 27340)== 0(SI_OK)(out = 3378 of 3378)[Thr 42792] SSL:SiRecv(sock = 27340)== 13(SI_ETIMEOUT)(in = 0,max = 16)[Thr 42792]> SSL: SiSelect(sock = 27340,evt = R,timeout = 79502 ms)[Thr 42792] 05月16日星期四: 33:29:738 2019 [Thr 42792] (收到来自对等方的致命TLS握手失败警报消息):收到了[Thr 42792] CCL [ SSL]:Cli-000018D4:错误0xA0600266:[Thr 42792]从对等体[Thr 42792]接收到致命的TLS握手失败警报消息[Thr 42792] [Thr 42792] SSL:SSL_read(netin = 7)握手 ,已处理= 7 [Thr 42792] SSL_get_state()== 0x21d0" TLS读取完成A" [Thr 42792] ***从SSL_read()到secussl_read()期间发生错误== SSL_ERROR_SSL [Thr 42792] cli SSL会话PSE" S: \ usr \ sap \ \ DVEBMGS00 \ sec \ SAPSSLC.pse" [Thr 42792]会话密码套件= 214:PFS:HIGH:MEDIUM :: EC_P256:EC_HIGH [Thr 42792]客户端SSL_CTX 0000014B8720D960 pvflags = 960(TLSv1.2 ,TLSv1.1,TLSv1.0,SSLv3)[Thr 42792] secussl_read:SSL_read()失败(536875072/0x20001040)[Thr 42792] =>"已收到 来自对等方的致命TLS握手失败警报消息" [Thr 42792] >> Secu-SSL Errorstack的开始---------- >> [Thr 42792] 0x20001040 SAPCRYPTOLIB SSL_read [Thr 42792] SSL API错误[ [Thr 42792]从对等体[Thr 42792]接收到致命的TLS握手失败警报消息[Thr 42792]从对等体[Thr 42792]接收到致命的TLS握手失败警报消息[Thr 42792] 0xa0600266 SSL ssl3_connect [Thr 42792]接收到致命消息 来自对等方的TLS握手失败警报消息[Thr 42792] 0xa0600266 SSL ssl3_read_bytes [Thr 42792]从对等方[Thr 42792]接收到致命的TLS握手失败警报消息<< Secu-SSL Errorstack结束-------- -[Thr 42792] 服务器的受信任CA列表(来自初始CertRequest消息):[ Thr 42792]#1" CN = GlobalSign,O = GlobalSign,OU = GlobalSign根CA-R3 " [Thr 42792]#2" CN =警告-虚假列表-收到无效的证书请求" [Thr 42792]目标主机名=" <第三方门户URL>" [Thr 42792] SSL NI-hdl 122:local = :61772对等体= <第三方门户IP>:443 [Thr 42792] <<-错误:SapSSLSessionStartNB(sssl_hdl = 14b886f9eb0)== SSSLERR_SSL_READ [Thr 42792]->> SapSSLSessionLastError(sssl_hdl = 14b886f9eb0,&rc = 47edb9ecec,&rc_name = 47edb9ed00,&rc_desc = 47edb9ecf8,&rc_detail = 47 [Thr 42792] DpSesGetWorkerType:return workerType DIA for T20_U945S包含请求20的T0_U945 [Thr:42] 0 DIA [Thr 42792] DpSesGetTasks:为T20_U945_M0找到1个打开的任务[Thr 42792] DpSesGetWorkerType:返回T20_U945 [Thr 42792]的workerType DIA:RqQQueueGetNumberOfRequests:队列67中的队列包含0个类型为DIA [Thr 42P]的请求:Tp_p945 T20_U945_M1的0个打开的任务[Thr 42792] ***错误=>与<第三方门户URL>:443的SSL握手失败:SSSLERR_SSL_READ(-58)[Thr 42792] SAPCRYPTO:SSL_read()失败[Thr 42792] [Thr 42792 ] SapSSLSessionStartNB()== SSSLERR_SSL_READ [Thr 42792] SSL:SSL_read()失败 d(536875072/0x20001040)[Thr 42792] =>"从对等方接收到致命的TLS握手失败警报消息" [Thr 42792] SSL:SSL_get_state()== 0x21d0" TLS读取完成A" [Thr 42792] SSL NI- hdl 122:本地= :61772对等体= <第三方网关IP>:443 [Thr 42792] cli SSL会话PSE" S:\ usr \ sap \ \ DVEBMGS00 \ sec \ SAPSSLC.pse" [Thr 42792]会话ciphersuites = 214:PFS:HIGH:MEDIUM :: EC_P256:EC_HIGH [Thr 42792]客户端SSL_CTX 0000014B8720D960 pvflags = 960(TLSv1.2,TLSv1.1,TLSv1.0,SSLv3)[Thr 42792]目标主机名=" <第三方门户URL>" [Thr 42792] >> SecuSSL ErrStack:---- [Thr 42792] 0x20001040 SAPCRYPTOLIB SSL_read [Thr 42792] SSL API错误[Thr 42792]从对等方收到致命的TLS握手失败警报消息[ [Thr 42792] 0xa0600266 SSL ssl3_read_bytes [Thr 42792]从对等体[Thr 42792]接收到致命的TLS握手失败警报消息[Thr 42792] 0xa0600266 SSL ssl3_connect [Thr 42792]从对等体[Thr 42792]接收到致命的TLS握手失败警报消息 _read_bytes [Thr 42792]从对等体[Thr 42792] << [Thr 42792] [Thr 42792]收到致命的TLS握手失败警报消息,[001b6ef3} {root-id = 000D3A3DE7111EE99DF7B0F0DFE5894F} [icxxconn.c 2419] [Thr 42792] GUI T20_U945_M0,001,<用户ID>,COMPUTER12,时间= 09:33:28,W6,程序= RSHTTPPIN,高优先级,内存= 0,任务[Thr 42792]角色:客户端,协议:HTTPS,本地::61772,对等方:<3rd party portal IP>:443

付费偷看设置
发送
9条回答
微wx笑
1楼 · 2020-09-06 18:40.采纳回答

您好 Isaias Freitas Ger Munsters

首先,非常感谢您的宝贵意见和无限的帮助。 我无法解决问题,然后确认以这种方式配置第三方站点,使其仅接受.pfx证书(私钥和公钥)。 因此,我必须通过导航到Environment-> SSL client identities在STRUST事务中创建新的客户端身份。 然后在此处创建新条目,它将在STRUST事务左侧自动创建新文件夹。 我使用sapgenpse命令行工具从.PFX创建了.PSE文件,并将.PSE文件加载到了新创建的文件夹中。

ABAP团队在呼叫该站点时已进行编码,以从新的SSL客户端身份文件夹中加载证书。 通话成功。

非常感谢您的帮助:)

谢谢

Pradeep

CJones
2楼-- · 2020-09-06 18:21

嗨,迈克尔,

我设置与2384290相同(默认配置文件中的参数,但sidadm/SAPServiceSID用户的ENV中未设置)。 我发布的日志具有支持SSLV3到TLS 1.2的密码套件(测试目的是我启用了所有密码,但根据说明2384290恢复了密码)。

还有其他原因吗?

谢谢

Pradeep

悻福寶寶
3楼-- · 2020-09-06 18:44

Hello Pradeep,

服务器发送了0个用于客户端身份验证的受信任CA名称

因此,ICM端的SSL库不知道它必须发送以进行身份​​验证的客户端证书。

是否设置了参数" icm/HTTPS/client_sni_enabled = true"? 也许服务器没有发送CA列表,因为ICM没有发送SNI信息。 但这只是一个"疯狂的猜测"。

Geferson Hess ,有什么暗示吗? :-)

致谢,

伊萨尼亚语

SAP小黑
4楼-- · 2020-09-06 18:32

Hello Pradeep,

请注意 510007 ,设置表示:

"仅作为绝望的手段,您应考虑使用以下参数值重新启用旧的SSLv3协议以与非常老的通信对等体互操作: ssl/ciphersuites = 199:PFS:HIGH:MEDIUM :: EC_P256:EC_HIGH
ssl/client_ciphersuites = 214:PFS:HIGH:MEDIUM :: EC_P256:EC_HIGH"

但是我还没有其他想法。 抱歉。

关于迈克尔

SAP小黑
5楼-- · 2020-09-06 18:21

icm-logs-level3-new.txt

您好 Isaias Freitas Geferson Hess

非常感谢您的帮助。 实际上,我已经在默认配置文件中设置了icm/HTTPS/client_sni_enabled = TRUE并重新启动了ICM才能生效。 我再次尝试,但仍然没有运气。 我已按照SAP注释510007(启用TLS 1.0,TLS 1.1和TLS 1.2)设置了密码套件。 请参考所附的屏幕截图。 我尚未为sidadm和SAPServiceSID设置密码套件ENV。 这是必需的吗?

第三方网站正在非SAP系统上运行。

请参阅随附的最新日志。 非常感谢您的帮助。

谢谢

Pradeep

浮生未央
6楼-- · 2020-09-06 18:45

嗨,迈克尔,

是的,我将其设置为启用SSLv3,但已还原 背部。 无论如何,谢谢:)

Isaias Freitas 您可以在这里提供帮助吗:)非常感谢

谢谢

Pradeep

软件心理学工程师
7楼-- · 2020-09-06 18:33

不客气!

我很高兴它已修复:-), 并感谢您与社区分享解决方案:o)

一周热门 更多>