Darlle a un cliente de Boto3 un mapa de proxy explícito
Pase Config.proxies de botocore ao construtor do cliente para elixir rutas sen modificar as entranas de botocore.
Boto3 acepta unha política de proxy explícita mediante o obxecto Config de 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)
As claves do mapa elixen o protocolo de destino. Os valores describen o punto final do proxy. Este exemplo envía as solicitudes de servizo HTTP e HTTPS por un único proxy HTTP de reenvío. Para unha proba permitida dun punto final público de AWS sen conta de proxy, unha entrada HTTP da lista de proxies HTTP pode fornecer eses dous URL.
Un valor https:// requiriría no canto un oínte de proxy que acepte unha conexión TLS do cliente. Non cambie o esquema do valor só para coincidir coa clave HTTPS.
Config.proxies anula a selección de proxy das variables de contorno HTTP_PROXY e HTTPS_PROXY para ese cliente. Outros clientes pódense construír cos seus propios obxectos Config; construír este non cambia unha variable de contorno de todo o proceso.
Conserve calquera outra opción necesaria do cliente, como a rexión e a política de reintentos, ao integrar isto nunha aplicación. As credenciais de AWS permanecen na configuración habitual de credenciais da aplicación. Non fai falta modificar EndpointCreator nin outro método privado de botocore.
Para unha conexión TLS a un proxy HTTPS, Config tamén ten opcións proxies_config como proxy_ca_bundle e proxy_client_cert. Refírense á confianza e á autenticación con certificado de cliente na conexión do proxy. Son independentes de elixir o punto final do servizo de AWS ou de asinar solicitudes da API de AWS.