Desarrollo en php. Comunicar con un WebService usando un certificado de cliente
Hola que tal. Bueno, tengo unos problemas con un desarrollo en php, a ver si alguien me puede echar un cable.
La parte con la que tengo problemas consiste en comunicarse con un web service de vodafone para activar tarjetas SIM. Nuestro sitio web esta desarrollado en php en un servidor Apache.
A parte de puntuar la contestación, estoy dispuesto incluso a acordar algo de remuneración económica si es necesario ya que pienso que hay que tener ciertos conocimientos técnicos y que te voy a hacer múltiples preguntas...pero quiero solucionarlo... Hago diseño y programación web, pero en estos momentos no quiero ni puedo aprender a crear certificados y a como usarlos ya que tengo una montaña de tareas y trabajos que realizar como para perder varios días con esto. Es un tema un tanto técnico con lo que imagino que necesitaras o bien haberlo desarrollado alguna vez antes y haber solucionado el problema o bien conocer bastante del tema. Los técnicos de vodafone básicamente me han remitido a Google para solucionarlo (genial, así también monto yo una asistencia al usuario)
Si prefieres que te eche un cable, a cambio de tu ayuda, con algo de diseño web, programación, sin problema... Estoy abierto a todo tipo de posibilidades.
Y por que uso todoexpertos para esto si puedo usar otros foros o buscar a alguien por internet para que me haga ese trabajo? Pues por que las veces que he usado todo expertos me ha parecido una solución genial, y me da confianza, y si tengo que remunerar, prefiero hacerlo aquí, que perder 3 días en localizar a alguien, comprobar si realmente sabe hacer lo que le estoy pidiendo... Y al final han pasado 10 días y no se si lo tengo solucionado.
Bueno los diferentes problemas con los que me encuentro son los siguientes:
Problema 1: Tengo un certificado cliente en formato .pfx. Según tengo entendido Apache necesita certificados en formato .pem. Como convierto mi certificado de pfx a pem? Supuestamente tengo el password de ese certificado y he intentado convertirlo con openSSL, pero nada de nada.
Problema 2: Como instalo ese certificado en mi servidor, para a la hora de hacer la llamada al WebService lo use. Según tengo entendido lo puedo configurar en el php.ini. Si es así, veo la luz e este punto.
Problema 3: Como hago la llamada en php. Actualmente estoy usando la librerías curl, y recibo contestaciones... A veces 'SSL certificate problem: self signed certificate in certificate chain', otras 'error setting certificate verify locations:CAfile:ws-prepago-RSA.pfx CApath: none',y algunos otros mensajes... Según las opciones que vayan usando en curl_setopt().
Puedo pasarte el código que estoy usando, donde cre que lo interesante es ver las opciones que uso con curl_setop().
Espero contestaciones.
Un saludo a todos y gracias de antemano.