Boto3 prihvaća eksplicitnu politiku proxyja kroz botocore objekt Config:

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)

Ključevi karte biraju protokol odredišta. Vrijednosti opisuju završnu točku proxyja. Ovaj primjer šalje i HTTP i HTTPS zahtjeve usluga kroz jedan HTTP forward proxy. Za dopušteni test javne AWS završne točke bez proxy računa, HTTP unos s popisa HTTP proxyja može dati ta dva URL-a.

Vrijednost https:// bi umjesto toga zahtijevala proxy poslužitelj slušatelja koji prihvaća TLS vezu od klijenta. Ne mijenjajte shemu vrijednosti samo da bi odgovarala ključu HTTPS.

Config.proxies nadjačava odabir proxyja iz varijabli okruženja HTTP_PROXY i HTTPS_PROXY za taj klijent. Drugi se klijenti mogu graditi s vlastitim Config objektima; izgradnja ovoga ne mijenja varijablu okruženja na razini procesa.

Sačuvajte sve druge potrebne opcije klijenta, poput regije i politike ponovnog pokušaja, kada ovo ugrađujete u aplikaciju. AWS vjerodajnice ostaju u uobičajenoj konfiguraciji vjerodajnica aplikacije. Nije potrebna izmjena EndpointCreator ili neke druge privatne botocore metode.

Za TLS vezu s HTTPS proxyjem, Config ima i opcije proxies_config kao što su proxy_ca_bundle i proxy_client_cert. One se odnose na povjerenje i autentifikaciju klijentskog certifikata na proxy vezi. Odvojene su od odabira AWS završne točke usluge ili potpisivanja AWS API zahtjeva.

Povezani članci