Kolega vám dá certifikát CA organizácie. Requests ponúka parameter s názvom cert. Názvy vyzerajú ako pár, ale odpovedajú na rôzne otázky.

NastavenieÚčel
verifyVyberá materiál dôvery používaný na overenie protistrany
certPredkladá klientsky certifikát s jeho súkromným kľúčom, keď sa vyžaduje overenie klienta

Pre schválenú zachytávajúcu CA môže operácia Requests vybrať zamýšľaný balík CA:

response = requests.get(
    'https://example.com/',
    proxies=routes,
    verify='/path/to/approved-ca-bundle.pem',
    timeout=15,
)

Tu routes je existujúce mapovanie proxy v aplikácii. Cesta musí pomenovať správny čitateľný balík dôvery pre tohto klienta. Nie je to stiahnutý certifikát webovej stránky vybraný len preto, že spojenie zlyhalo.

Premenná prostredia REQUESTS_CA_BUNDLE je ďalší podporovaný vstup dôvery. Ak sa zdá neúčinná, skontrolujte skutočnú cestu odosielania; pracovné postupy pripravených požiadaviek a explicitné nastavenia môžu zmeniť, ako sa konfigurácia prostredia spája.

Nemali by ste potrebovať súkromný kľúč CA

Verejný certifikát CA je to, čo klient potrebuje na rozpoznanie schváleného vydavateľa. Jeho podpisový súkromný kľúč je mocným tajomstvom inej strany. Nemal by sa distribuovať používateľom aplikácie ako súčasť rutinnej opravy dôvery proxy.

Klientsky certifikát môže stále vyžadovať konkrétny cieľ alebo iný samostatne nakonfigurovaný vzťah TLS. To je samostatná požiadavka, nie niečo odvodené z každej chyby overenia certifikátu.

Keď sa objaví ďalšia chyba, pomenujte operáciu: načítanie súboru CA, overenie certifikátu protistrany alebo predloženie identity klienta. Presúvanie súboru medzi verify a cert, kým sa správa nezmení, nie je spoľahlivý spôsob výberu jeho úlohy.

Súvisiace články