import ssl
import urllib3

proxy_tls = ssl.create_default_context(cafile='proxy-roots.pem')
proxy_tls.load_cert_chain('proxy-client.pem', 'proxy-client.key')
origin_tls = ssl.create_default_context()

with urllib3.ProxyManager(
    'https://proxy.example:8443',
    proxy_ssl_context=proxy_tls,
    ssl_context=origin_tls,
    timeout=urllib3.Timeout(connect=5, read=15),
) as http:
    response = http.request('GET', 'https://service.example/data')

ប្រើឯកសារដែលបានអនុម័តពិតប្រាកដ។ proxy-roots.pem ផ្ទៀងផ្ទាត់អ្នកសម្របសម្រួល; proxy-client.pem និងសោឯកជនដែលត្រូវគ្នាកំណត់អត្តសញ្ញាណអតិថិជននេះចំពោះអ្នកសម្របសម្រួលនោះ។ origin_tls រក្សាគោលនយោបាយទុកចិត្តដាច់ដោយឡែករបស់គោលដៅ។

គ្រោងការ https នៃ URL proxy គឺចាំបាច់សម្រាប់ ការផ្លាស់ប្តូរ TLS ដំបូង នោះ។ សម្រាប់គោលដៅ HTTPS urllib3 បន្ទាប់មកផ្ញើ CONNECT នៅក្នុងសម័យ TLS ខាងក្រៅ ហើយអនុវត្ត TLS គេហទំព័រតាមរយៈផ្លូវរូងក្រោមដី។

ប្រសិនបើគេហទំព័រក៏ត្រូវការវិញ្ញាបនបត្រអតិថិជនដែរ សូមដាក់វានៅលើ origin_tls។ ការប្រើអត្តសញ្ញាណ proxy ឡើងវិញនៅទីនោះនឹងផ្ទៀងផ្ទាត់ការតភ្ជាប់ផ្សេង។

proxy HTTP ធម្មតាដែលផ្ទុក HTTPS មិនមានការចាប់ដៃ TLS ខាងក្រៅទេ។ HTTP 407 បន្ថែមក៏ដាច់ដោយឡែកដែរ៖ ការផ្តល់វិញ្ញាបនបត្រអតិថិជនមិនផ្តល់ព័ត៌មានសម្គាល់ឈ្មោះអ្នកប្រើ/ពាក្យសម្ងាត់ទេ។

អត្ថបទពាក់ព័ន្ធ