Boto3 приема явна политика за прокси чрез обекта Config на botocore:

import boto3
from botocore.config import Config

network = Config(proxies={
    'http': 'http://proxy.example:8080',
    'https': 'http://proxy.example:8080',
})
s3 = boto3.client('s3', config=network)

Ключовете на картата избират протокола на местоназначението. Стойностите описват крайната точка на прокси. Този пример изпраща заявки както към HTTP, така и към HTTPS услуги през едно HTTP прокси за препращане. За разрешен тест на публична крайна точка на AWS без акаунт за прокси, HTTP запис от списъка с HTTP прокси може да предостави тези два URL адреса.

Стойност https:// вместо това би изисквала слушател на прокси, който приема TLS връзка от клиента. Не променяйте схемата на стойността само за да съвпадне с ключа HTTPS.

Config.proxies отменя избора на прокси от променливите на средата HTTP_PROXY и HTTPS_PROXY за този клиент. Други клиенти могат да се създават със свои собствени обекти Config; създаването на този не променя променлива на средата за целия процес.

Запазете всички други необходими опции на клиента, като регион и политика за повторни опити, когато вграждате това в приложение. Идентификационните данни за AWS остават в нормалната конфигурация за идентификационни данни на приложението. Не е необходима промяна на EndpointCreator или друг частен метод на botocore.

За TLS връзка към HTTPS прокси Config има и опции proxies_config като proxy_ca_bundle и proxy_client_cert. Те се отнасят до доверието и удостоверяването с клиентски сертификат по прокси връзката. Те са отделни от избора на крайна точка на услуга на AWS или подписването на заявки към AWS API.

Подобни статии