Program Tip

RestSharp-SSL 오류 무시

programtip 2020. 12. 12. 12:18
반응형

RestSharp-SSL 오류 무시


RestSharp가 SSL 인증서의 오류를 무시하도록 할 수있는 이유가 있습니까? 테스트 클라이언트가 있고 연결하는 서비스에 아직 유효한 인증서가 없습니다.

지금 요청하면 오류가 발생합니다.

The underlying connection was closed: Could not establish trust 
relationship for the SSL/TLS secure channel.

미리 감사드립니다

/남자 이름

최신 정보:

나는 결국 다음을 사용했습니다.

ServicePointManager.ServerCertificateValidationCallback +=
            (sender, certificate, chain, sslPolicyErrors) => true;

John이 제안한대로 :

ServicePointManager.ServerCertificateValidationCallback +=
        (sender, certificate, chain, sslPolicyErrors) => true;

SSL 검사를 우회 할 수 있습니다.

개체 수준에서 :

//bypass ssl validation check by using RestClient object.
var restClient = new RestClient(baseUrl);
restClient.RemoteCertificateValidationCallback = (sender, certificate, chain, sslPolicyErrors) => true;

또는

애플리케이션 수준에서 :

//bypass ssl validation check globally for whole application.
ServicePointManager.ServerCertificateValidationCallback += (sender, certificate, chain, sslPolicyErrors) => true;

코드를 수정하는 것보다 더 나은 솔루션이 있습니다. 이상적으로는 프로덕션에서 보게 될 조건을 시뮬레이션하는 솔루션을 원하고 코드를 수정해도 그렇게되지 않으며 배포하기 전에 코드를 제거하는 것을 잊으면 위험 할 수 있습니다.

일종의 자체 서명 인증서가 필요합니다. IIS Express를 사용하는 경우 이미 이러한 항목 중 하나가있을 것이므로 찾아야합니다. 아직 가지고 있지 않다면 Firefox 또는 원하는 브라우저를 열고 웹 사이트로 이동하십시오. URL 표시 줄에서 인증서 정보를 볼 수 있어야하며 브라우저에 따라 인증서를 내보낼 수 있어야합니다.

그런 다음 MMC.exe를 열고 인증서 스냅인을 추가합니다. 인증서 파일을 신뢰할 수있는 루트 인증 기관 저장소로 가져 오기만하면됩니다.

이제 컴퓨터 전체가 자체적으로 생성 한 인증서를 암시 적으로 신뢰하므로이를 특별히 처리하기 위해 코드를 추가 할 필요가 없습니다. 프로덕션으로 이동할 때 적절한 유효한 인증서가 설치되어 있으면 계속 작동합니다.

참고 URL : https://stackoverflow.com/questions/10397736/restsharp-ignore-ssl-errors

반응형