import requests
from azure.core.pipeline.transport import RequestsTransport
from azure.storage.blob import BlobServiceClient

with requests.Session() as session:
    session.trust_env = False
    session.proxies["https"] = "socks5h://proxy.example:1080"
    transport = RequestsTransport(session=session, session_owner=False)
    with BlobServiceClient(
        account_url=account_url,
        credential=credential,
        transport=transport,
    ) as client:
        pass

pass च्या जागी इच्छित Blob क्रिया करा, ॲप्लिकेशनचे account_url आणि credential वापरून. Requests ची वैकल्पिक SOCKS अवलंबित्वे आधीच उपस्थित असावीत. socks5h गंतव्य DNS प्रॉक्सीला सोपवते. सार्वजनिकरित्या पोहोचण्यायोग्य Blob एंडपॉइंटसाठी, जिथे सार्वजनिक मध्यस्थांना परवानगी आहे, SOCKS5 प्रॉक्सी सूची सत्राच्या प्रॉक्सी URL साठी उमेदवार पुरवते.

Requests च्या वातावरण एकत्रीकरण नियंत्रित करण्यासाठी या सत्रावर trust_env सेट करा. RequestsTransport सत्र तयार करताना वातावरण आरंभीकरण लागू करते, आधीचे सत्र दिल्यावर नाही. स्पष्ट false मूल्य प्रॉक्सी वातावरण इनपुटला हा मार्ग बदलण्यापासून प्रतिबंधित करते.

या निवडीमुळे वातावरण-आधारित CA निवड देखील अक्षम होते. आवश्यक असल्यास, प्रत्यक्ष सेवेसाठी आवश्यक रूट्ससह connection_verify="/path/to/ca-bundle.pem" RequestsTransport ला द्या.

Blob क्लायंट बाह्य सत्र संदर्भापूर्वी बंद होतो. session_owner=False मालकी त्या बाह्य ब्लॉककडे ठेवते. स्वतंत्रपणे तयार केलेल्या टोकन क्रेडेन्शियलचे दुसरे HTTP वाहतूक असू शकते; त्याच्या प्राप्तीसाठी SOCKS आवश्यक असल्यास ते देखील कॉन्फिगर करा.

संबंधित लेख