2016-09-26 15 views
2

Twisted (16.3) 및 Treq (15.1)를 사용하여 Python (2.7)에서 비동기 요청을합니다.SSL 인증서 확인 사용 안 함 Twisted Agents

HTTPS를 통한 일부 요청에 문제가 있습니다. 그들에게 요청을 할 때

일부 사이트

따라서 유효하지 않은 인증서를 가지고,이 얻을 :

twisted.python.failure.Failure OpenSSL.SSL.Error 

가 내 클라이언트가 인증없이 또는 자체 서명 인증서를 포함한 모든 서버를 신뢰합니다.

클라이언트에서 인증서 검사를 비활성화하려면 어떻게합니까?

이 질문은 나의 본질적으로 동일하다 : https://stackoverflow.com/questions/34357439/ssl-options-for-twisted-agents

감사합니다!

답변

4

나는 지난 며칠 동안이 작업을 수행하려고 노력해 왔습니다. 인증서 확인을 우회하는 데 모든 노력을 기울 였기 때문에 쉽게 키 쌍을 만들 수 있었고 즐거운 방식으로 진행할 수있었습니다. 나는 "제대로"그 일을하는 복잡한 방법이있을거야하지만 내 의견의 노력이 가치가 없을 것

from twisted.internet import _sslverify 
_sslverify.platformTrust = lambda : None 

: 나는이 문제를 monkeypatches treq 문제 보드에 this comment을 발견했다. 나는 platformTrust()을 덮어 쓰지 않을 패치를 만들었고 그것을 병합하려고 노력할 것이지만 나는 숨을 참지 않을 것이다. 신뢰의 뿌리, SSL 및 인증서와 관련된 버그 의견의 일부에서 나는 병합 될 것이라고 생각하지 않습니다. 희망이 비록 도움이됩니다.

+0

안녕하세요! 답변 해주셔서 감사합니다! 나는 그 주석을 가로 질러 왔지만 그것은 나를 돕지 않았다. 나는 twisted.web.client import Agent'에서 요청한 에이전트를 사용하고 있습니다. 나는 코드를 추측하고 있는데,'_sslverify.platformTrust = lambda : None'는 특별히 platformTrust를 덮어 쓰지 않습니다. 아시다시피 요원에게 적용 가능합니까? 에이전트가 사용되는 경우 변경해야하는 다른 사항이 있습니까? – mayk93

+0

그것은 나를 위해 일했고 나는 맞춤 에이전트도 사용했다. –

+0

이것은 거의 하루 종일 나를 암시하고있다. Python/Twisted가 프로덕션/dev 시나리오에서 인증서 유효성 검사를 처리하는 방법을 믿을 수 없습니다. 파이썬 커뮤니티에서 실제 인증서를 사용하거나 자신의 CA를 사용하여 컴퓨터를 오염 시키거나 SSL/TLS를 테스트하지 않는 것입니다. – jmc