Boto3, botocore'un Config nesnesi aracılığıyla açık bir proxy ilkesi kabul eder:

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)

Haritanın anahtarları hedef protokolü seçer. Değerler proxy uç noktasını tanımlar. Bu örnek hem HTTP hem de HTTPS hizmet isteklerini tek bir HTTP yönlendirme proxy'si üzerinden gönderir. Proxy hesabı olmadan izin verilen genel bir AWS uç noktası testi için HTTP proxy listesinden bir HTTP girdisi bu iki URL'yi sağlayabilir.

Bir https:// değeri bunun yerine istemciden TLS bağlantısı kabul eden bir proxy dinleyicisi gerektirir. Yalnızca HTTPS anahtarına uyması için değerin şemasını değiştirmeyin.

Config.proxies o istemci için HTTP_PROXY ve HTTPS_PROXY ortam değişkenlerinden gelen proxy seçimini geçersiz kılar. Diğer istemciler kendi Config nesneleriyle oluşturulabilir; bunun oluşturulması süreç genelinde bir ortam değişkenini değiştirmez.

Bunu bir uygulamaya eklerken bölge ve yeniden deneme ilkesi gibi diğer gerekli istemci seçeneklerini koruyun. AWS kimlik bilgileri uygulamanın normal kimlik bilgisi yapılandırmasında kalır. EndpointCreator veya botocore'un başka bir özel yönteminin değiştirilmesi gerekmez.

Bir HTTPS proxy'sine TLS bağlantısı için Config'te proxy_ca_bundle ve proxy_client_cert gibi proxies_config seçenekleri de vardır. Bunlar proxy bağlantısındaki güven ve istemci sertifikası kimlik doğrulamasıyla ilgilidir. AWS hizmet uç noktasını seçmekten veya AWS API isteklerini imzalamaktan ayrıdır.

İlgili makaleler