Boto3 క్లయింట్కు స్పష్టమైన ప్రాక్సీ మ్యాప్ ఇవ్వండి
botocore లోని అంతర్భాగాలను మార్చకుండా మార్గాలను ఎంచుకోవడానికి botocore Config.proxies ను క్లయింట్ కన్స్ట్రక్టర్కు పంపండి.
Boto3, botocore యొక్క 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)
మ్యాప్ కీలు గమ్య ప్రోటోకాల్ను ఎంచుకుంటాయి. విలువలు ప్రాక్సీ ఎండ్పాయింట్ను వివరిస్తాయి. ఈ ఉదాహరణ HTTP మరియు HTTPS సేవా అభ్యర్థనలను ఒకే HTTP ఫార్వర్డ్ ప్రాక్సీ ద్వారా పంపుతుంది. ప్రాక్సీ ఖాతా లేకుండా అనుమతించబడిన పబ్లిక్ AWS ఎండ్పాయింట్ పరీక్ష కోసం HTTP ప్రాక్సీ జాబితా నుండి ఒక HTTP ఎంట్రీ ఆ రెండు URL లను ఇవ్వగలదు.
https:// విలువకు బదులుగా క్లయింట్ నుండి TLS కనెక్షన్ను అంగీకరించే ప్రాక్సీ శ్రోత అవసరమవుతుంది. కేవలం HTTPS కీతో సరిపోయేందుకు విలువ స్కీమ్ను మార్చవద్దు.
Config.proxies ఆ క్లయింట్ కోసం HTTP_PROXY మరియు HTTPS_PROXY పర్యావరణ చరాల నుండి ప్రాక్సీ ఎంపికను భర్తీ చేస్తుంది. ఇతర క్లయింట్లను వాటి స్వంత Config ఆబ్జెక్ట్లతో నిర్మించవచ్చు; దీన్ని నిర్మించడం ప్రక్రియ-వ్యాప్త పర్యావరణ చరాన్ని మార్చదు.
దీన్ని అప్లికేషన్లో చేర్చేటప్పుడు ప్రాంతం మరియు పునఃప్రయత్న విధానం వంటి ఇతర అవసరమైన క్లయింట్ ఎంపికలను కాపాడుకోండి. AWS ఆధారాలు అప్లికేషన్ యొక్క సాధారణ ఆధారాల కాన్ఫిగరేషన్లోనే ఉంటాయి. EndpointCreator లేదా botocore యొక్క మరో ప్రైవేట్ పద్ధతిని మార్చాల్సిన అవసరం లేదు.
HTTPS ప్రాక్సీకి TLS కనెక్షన్ కోసం Config లో proxy_ca_bundle మరియు proxy_client_cert వంటి proxies_config ఎంపికలు కూడా ఉన్నాయి. ఇవి ప్రాక్సీ కనెక్షన్పై విశ్వాసం మరియు క్లయింట్ సర్టిఫికెట్ ప్రమాణీకరణకు సంబంధించినవి. ఇవి AWS సేవా ఎండ్పాయింట్ ఎంపిక లేదా AWS API అభ్యర్థనల సంతకం నుండి వేరుగా ఉంటాయి.