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')

Cleachd na faidhlichean ceadaichte fìor. Tha proxy-roots.pem a dearbhadh an eadragana; tha proxy-client.pem agus an iuchair phrìobhaideach cho-fhreagarrach aige ag aithneachadh a chliant seo don eadragan sin. Tha origin_tls a gleidheadh poileasaidh earbsa air leth a chinn-uidhe.

Tha sgeama https URL a phroxy riatanach airson na chiad iomlaid TLS sin. Airson targaid HTTPS, bidh urllib3 an uair sin a cur CONNECT taobh a-staigh an t-seisein TLS a-muigh agus a dèanamh TLS an làraich-lìn tron tunail.

Ma dh fheumas an làrach-lìn teisteanas cliant cuideachd, cuir air origin_tls e. Dh aithnicheadh ath-chleachdadh fèiniulachd a phroxy an sin ceangal eadar-dhealaichte.

Chan eil crathadh-làimhe TLS a-muigh aig proxy HTTP àbhaisteach a bhios a giùlan HTTPS. Tha 407 HTTP a bharrachd air leth cuideachd: chan eil teisteanas cliant a toirt seachad teisteanasan ainm-cleachdaiche/facal-faire.

Artaigilean co-cheangailte