如何将 HTTP/HTTPS 代理凭据传递给 boto3?

How to pass HTTP/HTTPS proxy credentials to boto3?

如何在不使用环境变量的情况下将代理用户名和密码传递给 boto3?

有一个,但是问答集中在url/port规范上。我坐在公司代理后面,还需要指定用户凭据;但是我不允许将我的登录凭据放在环境变量中。

我必须将 username/password 读入内存,但是一旦我将它们输入到 boto3 的哪个位置,它们会被输入吗?

提前感谢您的考虑和回复。

描述了 boto3 的代理配置 here

没有记录传递用户名和密码,但是如果您查看底层代码 (httpsession.py),它将从 URL 中提取用户名和密码,例如 https://username:password@example.com:443,并且使用 basic auth.

插入 Proxy-Authorization header

如果这对你的公司有效,你应该没问题。但是,某些代理需要不同的授权方法,这将失败。

在这种情况下,您需要与您的 IT 团队讨论您公司的确切代理机制。他们可能会建议 work-arounds,例如 运行 您自己的代理来处理身份验证。或者他们可能允许您使用避免使用代理的云开发工具。

我提到这一点是因为您的部署环境——无论是云还是本地数据中心——可能不使用身份验证代理。这意味着期望使用此类代理编写的代码将无法在生产部署中运行。