Python Requests: mae pecynnau CA yn perthyn yn verify, nid yn cert
Rhowch ddeunydd ymddiriedaeth CA a gymeradwywyd yn y ffurfweddiad dilysu yn lle trin gwall tystysgrif fel cais am allwedd breifat cleient.
Mae cydweithiwr yn rhoi tystysgrif CA y sefydliad i chi. Mae Requests yn cynnig paramedr o'r enw cert. Mae'r enwau'n edrych fel pâr, ond maent yn ateb cwestiynau gwahanol.
| Gosodiad | Pwrpas |
|---|---|
verify | Dewis deunydd ymddiriedaeth a ddefnyddir i ddilysu'r cymar |
cert | Cyflwyno tystysgrif cleient, gyda'i allwedd breifat, pan fo angen dilysu cleient |
Ar gyfer CA rhyng-gipio a gymeradwywyd, gall gweithrediad Requests ddewis y pecyn CA a fwriedir:
response = requests.get(
'https://example.com/',
proxies=routes,
verify='/path/to/approved-ca-bundle.pem',
timeout=15,
)Yma routes yw mapio dirprwy presennol y cymhwysiad. Rhaid i'r llwybr enwi'r pecyn ymddiriedaeth cywir y gellir ei ddarllen ar gyfer y cleient hwn. Nid yw'n dystysgrif gwefan a lawrlwythwyd ac a ddewiswyd yn syml oherwydd bod y cysylltiad wedi methu.
Mae'r newidyn amgylchedd REQUESTS_CA_BUNDLE yn fewnbwn ymddiriedaeth arall a gefnogir. Gwiriwch y llwybr anfon gwirioneddol os yw'n ymddangos yn aneffeithiol; gall llifau gwaith ceisiadau parod a gosodiadau penodol newid sut y cymysgir ffurfweddiad amgylchedd.
Ni ddylech fod angen allwedd breifat y CA
Y dystysgrif CA gyhoeddus yw'r hyn y mae cleient ei angen i adnabod dyroddwr cymeradwy. Mae ei allwedd breifat lofnodi yn gyfrinach bwerus i barti arall. Ni ddylid ei dosbarthu i ddefnyddwyr y cymhwysiad fel rhan o atgyweiriad ymddiriedaeth dirprwy arferol.
Gall tystysgrif cleient fod yn ofynnol o hyd gan gyrchfan benodol neu berthynas TLS arall a ffurfweddwyd ar wahân. Gofyniad ar wahân yw hwnnw, nid rhywbeth a gasglwyd o bob gwall dilysu tystysgrif.
Pan fydd y gwall nesaf yn ymddangos, enwch y gweithrediad: llwytho ffeil CA, dilysu tystysgrif cymar, neu gyflwyno hunaniaeth cleient. Nid yw symud ffeil rhwng verify a cert nes i'r neges newid yn ffordd ddibynadwy o ddewis ei rôl.