Error SSL in WordPress Integration

it244934271

22-10-2015

Hi All,

I tried to integrating the DPS2015 with WordPress, but on the settings page I got the following error:

Screen Shot 2015-10-23 at 1.05.50 PM.png

It said the certificate Issue, but if I tested using the Procedure API without WordPress, all publications listed.

Anyone has experience with this?

Thanks,

Accepted Solutions (1)

Accepted Solutions (1)

GennadyK

07-11-2015

We had this kind of problem (SSL related) with Drupal's DPSBridge plugin on Windows. On the second thought yours is different one as it's not at the time of plugin's connection to the endpoint but rather with connection of your browser to the server's plugin configuration page over SSL. Still it is certificate related.

This was a request (with real values substituted with the ***):

$type=POST, $url=https://ims-na1.adobelogin.com/ims/token/v1?grant_type=device&client_id=***&client_secret=***&scope=...

And this was a response:

[response-body] => [response-code] => 0 [response-header] => [response-verbose] => * About to connect() to ims-na1.adobelogin.com port 443 (#0) * Trying 52.7.135.101... * connected * Connected to ims-na1.adobelogin.com (52.7.135.101) port 443 (#0) * SSL certificate problem, verify that the CA cert is OK. Details: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed * Closing connection #0 )

And how to fix this error is here:
http://stackoverflow.com/questions/6400300/https-and-ssl3-get-server-cer...

In short:
curl (that is what Drupal's DPSBridge plugin is using) used to include a list of accepted CAs, but no longer bundles ANY CA certs. So by default it'll reject all SSL certificates as unverifiable.
It's a pretty common problem in Windows (and our Drupal is on Windows). You need just to set cacert.pem to curl.cainfo.
Since PHP 5.3.7 you could do:

download http://curl.haxx.se/ca/cacert.pem and save it somewhere.
at the end of php.ini add this line (change PATH_TO to your real path, e.g. C:\PHP53\extras ) and restart Apache:

curl.cainfo = "PATH_TO\cacert.pem"

Thanks