php - PDO with self signed certificates -


i'm still tryin connect pdo remote mysql database. customer provide self signed certificates, client-key.pem , client-cert.pem. certificates good, can connect remote db using mysql client. instantiate pdo object connect db.

pdodb = new pdo(   'mysql:host=customer_host_name;dbname=customer_db_name',    'my_username',    'my_password',    array(    pdo::mysql_attr_ssl_key=>'c:/apache24/htdocs/client/lib/client-key.pem',    pdo::mysql_attr_ssl_cert=>'c:/apache24/htdocs/client/lib/client-cert.pem'   )); 

i'm getting error when instantiate pdo object:

warning: pdo::__construct(): ssl operation failed code 1. openssl error messages: error:14090086:ssl routines:ssl3_get_server_certificate:certificate verify failed in c:\apache24\htdocs\customer\lib\database.php on line 17 

i think code correct i'm newbie php.

update pardon me. forgot mention didn't specify value mysql_attr_ssl_ca because customer doesn't give me one. sorry. mysql_attr_ssl_ca mandatory pdo (or mysqli)?

when generating certificates have use right "common name" each one:

ca: hostname  server: fqdn, e.g. hostname.example.com  client: somename 

the important part server certificate common name has same host connecting to, e.g. hostname.example.com.

$pdodb = new pdo(   'mysql:host=customer_host_name;dbname=customer_db_name',    'my_username',    'my_password',    array(     pdo::mysql_attr_ssl_key    => 'c:/apache24/htdocs/client/lib/client-key.pem',     pdo::mysql_attr_ssl_cert   => 'c:/apache24/htdocs/client/lib/client-cert.pem',     pdo::mysql_attr_ssl_ca     => 'c:/apache24/htdocs/client/lib/ca-cert.pem',     pdo::mysql_attr_ssl_cipher => 'camellia128-sha'   ) ); 

Comments

Popular posts from this blog

how to insert data php javascript mysql with multiple array session 2 -

multithreading - Exception in Application constructor -

windows - CertCreateCertificateContext returns CRYPT_E_ASN1_BADTAG / 8009310b -