Kolēģis jums iedod organizācijas CA sertifikātu. Requests piedāvā parametru ar nosaukumu cert. Nosaukumi izskatās kā pāris, bet tie atbild uz dažādiem jautājumiem.

IestatījumsMērķis
verifyIzvēlas uzticības materiālu, ko izmanto otrai pusei pārbaudīt
certUzrāda klienta sertifikātu ar tā privāto atslēgu, kad nepieciešama klienta autentifikācija

Apstiprinātai pārtveršanas CA Requests darbība var izvēlēties paredzēto CA pakotni:

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

Šeit routes ir lietojumprogrammas esošā starpniekservera kartēšana. Ceļam jānorāda pareizā lasāmā uzticības pakotne šim klientam. Tas nav lejupielādēts vietnes sertifikāts, kas izvēlēts tikai tāpēc, ka savienojums neizdevās.

Vides mainīgais REQUESTS_CA_BUNDLE ir vēl viens atbalstīts uzticības avots. Ja tas šķiet neefektīvs, pārbaudiet faktisko sūtīšanas ceļu; sagatavoto pieprasījumu darbplūsmas un skaidri iestatījumi var mainīt to, kā tiek apvienota vides konfigurācija.

Jums nevajadzētu būt nepieciešamai CA privātajai atslēgai

Publiskais CA sertifikāts ir tas, kas klientam nepieciešams, lai atpazītu apstiprinātu izdevēju. Tā parakstīšanas privātā atslēga ir citas puses spēcīgs noslēpums. To nevajadzētu izplatīt lietojumprogrammas lietotājiem kā daļu no parastas starpniekservera uzticības labošanas.

Klienta sertifikātu joprojām var pieprasīt konkrēts galamērķis vai cita atsevišķi konfigurēta TLS attiecības. Tas ir atsevišķa prasība, nevis kaut kas secināts no katras sertifikāta verifikācijas kļūdas.

Kad parādās nākamā kļūda, nosauciet darbību: CA faila ielāde, otras puses sertifikāta pārbaude vai klienta identitātes uzrādīšana. Faila pārvietošana starp verify un cert, līdz ziņojums mainās, nav uzticams veids, kā izvēlēties tā lomu.

Saistītie raksti