python X509 zeep - PullRequest
       23

python X509 zeep

0 голосов
/ 06 марта 2020

У меня проблемы с аутентификацией X509 при использовании Python. Я использую библиотеку Zeep и сталкиваюсь с двумя разными ошибками.

Первая:

OpenSSL.SSL.Error: [('Подпрограммы SSL', 'tls_process_server_certificate' , «проверка сертификата не удалась»)]

Я получаю эту ошибку, когда использую этот код:

from zeep.wsse.username import UsernameToken
from zeep.wsse.signature import Signature
signature = Signature(key_file='path/Myprivate.pem', certfile='path/Mycert.pem') 
username_token = UsernameToken(username, pwd)
client = Client(wsdl=WSDL,wsse=[username_token, signature])

Чтобы исправить первую ошибку, я добавил Trasport с Session.verify = False

from zeep import  Client
from requests import Session
from zeep.transports    import  Transport
from zeep.wsse.signature import Signature
from zeep.wsse.username import UsernameToken
session = Session()
session.verify = False
signature = Signature(key_file='path/Myprivata.pem', certfile='path/Mycert.pem') 
username_token = UsernameToken(username, pwd)
client = Client(wsdl=WSDL,wsse=[username_token, signature], transport=Transport(session=session))

Используя второй фрагмент, я получил сообщение об ошибке от сервера партнера (500 недействительно XML).

Считаете ли вы этот код правильным и проблема на стороне партнера?

...