Cita:
Empezado por musinho
Aupa,
Estoy intentando agregar un certificado tanto por postman como por cUrl en PHP:
Pero todo el rato recibo la siguiente respuesta:
Parámetro clientcert no indicado en la cabecera de la petición. Estoy utilizando un certificado de ejemplo de la documentación "PertsonaFisikoa_PersonaFísica.p12" convertiendola a .pem y enviandola como decía bilbur por curl. Alguien puede decirme que estoy haciendo mal?
Eskerrik asko!!
|
Hola buenas yo lo que hago es pasar el p12 a crt.pem y key.pem por terminal
y luego los incluyo en la cabecera en php junto con la contraseña te digo los pasos que no me deja poner enlaces y luego el codigo php.
Código PHP:
openssl pkcs12 -in path.p12 -out certificado.crt.pem -clcerts -nokeys
openssl pkcs12 -in path.p12 -out clave.key.pem -nocerts -nodes
Después de esto tendras un certificado.crt.pem y una fichero clave.key.pem
Una vez compleatdo lo anterior, los incluyes en las cabeceras php del siguiente modo.
Código PHP:
curl_setopt($soap_do, CURLOPT_SSLCERTTYPE, 'PEM');
curl_setopt($soap_do, CURLOPT_SSLCERTPASSWD, 'Contraseña de Tu Certificado');
curl_setopt($soap_do, CURLOPT_SSLCERT, 'Ruta donde hayas guardado certificado.crt.pem');
curl_setopt($soap_do, CURLOPT_SSLKEY, 'Ruta donde hayas guardado clave.key.pem');
Espero que te vaya oso ondo después de ver esto.
Un saludo.