在Python中从curl复制“ --connect-to”

时间:2019-09-18 22:25:18

标签: python ssl python-requests ssl-certificate aiohttp

从命令行中,我能够成功执行以下命令:

curl --cacert <cacert> --cert <cert> --connect-to ::1.2.3.4: https://some-identity.com:443/endpoint

我这样做是为了使请求最终到达1.2.3.4地址(从路由角度来看),但是所有SSL握手都使用some-identity.com地址进行。我必须这样做,因为不幸的是,正在使用的some-identity.com地址对使用中的SSL证书进行了签名,但是服务器的专用IP是1.2.3.4

我正在尝试使用aiohttp(最好是)或requests,但是我找不到相应的实用程序来做到这一点。

aiohttp中,我看到我可以传递SSLContext(在ssl包中)对象,但是不幸的是,我似乎无法在{可以动态设置的{1}}对象。

对于SSLContext库,似乎没有像我使用requests那样覆盖/更改主机的选项。

是否还有另一种方法可以通过Python库进行此操作?最后一个放弃的选择是通过Python本身简单地使用curl命令,但这不是首选。

0 个答案:

没有答案