2013-07-26 2 views
1

Мне нужна ваша помощь еще раз.C#, Metro, Stream Socket, SSL Untrusted Host, Squid

Я не могу получить, как успешно установить соединение StreamSocket от приложения Metro к ненадежный корневой сертификат хост.
Я подключение, как это:

await socket.ConnectAsync(new HostName("_UNTRUSTED_HOST_IP_ADDRESS_"), "_SSL_PORT_", SocketProtectionLevel.Ssl); 

И он терпит неудачу :(

Я не могу установить простую связь HTTP из-за ограничение пребывания

Некоторые говорят, что мне нужно. сделать прокси-сервер, который будет перенаправлять запросы SSL на этот ненадежный хост, и который будет отмечать это соединение как доверенным.
Но как это сделать? Я не получил его сейчас :(
Я использую Squid на моем CentOS веб-сервер, и сделал это squid.conf:

acl TrustedHosts url_regex _UNTRUSTED_HOST_IP_ADDRESS_ 
sslproxy_cert_error allow TrustedHosts 
sslproxy_cert_error deny all 

мне нужно StreamSocket, потому что я должен читать и писать из гнезда, чтобы сделать некоторые ценные действия.

Если кто-то может помочь мне с этим ...

ответ

3

Я сделал это путем изменения контроля за StreamSocket таким образом:

_streamSocket.Control.IgnorableServerCertificateErrors.Add(ChainValidationResult.Untrusted); 
_streamSocket.Control.IgnorableServerCertificateErrors.Add(ChainValidationResult.InvalidName); 

ChainValidationResult содержит несколько вариантов, выбрать один лучше всего подходит для вас ,