Я использую запросы для подключения к REST API, и у меня есть пакет сертификатов, а также ключ .pem, который я использую для аутентификации, кто я с API.Сертификаты и код у меня работают на моей машине с Ubuntu, поэтому я знаю, что сертификаты хороши.
Я столкнулся с подобной проблемой некоторое время назад, когда настраивал ее в Linux, и возникало исключение, когда я помещал эти сертификаты в etc / pki / tls / certs.Когда я переместил эти сертификаты в etc / ssl / certs, все работало отлично.
Чтобы было ясно, я хэшировал каталог с этими сертификатами, хотя я, честно говоря, не уверен, какова важность хеширования.
Итак, мой вопрос: где я должен поместить эти сертификаты в Windows?
Вот фрагмент кода:
import requests
private_key = '\path\to\private\key.pem'
cert_bundle = '\path\to\bundle'
url = 'https://www.securedsite.com/api-entry'
session = requests.Session()
session.cert = private_key
session.verify = cert_bundle
try:
resp = session.post(url)
except:
# Exception
Где у меня в настоящее время есть мои сертификаты в Windows:
'C: \ stuff \ admin \ private \ core_admin.pem'
'C: \ stuff \ admin \ certs \'
Программное обеспечениеверсии:
- Windows 10
- Python 3.6.3
- запросы 2.18.4
- openssl 1.0.2l
Для справки, машина linux:
- Ubuntu 16.04.1 4.13.0-39-generic
- Python 3.6.3
- запросы 2.18.4
- openssl 1.0.2l
В коде я использую pathlibs Path, чтобы построить путь, чтобы я мог переключаться между linux и windows, и все работаетна Linux.Я думаю, что мне просто нужно руководство о том, где разместить свои сертификаты.