Должен ли я установить CURLOPT_SSLKEY, если для CURLOPT_SSLCERT задан файл с сертификатом и закрытым ключом? - PullRequest
0 голосов
/ 18 мая 2018

Сервер дал мне сертификат клиента customer.pem, который я должен использовать.Если я открою его в текстовом редакторе, он будет содержать как клиентский сертификат, так и клиентский ключ:

-----BEGIN RSA PRIVATE KEY-----
here is private key
-----END RSA PRIVATE KEY-----

-----BEGIN CERTIFICATE-----
here is certificate
-----END CERTIFICATE-----

Но в соответствии с PHP curl doc есть две отдельные опции для установки сертификата клиента изакрытый клиентский ключ:

CURLOPT_SSLCERT The name of a file containing a PEM formatted certificate;
CURLOPT_SSLKEY  The name of a file containing a private SSL key;

Имея файл customer.pem с сертификатом и закрытым ключом - могу ли я установить опцию CURLOPT_SSLCERT?Будет ли CURL автоматически читать клиентский ключ и использовать его правильно?Как следующее:

$curl_opt = array(
    CURLOPT_SSL_VERIFYHOST => 2,
    CURLOPT_SSL_VERIFYPEER => 1,
    CURLOPT_SSLCERT => $cert_dir . 'customer.pem',
    CURLOPT_CAINFO => $cert_dir . 'ca.crt',
    CURLOPT_SSLCERTPASSWD => $extra_settings['certificate_password'],
);

1 Ответ

0 голосов
/ 19 мая 2018

Если CURLOPT_SSLCERT указывает на файл PEM, который содержит как сертификат, так и ключ, то вам вообще не нужно использовать / set CURLOPT_SSLKEY.

...