'n Kollega gee jou die organisasie se CA-sertifikaat. Requests bied 'n parameter genaamd cert. Die name lyk soos 'n pasmaat, maar hulle beantwoord verskillende vrae.

InstellingDoel
verifyKies vertrouensmateriaal wat gebruik word om die eweknie te verifieer
certWys 'n kliëntsertifikaat, met sy private sleutel, wanneer kliëntverifikasie vereis word

Vir 'n goedgekeurde onderskeppings-CA kan 'n Requests-bewerking die beoogde CA-bondel kies:

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

Hier is routes die toepassing se bestaande volmagtoewysing. Die pad moet die korrekte leesbare vertrouensbondel vir hierdie kliënt noem. Dit is nie 'n afgelaaide webwerfsertifikaat wat bloot gekies word omdat die verbinding misluk het nie.

Die omgewingsveranderlike REQUESTS_CA_BUNDLE is nog 'n ondersteunde vertrouensinsette. Kontroleer die werklike stuurpad as dit ondoeltreffend lyk; voorbereide versoek-werksvloei en eksplisiete instellings kan verander hoe omgewingskonfigurasie saamgevoeg word.

Jy behoort nie die CA se private sleutel nodig te hê nie

Die publieke CA-sertifikaat is wat 'n kliënt nodig het om 'n goedgekeurde uitgewer te herken. Sy ondertekenende private sleutel is 'n ander party se kragtige geheim. Dit behoort nie as deel van 'n roetine-proxyvertrouensoplossing aan toepassingsgebruikers versprei te word nie.

'n Kliëntsertifikaat kan steeds deur 'n bepaalde bestemming of 'n ander afsonderlik gekonfigureerde TLS-verhouding vereis word. Dit is 'n aparte vereiste, nie iets wat uit elke sertifikaatverifikasiefout afgelei word nie.

Wanneer die volgende fout verskyn, noem die bewerking: laai 'n CA-lêer, verifieer 'n eweknie-sertifikaat, of wys 'n kliëntidentiteit. Om 'n lêer tussen verify en cert te skuif totdat die boodskap verander, is nie 'n betroubare manier om sy rol te kies nie.

Verwante artikels