Your Web News in One Place

Help Webnuz

Referal links:

Sign up for GreenGeeks web hosting
April 4, 2023 07:17 am GMT

Python requests zerinde sertifika kullanm

Python'n request ktphanesinde alrken zellikle self-signed sertifikalar ile sorunlar yaandnda muhtemelen sistem geneline eklediiniz bir sertifikann Python request ktphanesinde kullanlmadn grebilirsiniz.

Bunun rnei iin aadaki gibi bir Python kodu yazarak balayabiliriz.

import requestsresponse = requests.get(url="https://en.wikipedia.org/wiki/Zonguldak")

Bu kod sonucu aadaki gibi bir hata alnmaktadr.

requests.exceptions.SSLError: HTTPSConnectionPool(host='en.wikipedia.org', port=443): Max retries exceeded with url: /wiki/Zonguldak (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self-signed certificate in certificate chain (_ssl.c:997)')))

Bu hatadan kurtulmann bir yolu aadaki satrda "verify = False" parametresinin eklenmesi olarak internette zm bulunabilmektedir. Fakat bu admla birlikte sertifika kontroln kontrol edilmemesini salamaktasnz.

response = requests.get(url="https://en.wikipedia.org/wiki/Zonguldak",verify = False)

Bu nedenle Debian tabanl sistemlerde bu sorunun en gzel zm aadaki gibi uygulanabilmektedir. RPM tabanl sistemlerde ise ca-certificates.crt yerine ca-bundle.crt kullanlmaktadr.

import requestsimport osos.environ['REQUESTS_CA_BUNDLE'] = os.path.join('/etc/ssl/certs/','ca-certificates.crt')response = requests.get(url="https://en.wikipedia.org/wiki/Zonguldak")

Bu ekilde altrldnda artk istenilen sunucuya SSL ile balant kurabilirsiniz. Tabi ki sistem genelinde ilgili sertifikann eklenmi olmas gerekeceini unutmayalm.


Original Link: https://dev.to/aciklab/python-requests-uzerinde-sertifika-kullanimi-oan

Share this article:    Share on Facebook
View Full Article

Dev To

An online community for sharing and discovering great ideas, having debates, and making friends

More About this Source Visit Dev To