You need to sign in to do that
Don't have an account?

Outbound message error, peer not authenticated
Hello, I am trying to setup outbound messaging from Salesforce to our webservice. I have created a webservice per the wsdl that I downloaded from Salesforce. The webservice works fine when I test it using a SOAP client, but I get the following error when Salesforce invokes it. I am using HTTPS, but not client certificates to authenticate Salesforce. Our server certificate is valid and current. What could be the cause of this error? (our webservice is built using .NET 2.0 framework, could there be a JAVA / .NET interop problem???)
javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated
Are you sure your server is not trying to request the client cert (and rejecting the one we send) ?
I don't see anything coming through on my apache access logs so I suspect the message is not being sent because the handshake fails? I'm at as loss here. Can someone please give me some tips on how to move forward?
Thanx!
Is there something I'm missing? Is there something I need to install from salesforce?
Here is the Web.XML for my service:
<web-app version="2.4" mlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<description>authenticate</description>
<display-name>authenticate</display-name>
<listener>
<listener-class>com.sun.xml.ws.transport.http.servlet.WSServletContextListener</listener-class>
</listener>
<servlet>
<description>SSO Authentication</description>
<display-name>Authenticate</display-name>
<servlet-name>AuthenticationPortType</servlet-name>
<servlet-class>com.sun.xml.ws.transport.http.servlet.WSServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>AuthenticationPortType</servlet-name>
<url-pattern>/authenticate</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>60</session-timeout>
</session-config>
</web-app>
<endpoint
name="authenticate"
interface="sso.server.AuthenticationPortType"
implementation="sso.server.AuthenticationImpl"
wsdl="WEB-INF/wsdl/AuthenticationService.wsdl"
service="{urn:authentication.soap.sforce.com}SforceAuthenticationService"
port="{urn:authentication.soap.sforce.com}AuthenticationService"
url-pattern="/authenticate" />
I followed these instructions: http://customersupport.networksolutions.com/article.php?id=722
I have these files in my chain:
A) AddTrustExternalCARoot.crt
B) UTNAddTrustServer_CA.crt
C) NetworkSolutions_CA.crt
D) com.mydomain.crt
https://www.rocketrack.com/sso/authenticate
https://www.rocketrack.com/sso/authenticate?wsdl
Code:
/usr/share/curl/curl-ca-bundle.crt. I can execute a curl on my site. I think the problem here is that Salesforce.com doesn't respect the Network Solutions CA file. So do I have to buy a new certificate or is ther e a process to get this added to the list of verified SSL authorities?
If there's a way to do this I need a little more info here. Which CA files would I use in my new hacked certificate chain file?
if the cert chain is
root -> inter 1 -> inter 2 -> your server.
and root is the only cert trusted by salesforce.com, then your webserver when asked will need to provide the certs for inter1 / inter2 and your server, not just your server (which is what it sounds like its doing). The is standard SSL stuff. If you're on apache, then see this example of setting up the cert chain.
http://www.securebusinessservices.com/help/install-certificate/apache-ssl.asp
FWIW, the output from running the openssl client is
OpenSSL> s_client -host www.rocketrack.com -port 443 -showcerts
CONNECTED(00000003)
depth=3 /C=SE/O=AddTrust AB/OU=AddTrust External TTP Network/CN=AddTrust External CA Root
verify error:num=19:self signed certificate in certificate chain
verify return:0
---
Certificate chain
0 s:/C=US/postalCode=02466/ST=MA/L=Newton/streetAddress=Suite 1-300/streetAddress=275 Grove St/O=Rocket Software, Inc./OU=IT/OU=Secure Link SSL Pro/CN=www.rocketrack.com
i:/C=US/O=Network Solutions L.L.C./CN=Network Solutions Certificate Authority
-----BEGIN CERTIFICATE-----
MIIFBjCCA+6gAwIBAgIQdR2u/ito9RJ4gK2j4HfX0TANBgkqhkiG9w0BAQUFADBi
MQswCQYDVQQGEwJVUzEhMB8GA1UEChMYTmV0d29yayBTb2x1dGlvbnMgTC5MLkMu
MTAwLgYDVQQDEydOZXR3b3JrIFNvbHV0aW9ucyBDZXJ0aWZpY2F0ZSBBdXRob3Jp
dHkwHhcNMDcwODAzMDAwMDAwWhcNMTEwODIxMjM1OTU5WjCB0DELMAkGA1UEBhMC
VVMxDjAMBgNVBBETBTAyNDY2MQswCQYDVQQIEwJNQTEPMA0GA1UEBxMGTmV3dG9u
MRQwEgYDVQQJEwtTdWl0ZSAxLTMwMDEVMBMGA1UECRMMMjc1IEdyb3ZlIFN0MR4w
HAYDVQQKExVSb2NrZXQgU29mdHdhcmUsIEluYy4xCzAJBgNVBAsTAklUMRwwGgYD
VQQLExNTZWN1cmUgTGluayBTU0wgUHJvMRswGQYDVQQDExJ3d3cucm9ja2V0cmFj
ay5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAO+dYV6kiBqupHu6YF47
zG1EGiFp4PP0VxMEs1yQymwudxlWfxZfeMEcUhGfQDepOW+AlLGZjnB/42ymigl4
pXAzkiIqFgn9GwfmL2aazEDSDQWQkTUVtduotZ2bOfsayoblGbj+b6idSO9OpOwt
lhEfsdCdy0eZrQRwf2g9fxEfAgMBAAGjggHLMIIBxzAfBgNVHSMEGDAWgBQ8QeKP
CAipTCWJjW3FOND8hYxiFzAdBgNVHQ4EFgQUcE08f8UU0m6M6e29G2MQzitSm1Mw
DgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYIKwYBBQUH
AwEGCCsGAQUFBwMCMBEGCWCGSAGG+EIBAQQEAwIGwDBrBgNVHSAEZDBiMGAGDCsG
AQQBhg4BAgEDATBQME4GCCsGAQUFBwIBFkJodHRwOi8vd3d3Lm5ldHdvcmtzb2x1
dGlvbnMuY29tL2xlZ2FsL1NTTC1sZWdhbC1yZXBvc2l0b3J5LWNwcy5qc3AwegYD
VR0fBHMwcTA2oDSgMoYwaHR0cDovL2NybC5uZXRzb2xzc2wuY29tL05ldHdvcmtT
b2x1dGlvbnNfQ0EuY3JsMDegNaAzhjFodHRwOi8vY3JsMi5uZXRzb2xzc2wuY29t
L05ldHdvcmtTb2x1dGlvbnNfQ0EuY3JsMEwGCCsGAQUFBwEBBEAwPjA8BggrBgEF
BQcwAoYwaHR0cDovL3d3dy5uZXRzb2xzc2wuY29tL05ldHdvcmtTb2x1dGlvbnNf
Q0EuY3J0MA0GCSqGSIb3DQEBBQUAA4IBAQBOfWa40GWXkiGMqaXWDeBuL6a8wETL
0iRgov85AMCnrL8OB2/GmlfbsmN91OHxcmuDN9LMFFWzKLl+uHqraIfqXf+2uNpT
oD1tYUhYQGPHfZzfZWgzXCn2yDVAeGH6ZI6qp/CTGsm2rTs4EaA/KiHSHKQdcwQk
3DnaH/gVe1NTDugrVcWw4aoUc9JwgONbJOyWiHds91KOpfMkLslInEp7N66uwPUX
GWz72tPJ29Q9scoN136wIN1pb4EbzGHoOYZcjIT63TfbJCN5LGCu5snfXeTgE6oq
UnXNWhH4Cj7QlJnkATFTPPdljNVrDY+N8mBpkVIchOf17DYGSekKuKcN
-----END CERTIFICATE-----
1 s:/C=US/O=Network Solutions L.L.C./CN=Network Solutions Certificate Authority
i:/C=US/ST=UT/L=Salt Lake City/O=The USERTRUST Network/OU=http://www.usertrust.com/CN=UTN-USERFirst-Hardware
-----BEGIN CERTIFICATE-----
MIIEpjCCA46gAwIBAgIQEOd26KZabjd+BQMG1Dwl6jANBgkqhkiG9w0BAQUFADCB
lzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2Ug
Q2l0eTEeMBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExho
dHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xHzAdBgNVBAMTFlVUTi1VU0VSRmlyc3Qt
SGFyZHdhcmUwHhcNMDYwNDEwMDAwMDAwWhcNMjAwNTMwMTA0ODM4WjBiMQswCQYD
VQQGEwJVUzEhMB8GA1UEChMYTmV0d29yayBTb2x1dGlvbnMgTC5MLkMuMTAwLgYD
VQQDEydOZXR3b3JrIFNvbHV0aW9ucyBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwggEi
MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDD3TbMg8MYVbCW2RMl0yaGSDi7
Fn/xnyn2/QPx7U0mmlbwtRoazebMhVVApLXQDcoi7z0jxn5szLyh6XxQRuC9FK1l
EsILEWlSCgeSH3NvwbrXYvDOAC40pcjmLw/sDepEYXVo5eTcgDZP2nhdUyWUlPVP
Ljpgbwym2bP2Ki4DEtUmQgdRsmRXcdwhHInHaaPm+8J7bu8Mh/tQZOhOS+/ncZuD
Y2HJMo2M7BSn5ImtPysmZOSFQvKJUOE6vhXjRSXiWsuMP+AzHjUJWoTqfl2h9ZGA
CigGt8sxQSVhiwHpVqL2Pl8v88RD9hmUdYNMoYJCOsa6xAkwpuF1AlG5XmSLAgMB
AAGjggEgMIIBHDAfBgNVHSMEGDAWgBShcl8mGyiYQ5VdBzfVhZadS9LDRTAdBgNV
HQ4EFgQUPEHijwgIqUwliY1txTjQ/IWMYhcwDgYDVR0PAQH/BAQDAgEGMBIGA1Ud
EwEB/wQIMAYBAf8CAQAwGQYDVR0gBBIwEDAOBgwrBgEEAYYOAQIBAwEwRAYDVR0f
BD0wOzA5oDegNYYzaHR0cDovL2NybC51c2VydHJ1c3QuY29tL1VUTi1VU0VSRmly
c3QtSGFyZHdhcmUuY3JsMFUGCCsGAQUFBwEBBEkwRzBFBggrBgEFBQcwAoY5aHR0
cDovL3d3dy51c2VydHJ1c3QuY29tL2NhY2VydHMvVVROQWRkVHJ1c3RTZXJ2ZXJf
Q0EuY3J0MA0GCSqGSIb3DQEBBQUAA4IBAQBoq/zvgGsYsrCzo0WJy1PFouavCKn9
/w9JrP/kn9dBfKPFouiq4FchLcOqfAxMKAt59O5MMq15Dn6iXjQYT99U8b1ofOPT
10ZebWTC922IgnMM75mF6qnvMkrwg59zkQykPisxUaZijxWE+aY6EjA/2m74zMcZ
kg9c9P4X8ZUIR1IsUI/om6XurnAziZGC/jCqdnZZ12wY0ysSWx0oHXhx9s02oukH
SEQ751duggqtxYrd6FO0ca8T0gadN21TP4o1CPr+ohbmuW9cVjnWxqrvGWfOE8W4
lQX7CkTJn6lAJUsyEa8H/gjVQnHp4VOLFR/dKgeVcCRvZF7Tt5AuiyHY
-----END CERTIFICATE-----
2 s:/C=US/ST=UT/L=Salt Lake City/O=The USERTRUST Network/OU=http://www.usertrust.com/CN=UTN-USERFirst-Hardware
i:/C=SE/O=AddTrust AB/OU=AddTrust External TTP Network/CN=AddTrust External CA Root
-----BEGIN CERTIFICATE-----
MIIEPDCCAySgAwIBAgIQSEus8arH1xND0aJ0NUmXJTANBgkqhkiG9w0BAQUFADBv
MQswCQYDVQQGEwJTRTEUMBIGA1UEChMLQWRkVHJ1c3QgQUIxJjAkBgNVBAsTHUFk
ZFRydXN0IEV4dGVybmFsIFRUUCBOZXR3b3JrMSIwIAYDVQQDExlBZGRUcnVzdCBF
eHRlcm5hbCBDQSBSb290MB4XDTA1MDYwNzA4MDkxMFoXDTIwMDUzMDEwNDgzOFow
gZcxCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJVVDEXMBUGA1UEBxMOU2FsdCBMYWtl
IENpdHkxHjAcBgNVBAoTFVRoZSBVU0VSVFJVU1QgTmV0d29yazEhMB8GA1UECxMY
aHR0cDovL3d3dy51c2VydHJ1c3QuY29tMR8wHQYDVQQDExZVVE4tVVNFUkZpcnN0
LUhhcmR3YXJlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsffDOD+0
qH/POYJRZ9Btn9L/WPPnnyvsDYlUmbk4mRb34CF5SMK7YXQSlh08anLVPBBnOjnt
KxPNZuuVCTOkbJex6MbswXV5nEZejavQav25KlUXEFSzGfCa9vGxXbanbfvgcRdr
ooj7AN/+GjF3DJoBerEy4ysBBzhuw6VeI7xFm3tQwckwj9vlK3rTW/szQB6g1ZgX
vIuHw4nTXaCOsqqq9o5piAbF+okh8widaS4JM5spDUYPjMxJNLBpUb35Bs1orWZM
vD6sYb0KiA7I3z3ufARMnQpea5HW7sftKI2rTYeJc9BupNAeFosU4XZEA39jrOTN
SZzFkvSrMqFIWwIDAQABo4GqMIGnMB8GA1UdIwQYMBaAFK29mHo0tCb3+sQmVO8D
veAky1QaMB0GA1UdDgQWBBShcl8mGyiYQ5VdBzfVhZadS9LDRTAOBgNVHQ8BAf8E
BAMCAQYwDwYDVR0TAQH/BAUwAwEB/zBEBgNVHR8EPTA7MDmgN6A1hjNodHRwOi8v
Y3JsLnVzZXJ0cnVzdC5jb20vQWRkVHJ1c3RFeHRlcm5hbENBUm9vdC5jcmwwDQYJ
KoZIhvcNAQEFBQADggEBADzse+Cuow6WbTDXhcbSaFtFWoKmNA+wyZIjXhFtCBGy
dAkjOjUlc1heyrl8KPpH7PmgA1hQtlPvjNs55Gfp2MooRtSn4PU4dfjny1y/HRE8
akCbLURW0/f/BSgyDBXIZEWT6CEkjy3aeoR7T8/NsiV8dxDTlNEEkaglHAkiD31E
NREU768A/l7qX46w2ZJZuvwTlqAYAVbO2vYoC7Gv3VxPXLLzj1pxz+0YrWOIHY6V
9+qV5x+tkLiECEeFfyIvGh1IMNZMCNg3GWcyK+tc0LL8blefBDVekAB+EcfeEyrN
pG1FJseIVqDwavfY5/wnfmcI0L36tsNhAgFlubgvz1o=
-----END CERTIFICATE-----
3 s:/C=SE/O=AddTrust AB/OU=AddTrust External TTP Network/CN=AddTrust External CA Root
i:/C=SE/O=AddTrust AB/OU=AddTrust External TTP Network/CN=AddTrust External CA Root
-----BEGIN CERTIFICATE-----
MIIENjCCAx6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBvMQswCQYDVQQGEwJTRTEU
MBIGA1UEChMLQWRkVHJ1c3QgQUIxJjAkBgNVBAsTHUFkZFRydXN0IEV4dGVybmFs
IFRUUCBOZXR3b3JrMSIwIAYDVQQDExlBZGRUcnVzdCBFeHRlcm5hbCBDQSBSb290
MB4XDTAwMDUzMDEwNDgzOFoXDTIwMDUzMDEwNDgzOFowbzELMAkGA1UEBhMCU0Ux
FDASBgNVBAoTC0FkZFRydXN0IEFCMSYwJAYDVQQLEx1BZGRUcnVzdCBFeHRlcm5h
bCBUVFAgTmV0d29yazEiMCAGA1UEAxMZQWRkVHJ1c3QgRXh0ZXJuYWwgQ0EgUm9v
dDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALf3GjPm8gAELTngTlvt
H7xsD821+iO2zt6bETOXpClMfZOfvUq8k+0DGuOPz+VtUFrWlymUWoCwSXrbLpX9
uMq/NzgtHj6RQa1wVsfwTz/oMp50ysiQVOnGXw94nZpAPA6sYapeFI+eh6FqUNzX
mk6vBbOmcZSccbNQYArHE504B4YCqOmoaSYYkKtMsE8jqzpPhNjfzp/haW+710LX
a0Tkx63ubUFfclpxCDezeWWkWaCUN/cALw3CknLa0Dhy2xSoRcRdKn23tNbE7qzN
E0S3ySvdQwAl+mG5aWpYIxG3pzOPVnVZ9c0p10a3CitlttNCbxWyuHv77+ldU9U0
WicCAwEAAaOB3DCB2TAdBgNVHQ4EFgQUrb2YejS0Jvf6xCZU7wO94CTLVBowCwYD
VR0PBAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wgZkGA1UdIwSBkTCBjoAUrb2YejS0
Jvf6xCZU7wO94CTLVBqhc6RxMG8xCzAJBgNVBAYTAlNFMRQwEgYDVQQKEwtBZGRU
cnVzdCBBQjEmMCQGA1UECxMdQWRkVHJ1c3QgRXh0ZXJuYWwgVFRQIE5ldHdvcmsx
IjAgBgNVBAMTGUFkZFRydXN0IEV4dGVybmFsIENBIFJvb3SCAQEwDQYJKoZIhvcN
AQEFBQADggEBALCb4IUlwtYj4g+WBpKdQZic2YR5gdkeWxQHIzZlj7DYd7usQWxH
YINRsPkyPef89iYTx4AWpb9a/IfPeHmJIZriTAcKhjW88t5RxNKWt9x+Tu5w/Rw5
6wwCURQtjr0W4MHfRnXnJK3s9EK0hZNwEGe6nQY1ShjTK3rMUUKhemPR5ruhxSvC
Nr4TDea9Y355e6cJDUCrat2PisP29owaQgVR1EX1n6diIWgVIEM8med8vSTYqZEX
c4g/VhsxOBi0cQ+azcgOno4uG+GMmIPLHzHxREzGBHNJdmAPx/i9F4BrLunMTA5a
mnkPIAou1Z5jJh5VkpTYghdae9C8x49OhgQ=
-----END CERTIFICATE-----
---
Server certificate
subject=/C=US/postalCode=02466/ST=MA/L=Newton/streetAddress=Suite 1-300/streetAddress=275 Grove St/O=Rocket Software, Inc./OU=IT/OU=Secure Link SSL Pro/CN=www.rocketrack.com
issuer=/C=US/O=Network Solutions L.L.C./CN=Network Solutions Certificate Authority
---
No client certificate CA names sent
---
SSL handshake has read 5227 bytes and written 316 bytes
---
New, TLSv1/SSLv3, Cipher is DHE-RSA-AES256-SHA
Server public key is 1024 bit
SSL-Session:
Protocol : TLSv1
Cipher : DHE-RSA-AES256-SHA
Session-ID: A89FDD97DF3946B1B95DEB7633BEBBC93E00844A3EC0009E7B3EB1C381F17632
Session-ID-ctx:
Master-Key: 169FE780227A4767A12237A1968E3D2EE90CB01F51119692EBD358116401594AB419BF23B1627C681F609C2020984BAE
Key-Arg : None
Start Time: 1188512563
Timeout : 300 (sec)
Verify return code: 19 (self signed certificate in certificate chain)
Please let me know what advice your colleagues might have.
Thanks
Do you think it would be worthwhile to purchase a different cert? Or is the config problem I have likely to be true for any cert that I purchase? Are there any certs that work out-of-the-box w/salesforce? It's not a problem for us to buy another one if that will fix the problem.
My only concern with getting a different cert is that you're just going to end up in the same spot. The cert you have should work as far as i can see so far, I need to get confirmation that the CA root you're using really is in the list of ones we support.
From her email:
"Prior to activating this functionality, there are some details I need you to be aware of. The functionality does require some advanced setup to function correctly. During both the initial implementation and the actual use of the functionality, we cannot provide direct support for this aspect. If you have any additional questions or concerns, please let me know. Please let me know if you would like to continue with the activation of this functionality for your organization. "
The fingerprint of the cert I thought was valid is:
Issuer: C=SE, O=AddTrust AB, OU=AddTrust External TTP Network, CN=AddTrust External CA Root
1D:35:54:04:85:78:B0:3F:42:42:4D:BF:20:73:0A:3F
This came in the zip file from network solutions but was not part of the chain file they gave us to install. I added this myself to see if it would help but it did nothing.
I think the problem is that the intermediate certs that are part of the chain are not recognized. I can send you all the certs we have if that would help?
I created a new case for this under my SF account:
01415659
If you can escalate this please escalate 01415659.
Cheers
Code:
Same thing goes for curl and openssl. If you don't tell them where to find the public certs it doesn't know where to look. It only has a select few built in.
I also noticed that salesforce does not have any internediary certs in it's chain so this must be the way to do it.
Cheers
I can run a simple SOAP client that has only the root certificate installed int the local keychain.
I can 'curl -v' my SOAP listener and get valid feedback
I can openssl s_client -connect -showcerts and see the entire chain.
The only explanation I have is that the cert is not installed on the machine that is making the call to my server.
This is the root cert is here:
http://wiki.apexdevnet.com/index.php/Outbound_Messaging_SSL_CA_Certificates#Entry:_addtrustexternalca
Please let me know what else I can do to troubleshoot this very frustrating problem.
I just ran into that issue, that SF OM throws an Exception. It looks like SF doesn't trust our certificate, even though multiple certs and the root cert are trusted according to the SF dev wiki. We got our certificate from RapidSSL, which is signed by GeoTrust Global CA which is signed by Equifax Secure CA.
It should be trusted automaticly. Any Ideas what can cause the problem here?
Thanks.
We are getting the same error message when sending an outbound message to our SOA Webservice. Our Certificate is issued by Entrust (2048)
CN = Entrust Certification Authority - L1C
OU = (c) 2009 Entrust, Inc.
OU = www.entrust.net/rpa is incorporated by reference
O = Entrust, Inc.
C = US
SHA1
Can you help us with this issue?
thank you