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
Post a Comment