У меня проблемы с аутентификацией 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).
Считаете ли вы этот код правильным и проблема на стороне партнера?