[pyar] Acceder a web service SOAP con SSL

Maxi maxirobaina en gmail.com
Mie Jul 18 16:10:45 -03 2018


Hola David,

El mié., 18 jul. 2018 a las 14:12, David Arch (<daviddanielarch en gmail.com>)
escribió:

> Parece que te falta agregar el certificado de cliente.
> Parece que tenes dos cosas dando vuelta:
> 1) El server usa un cert autofirmado
> 2) El servidor pide un certificado de cliente
>
> Para 1 podes o bien agregar el cert a los certs del sistema como decís que
> ya hiciste o decirle al cliente de Python que no verifique el certificado.
>
> Para 2 tenes que poner el path al certificado de cliente en el cliente de
> Python, este certificado generalmente no es el mismo certificado que
> agregaste al sistema.
>


​Creo que por acá viene la mano. En tantas pruebas que hice omiti contar
algo importante.
En principio me dieron un certificado (.pfx​) y una contraseña. Ese
certificado es el que cargue en el navegador (en mi caso en el
administrador de certificados de Firefox). Cuando lo importe me pidió la
contraseña de cifrado.
Luego, cuando quiero acceder a la url del webseervice desde el navegador me
aparece un form "Solicitud de identificación de usuario" pidiendo que
seleccione el certificado a usar para identificarme. Luego si me dice que
la conexión no es segura y agrego la excepción.

Entonces supongo que lo que me esta faltando es indicarle a mi conexión
desde python todo esto que es en lo que estoy fallando.



> Si pones el código que estas usando además de los errores va ser más fácil
> diagnosticar el problema.
>
>
​El código no es mucho más de lo que esta en la doc de zeep

>>> from requests import Session
>>> from zeep.transports import Transport
>>> from zeep import Client
>>>
>>>
>>> session = Session()
>>> session.verify = '/home/maxi/temp/micertificado.crt'
>>>
>>> transport = Transport(session=session)
>>>
>>> client = Client('https://webservicesoap?wsdl', transport=transport)​

​Donde session.verify = '/home/maxi/temp/micertificado.crt'   es el archivo
que exporte desde el navegador.​


​Saludos​
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20180718/5cc4cc20/attachment-0001.html>


Más información sobre la lista de distribución pyar