我正在使用Xamarin(C#)编写一个Android应用程序来调用Exchange Web服务。代码设置了外出消息。我编写的代码是从标准的Windows窗体应用程序开始编写的,但是失败的是"请求无效" SOAP异常。我已经使用Fiddler捕获了请求,这似乎是一个密码问题。
Windows窗体请求是:
找到了兼容SSLv3的ClientHello握手。 Fiddler提取了以下参数。
版本:3.1(TLS / 1.0)
随机:53 B1 31 EF DD 96 01 7E 0A 0A 1F 85 60 8F 2F BD D6 77 08 2D B0 C6 52 91 BC A0 19 2F 20 08 F1
SessionID:空
扩展程序:
renegotiation_info 00
server_name
elliptic_curves secp256r1 [0x17],secp384r1 [0x18]
ec_point_formats未压缩[0x0]
密码:
[002F] TLS_RSA_AES_128_SHA
[0035] TLS_RSA_AES_256_SHA
[0005] SSL_RSA_WITH_RC4_128_SHA
[000A] SSL_RSA_WITH_3DES_EDE_SHA
[C013] TLS1_CK_ECDHE_RSA_WITH_AES_128_CBC_SHA
[C014] TLS1_CK_ECDHE_RSA_WITH_AES_256_CBC_SHA
[C009] TLS1_CK_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
[C00A] TLS1_CK_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
[0032] TLS_DHE_DSS_WITH_AES_128_SHA
[0038] TLS_DHE_DSS_WITH_AES_256_SHA
[SSL] SSL_DHE_DSS_WITH_3DES_EDE_SHA
[0004] SSL_RSA_WITH_RC4_128_MD5
压缩:
[00] NO_COMPRESSION
Android请求是这样的:
找到了兼容SSLv3的ClientHello握手。 Fiddler提取了以下参数。
版本:3.1(TLS / 1.0)
随机:53 B1 30 9C 9A A2 AE 57 A9 98 A3 C8 DF 94 E0 04 1D 3F E1 34 A8 8A DF 8B 5E 8B 60 67 96 6D 1B
SessionID:空
扩展程序:
server_name
密码:
[0035] TLS_RSA_AES_256_SHA
[002F] TLS_RSA_AES_128_SHA
[000A] SSL_RSA_WITH_3DES_EDE_SHA
[0005] SSL_RSA_WITH_RC4_128_SHA
[0004] SSL_RSA_WITH_RC4_128_MD5
[0009] SSL_RSA_WITH_DES_SHA
[0003] SSL_RSA_EXPORT_WITH_RC4_40_MD5
[0006] SSL_RSA_EXPORT_WITH_RC2_40_MD5
[0008] SSL_RSA_EXPORT_WITH_DES40_SHA
[0060]无法识别的密码 - 请参阅http://www.iana.org/assignments/tls-parameters/
[0061]无法识别的密码 - 请参阅http://www.iana.org/assignments/tls-parameters/
[0062] TLS_RSA_EXPORT1024_WITH_DES_SHA
[0064] TLS_RSA_EXPORT1024_WITH_RC4_56_SHA
压缩:
[00] NO_COMPRESSION
"无法识别的密码"消息在这里跳出来。如何解决这个问题的任何帮助都会很棒。
感谢
答案 0 :(得分:0)
无法识别这两个密码并不意味着没有可供选择的密码。除非TLS明确进一步细分,否则可能是另一个问题。
我认为你最好看一下SOAP消息。