Запросы.Сессия с клиентскими сертификатами и собственным центром сертификации.Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Запросы.Сессия с клиентскими сертификатами и собственным центром сертификации.

Сообщение Anonymous »

Вот мой код

Код: Выделить всё

os.environ['REQUESTS_CA_BUNDLE'] = os.path.join('/path/to/','ca-own.crt')
s = requests.Session()
s.cert = ('some.crt', 'some.key')

s.get('https://some.site.com')
Последняя инструкция возвращает:

Код: Выделить всё

requests.exceptions.SSLError: HTTPSConnectionPool(host='some.site.com', port=443): Max retries exceeded with url: / (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1131)')))
С завитком:

Код: Выделить всё

curl --cacert ca-own.crt --key some.key --cert some.crt https://some.site.com
возвращает обычный HTML-код.
Как я могу выполнить запросы Python. Сеанс отправляет правильные сертификаты в конечную точку?
P.S. Та же ситуация будет, если я добавлю следующее

Код: Выделить всё

s.verify = 'some.crt'
или

Код: Выделить всё

cat some.crt ca-own.crt > res.crt

Код: Выделить всё

s.verify = 'res.crt'
P.P.S.

Код: Выделить всё

cat some.crt some.key > res.pem

Код: Выделить всё

s.cert = "res.pem"

Код: Выделить всё

requests.exceptions.SSLError: HTTPSConnectionPool(host='some.site.com', port=443): Max retries exceeded with url: / (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1131)')))

Код: Выделить всё

cat ca-own.crt some.crt some.key > res.pem

Код: Выделить всё

s.cert =  "res.pem"

Код: Выделить всё

requests.exceptions.SSLError: HTTPSConnectionPool(host='some.site.com', port=443): Max retries exceeded with url: / (Caused by SSLError(SSLError(116, '[X509: KEY_VALUES_MISMATCH] key values mismatch (_ssl.c:4067)')))


Подробнее здесь: https://stackoverflow.com/questions/719 ... and-own-ca
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»