gerando cert para uso com pedidos python recebendo erro PEM lib

Eu tenho um aplicativo que estou fazendo certificados de auto-assinatura para usar a documentação aqui .

O aplicativo carrega esse keystore em uma configuração de jetty e é carregado corretamente e recebo um aviso de uma certificação não confiável ao navegar no site.

Então eu quero usar o python para se conectar a ele e eu tentei todas as variações de gerar um certificado, pem, etc. nada que eu faço me conecta. Simplesmente fazendo o seguinte –

import requests requests.get('https://servername:8443', cert=('path\ \to\\cert\\app.cert', '\\\\path\\to\\keystore\\keystore')) 

Me dá o seguinte traceback –

 Traceback (most recent call last): File "", line 1, in  File "C:\Python27\lib\site-packages\requests\api.py", line 69, in get return request('get', url, params=params, **kwargs) File "C:\Python27\lib\site-packages\requests\api.py", line 50, in request response = session.request(method=method, url=url, **kwargs) File "C:\Python27\lib\site-packages\requests\sessions.py", line 465, in request resp = self.send(prep, **send_kwargs) File "C:\Python27\lib\site-packages\requests\sessions.py", line 573, in send r = adapter.send(request, **kwargs) File "C:\Python27\lib\site-packages\requests\adapters.py", line 431, in send raise SSLError(e, request=request) requests.exceptions.SSLError: [SSL] PEM lib (_ssl.c:2580) 

cert in requests é usado para certificados de site do cliente, não para o armazenamento de CA. Use o parâmetro verify para especificar o arquivo CA, por exemplo:

 requests.get('https://www.example.com', verify='/etc/ssl/certs/ca-certificates.crt') 
    Intereting Posts