我试图使用python来使用Web服务,以前我在Java中没有困难地使用了它。
要使用soap Web服务,我有一个扩展名为.keystore的证书。
要在python中使用此服务,我使用python request和zeep软件包,为此我使用keytool将.keystore转换为.pem。
我无法删除证书的密码,因此.pem需要密码。
这就是我在做什么:
from requests import Session
from zeep import Client
from zeep.transports import Transport
from requests.auth import HTTPBasicAuth
import requests
url = 'https://10.15.1.76:8443/ws/MyService?wsdl'
session = Session()
session.auth = HTTPBasicAuth("user","password")
transport = Transport(session=session)
client = Client(url,transport=transport)
但是我不知道如何使用密码添加证书。 我知道python3.x有一个用于ssl的类,如下所示:
from ssl import SSLContext
context = ssl.SSLContext()
context.load_cert_chain('my.pem', keyfile=None, password='password_pem')
我将不胜感激。谢谢。