Исключение для SslStream.AuthenticateAsClient (сообщение было плохо отформатировано)
У меня странная проблема. Я пытаюсь подключиться к серверу Apple через TCP / SSL. Я использую сертификат клиента, предоставленный Apple, для push-уведомлений. Я установил сертификат на своем сервере (Win2k3) как в папке «Локальные доверенные корневые сертификаты», так и в папке «Личные личные сертификаты».
Теперь у меня есть библиотека классов, которая работает с этим соединением, когда я вызываю эту библиотеку классов из консольного приложения, запущенного с сервера, она работает абсолютно нормально, но когда я вызываю эту библиотеку классов со страницы asp.net или веб-службы asmx, я получаю следующее исключение.
Сбой вызова SSPI, см. Внутреннее исключение. Полученное сообщение было неожиданным или плохо отформатированным.
Это мой код:
X509Certificate cert = new X509Certificate(certificateLocation, certificatePassword);
X509CertificateCollection certCollection = new X509CertificateCollection(new X509Certificate[1] { cert });
// OPEN the new SSL Stream
SslStream ssl = new SslStream(client.GetStream(), false, new RemoteCertificateValidationCallback(ValidateServerCertificate), null);
ssl.AuthenticateAsClient(ipAddress, certCollection, SslProtocols.Default, false);
ssl.AuthenticateAsClient
это где ошибка генерируется.
Это сводит меня с ума. Если консольное приложение может нормально подключаться, должна быть некоторая проблема с безопасностью сетевого уровня asp.net, которая не проходит аутентификацию ... не уверен, возможно, нужно добавить что-то или какую-то политику безопасности в web.config. Также хочу отметить, что на локальной машине для разработки я могу нормально подключаться как к консоли, так и к веб-сайту.
У кого-нибудь есть идеи?